Roles , permission sets , and model sets are used together to manage what users can do and what they can see . The Rolespage in the Userssection of the Adminpanel lets you view, configure, and assign roles, permission sets, and model sets.
You can search for specific roles, permission sets, and model sets by entering a search term into the search box in the upper right and pressing Enter.
Definitions
- A roledefines the privileges that a user or group will have for a specific set of models in Looker. You create a role by combining one permission set with one model set.
- A permission set defines what a user or group can do. You select a combination of permissions that you want to assign to a user or group. It must be used as part of a role to have any effect.
- A model set defines what data and LookML fields a user or group can see. You select a combination of LookML models to which a user or group should have access. It must be used as part of a role to have any effect.
Managing roles
A role is a combination of one permission set and one model set. It's a common convention to name roles after types of people or groups of people in your organization — administrator, Looker developer, Finance team — although you can certainly follow your own naming conventions.
A user can have more than one role in Looker. This can be useful when you have users who play multiple roles in your company or when you want to create complex systems of access to your models.
Creating, editing, and deleting roles
To create a role, follow these steps:
- Click the New Rolebutton at the top of the Rolespage.
-
Looker displays the New Rolepage, where you can configure the following settings:
-
Once you've configured the role as intended, click the New Rolebutton at the bottom of the page.
After a role has been created, you can edit it by clicking the Editbutton to the right of the role on the Rolespage. Clicking Edittakes you to the Edit Rolepage for that role, where you can edit the name, the permission set, the model set, and the groups or users who are assigned to the role.
To delete a role, click the Deletebutton to the right of the role on the Rolespage.
Default roles
For new instances, Looker creates the following default roles, each of which includes a default permission set of the same name:
- Admin
- Admin via IAM
- Developer
- Gemini
- Support Advanced Editor
- Support Basic Editor
- Customer Engineer Advanced Editor
- User
- Viewer
The default roles in the following sections have conditions for use.
Admin via IAM
The Admin via IAM role is available only in Looker (Google Cloud core) , and it can be managed only through the Google Cloud console. For more information, see the Authentication and authorization with OAuth and IAM and Admin Looker role versus the Admin via IAM Looker role documentation.
The Admin via IAMrole uses the Adminpermission set.
Gemini
The Geminirole cannot be renamed or deleted and contains only the gemini_in_looker
permission in its permission set. By default, this role's permission set applies to all models on the Looker instance. To restrict users to accessing Gemini in Looker features with specific models, remove those users from the Geminirole and create a new role that applies the gemini_in_looker
permission on selected models. Make sure to remove those users from the Gemini Default Users
group.
The gemini_in_looker
permission that is available in this role enables users to perform the following tasks in the Looker instance with Gemini assistance:
- Write LookML
— when they also have a Looker role that contains the
develop
permission for at least one model in a LookML project. - Create custom Looker visualizations
— when they also have a Looker role that contains the
can_override_vis_config
permission. - Query Looker Explore data with Conversational Analytics
, even if the user hasn't been assigned
explore
permissions, when they also have a Looker role that contains theaccess_data
permission on the model that they are querying.
For more information about Gemini in Looker features, see the Gemini in Looker overview .
Support Advanced Editor and Support Basic Editor
These roles won't appear on a Looker (original) instance if a Looker admin has disabled the Tiered Support Access Labs feature. These roles won't appear on a Looker (Google Cloud core) instance if the instance uses private connections (private services access or Private Service Connect) networking or hybrid connections networking .
The Support Advanced Editorand Support Basic Editorroles cannot be edited, deleted, or assigned to users other than support access users .
Permission sets
A permission set defines what a user or group can do. Admins can use Looker's default permission sets or create original permission sets , keeping in mind permission dependencies .
All the available permissions, and their types, are discussed in more detail in the permissions list .
Default permission sets
For new installations, Looker includes several default permission sets that you can start with:
You'll see these permission sets appear as options when you create a new role. If you select one of these permission sets, Looker will display the list of permissions that it includes.
The Admin permission set cannot be edited or deleted, and it cannot be assigned to a role. It is assigned only to the Admin role, which also cannot be edited or deleted. The only way to grant the Admin permission set to a user or group is to add the Admin role to that user or group.
Creating permission sets
To create a permission set, click the New Permission Setbutton at the top of the Rolespage. Looker will display a page where you can enter a name for the permission set and select the permissions that it should include. Once you've configured the set as needed, click the New Permission Setbutton at the bottom of the page.
After a permission set has been created, you can edit or delete it by clicking the Editor Deletebuttons to the right of the permission set on the Rolespage.
Permissions and dependencies
Some permissions depend on others to work properly. For example, it makes sense that someone who wants to develop in LookML must first be able to see LookML.
When you create a permission set, you'll see the available permissions in an indented list. If a privilege is indented under another (parent) privilege, you must select the parent privilege first. The permission list may look like this:
☑️ access_data ☑️ see_lookml_dashboards ☑️ see_looks ☑️ see_user_dashboards
In this example, Looker uses indentation to indicate the following:
- The
access_data
privilege can be selected at any time. - The
see_lookml_dashboards
andsee_looks
privileges require theaccess_data
privilege to be selected first. - The
see_user_dashboards
privilege depends on thesee_looks
privilege, which in turn depends onaccess_data
privilege.
You cannot select a child privilege without first selecting its parent.
Permissions and Looker licenses
Looker licenses classify users into three types:
- Developer (Admin)
- Standard (Creator)
- Viewer
The permissions granted to a user determine how that user is classified under the Looker license:
-
A user is classified as a Developer (Admin) user if they have the Admin default role , or at least one of the following permissions:
-
A user is classified as a Standard (Creator) user if they have none of the Developer (Admin) permissions but do have at least one of the following permissions:
-
A user is classified as a Viewer if they have the
access_data
permission, but none of the Developer (Admin) permissions and none of the Standard (Creator) permissions.
Permissions list
Permissions can be classified as one of three types:
- Model Specific:This type of permission is applied only to the model sets that are part of the same role. This permission is applied to individual models or model sets, rather than across the entire Looker instance.
- Connection Specific:This type of permission is applied at the connection level. A user with this type of permission will see content on pages in the Adminpanel that uses a connection associated with a model to which they have data access, even if that connection is used with another model to which they do not have data access.
- Instance Wide:This type of permission applies to the Looker instance as a whole and has three types:
- NN = No content access, No menu access: These permissions allow users to perform certain functions across the entire Looker instance, but do not allow users to access content based on models not included in their role's model set.
- CN = Content access, No menu access: These permissions allow users to access content and query information across the entire Looker instance — even for content and queries based on models not included in their role's model set.
- CM = Content access, Menu access: These permissions may expose parts of the Admin menu to non-admin users and allow users to see information about content and queries based on models not included in their role's model set.
The following list describes all the permissions that are available in Looker, in the order in which they appear on the New Permission Setpage in the Adminsection:
access_data
see_lookml_dashboards
access_data
Users can see the LookML Dashboards
folder, which includes all LookML dashboards. Users must have explore
permission for any relevant models to explore those dashboards. Users who also have the develop
permission can create LookML dashboards
see_looks
access_data
explore
permission for any relevant models to explore those Looks. Users will also need the View
content access level to see Looks in folders.see_user_dashboards
see_looks
explore
permission for any relevant models to explore those dashboards. Users also need View
content access to see dashboards in folders. Users who also have both the save_dashboards
permission and the Manage Access, Edit
content access to a folder can create user-defined dashboards
in that folder.explore
see_looks
see_lookml_dashboards
or see_user_dashboards
has been granted).Looker Studio users with this permission can create a data source in Looker Studio based on a Looker Explore. They can also view and edit that data source's configuration in Looker Studio.create_custom_fields
explore
explore
permission can only view custom fields.can_create_forecast
explore
can_override_vis_config
explore
save_content
see_looks
save_dashboards
save_content
save_looks
save_content
create_public_looks
save_looks
download_with_limit
see_looks
This permission applies to Looks and dashboards in Looker and to reports in Looker Studio that use the Looker connector.
Users can download data but must specify a row limit of 5,000 or fewer to avoid memory problems from large downloads.
Looker Studio Pro users with this permission can download Looker Studio reports that use the Looker connector.
download_without_limit
see_looks
This permission applies to Looks and dashboards in Looker and to reports in Looker Studio that use the Looker connector.
The same as download_with_limit
, but does not require the user to specify a row limit. Downloading all results for some types of queries may require substantial memory, potentially causing performance issues or even crashing the Looker instance.
schedule_look_emails
see_looks
create_alerts
permissions can send email alert
notifications.Looker admins can control the email domains that Looker users and embed users can send email deliveries to with the Email domain allowlist
on the Settingspage of the Adminpanel.Looker Studio Pro users with this permission can schedule deliveries of Looker Studio reports that use the Looker connector.schedule_external_look_emails
schedule_look_emails
create_alerts
permissions can send email alert
notifications.Users can email content deliveries or alert notifications to email addresses with any domain, regardless of whether the Email domain allowlist
on the Settingspage of the Adminpanel contains any email domains.see_looks
This permission applies to dashboards in Looker and to charts in Looker Studio that use the Looker connector.
From the dashboard tile, users can create
, duplicate, and delete
their own alerts; and can see and duplicate alerts that are marked Public
by other users. The user must be signed in to Slack to see dashboard tile alerts that send Slack notifications. Users can view, edit, disable, and enable alerts that they own on the Manage Alerts
user page
. Users must have the schedule_look_emails
or the schedule_external_look_emails
permission to send email alert notifications.
Looker Studio Pro users with this permission can create, duplicate, and delete alerts on Looker Studio reports that use the Looker connector.
see_looks
Users can view and follow alerts. View the alerts that they have followed or for which they are listed as a recipient from the Manage Alerts user page .
send_to_s3
see_looks
send_to_sftp
see_looks
send_outgoing_webhook
see_looks
see_looks
see_sql
see_looks
see_lookml
see_looks
develop
permission. NOTE
: This permission interacts with model sets in a potentially unexpected way. If you assign the see_lookml
permission to a user, and you've allowed that user to see any
model that is a part of a project, they will be able to see the LookML for all
models in that project. However, they will still not be able to query
models that you have not allowed.develop
see_looks
deploy
permission.This permission is required to see the Get support
option in the Help
menu, and to see metadata in the Looker IDE
. Users also need this permission to access the Rebuild Derived Tables & Run
option in the Explore gear menu. This is not model-specific, so if a user has this permission in one model, they will have access to Rebuild Derived Tables & Run
in all models. NOTE
: This permission interacts with model sets in a potentially unexpected way. If you assign the develop
permission to a user, and you've allowed that user to see any
model that is a part of a project, they will be able to develop the LookML for all
models in that project. However, they will still not be able to query
models that you have not allowed.deploy
develop
support_access_toggle
develop
manage_project_models
develop
manage_project_models
permission, the role will grant access to all models that share a project with any of the models in the role's model sets.use_global_connections
manage_project_models
manage_project_connections_restricted
develop
- All settings in the General settings section
- All settings in the SSH Server section
- All settings in the Time Zone section
- The Additional JDBC Parameters, SSL, Verify SSL, and Use TNSsettings in the Additional Settings section
manage_project_connections_restricted
permission to a user, the user will be able to see, edit, and create project-scoped connections for any projects included in the model set.manage_project_connections
manage_project_connections_restricted
manage_project_connections_restricted
permission to a user, the user will be able to see, edit, and create project-scoped connections for any projects included in the model set.develop
see_ci
use_sql_runner
see_lookml
download_with_limit
or download_without_limit
permissions.clear_cache_refresh
access_data
clear_cache_refresh
permission is automatically added to any pre-existing permission sets
that contain any of the following permissions: see_user_dashboards
, see_lookml_dashboards
, or explore
. The clear_cache_refresh
permission is not automatically applied to any embedded roles
.Looker Studio users with this permission can refresh Looker data on Looker Studio reports that use the Looker connector.see_drill_overlay
access_data
manage_spaces
manage_homepage
manage_models
manage_models
permission to a user, the user will be able to access all models in all projects in the instance.create_prefetches
login_special_email
embed_browse_spaces
Enables the content browser for signed embeds
. If you are using signed embeds, you should grant this permission to users who have the save_content
permission.
embed_save_shared_space
save_content
permission to save content to the organization's Shared
folder, if there is one. Users who have the save_content
permission but not the embed_save_shared_space
permission will only have the option to save content to their personal embed folder
.manage_embed_settings
manage_modelsets_restricted
manage_modelsets_restricted
permission. A user can only add models contained in model sets for which the user also has the manage_modelsets_restricted
permission. NOTE
: This permission interacts with model sets in a potentially unexpected way. If you assign the manage_modelsets_restricted
permission to a user, and you've allowed that user to access any
model that is a part of a project, they will be able to assign all
models in that project to model sets that they have access to.manage_schedules
manage_themes
manage_privatelabel
see_alerts
see_queries
see_users
sudo
see_users
sudo
permission does not allow a non-admin to sudo as an admin, but a non-admin could potentially escalate their privileges by using sudo
, so exercise caution.
manage_groups
see_users
manage_roles
manage_groups
manage_user_attributes
see_users
see_schedules
Users can see the Schedules ( Schedules ) and Schedule History ( Schedule History ) pages from the Admin panel in Looker. This privilege does not give a user the ability to reassign, edit, or delete other users' schedules on the Schedules and Schedule History pages.
see_pdts
see_datagroups
update_datagroups
see_datagroups
see_datagroups
permission, users who have the update_datagroups
permission can see datagroups that are defined in projects that use a model for which they have data access
.This permission is applied to individual models or model sets, rather than across the entire Looker instance or to connections.see_system_activity
see_admin
- Support Access
- Labs
- Legacy Features
- Export
- Content Access
- Actions (if the page displays only the enabled or disabled states of actions)
mobile_app_access
mobile_app_access
permission can be added to a new or existing permission set, and it is part of all of Looker's default permission sets
.gemini_in_looker
develop
permission for at least one model in a LookML project.Users can create custom Looker visualizations using Gemini assistance
when they also have a Looker role that contains the can_override_vis_config
permission.Users can use Conversational Analytics
with Looker Explore data, even if they don't have a role that contains explore
permissions, when they also have Looker role that contains the access_data
permissions on the model that they are querying.Things to know about permission sets
The following permissions interact with model sets in a potentially unexpected way:
-
develop
;see_lookml
— In Looker's IDE, a single project can contain multiple model files. If you assign thedevelop
orsee_lookml
permissions to a user, and you've allowed that user to see any model that is a part of a project, they will be able to develop or see the LookML for all models in that project. However, they will still not be able to query models that you have not allowed. -
manage_models
— If you assign themanage_models
permission to a user, the user will be able to access all models in all projects in the instance. -
manage_modelsets_restricted
— If you assign themanage_modelsets_restricted
permission to a user, they can assign any model in a project to which they have access. -
manage_project_connections
— If you assign themanage_project_connections_restricted
ormanage_project_connections
permissions to a user, the user will be able to see, edit, and create project-scoped connections for any projects that are included in the model set.
Model sets
A model set defines what data and LookML fields a user or group can see. Each set is a list of LookML models to which a user or group should have access. You can think of a model set as performing two functions:
- A model set controls which models in your LookML the permissions apply to (if those permissions are model specific).
- A model set limits what data and LookML fields a user can see, because each model is connected to a specific database connection and contains certain LookML fields.
Creating a model set
To create a model set:
-
Click the New Model Setbutton at the top of the Rolespage.
-
Looker displays the New Model Setpage. Enter a name for the new model set.
-
Select the model or models that should be included in the new model set.
-
Click the New Model Setbutton at the bottom of the page. The new model set will appear in the Model Setssection of the Rolespage.
Models that are included in pending projects appear in the Modelslist on the New Model Set and Edit Model Set pages.
Deleting or renaming a model will not change any model sets that include that model. When a model is removed or renamed , we recommend that Looker admins also remove that model's name from any associated model sets, using the Edit Model Setpage. Removing a deleted model's name from a model set prevents a new model with the same name from unintentionally being included in that model set.
To learn more about models, see the Model parameters documentation page.
Creating multiple models and model sets
The following example illustrates how you can use multiple model sets to limit access to data. Consider a scenario where you have two teams, Marketing and Support. In this example, these two teams should not have access to the entire model, so you would create a separate model for each team. To separate their data access, you would perform the following steps:
- Copy the model into two new models.
- In the first of the new models, include only the views, fields, and Explores that the Marketing team should have access to.
- Create a model set for the Marketing team that includes only this new model.
- Create a new role for the Marketing team that includes this new model set and the appropriate permissions for the Marketing team.
- Assign this new role to the Marketing team group.
- Repeat steps 2 through 5 to configure the second model for the Support team.
Editing a model set
After a model set has been created, perform the following steps to edit it:
-
On the Rolespage, click the Editbutton to the right of the model set you want to edit.
-
Looker displays the Edit Model Setpage. If desired, enter a new name for the model set in the Namefield.
-
Add or remove any models from the model set in the Modelssection.
-
Click the Update Model Setbutton at the bottom of the page.
Models that are included in pending projects appear in the Modelslist on the New Model Set and Edit Model Set pages.
Deleting or renaming a model will not change any model sets that include that model. When a model is removed or renamed , we recommend that Looker admins also remove that model's name from any associated model sets, using the Edit Model Setpage. Removing a deleted model's name from a model set prevents a new model with the same name from unintentionally being included in that model set.
Deleting a model set
To delete a model set, on the Rolespage, click Deleteto the right of the model set that you want to delete.