Understanding roles

A role contains a set of permissions that allows you to perform specific actions on Google Cloud resources. To make permissions available to a member, grant it at least one role.

This page describes the IAM roles that you can grant to identities to access Google Cloud resources.

Prerequisite for this guide

Role types

There are three types of roles in IAM:

  • Basic roles, which include the Owner, Editor, and Viewer roles that existed prior to the introduction of IAM.
  • Predefined roles, which provide granular access for a specific service and are managed by Google Cloud.
  • Custom roles, which provide granular access according to a user-specified list of permissions.

To determine if one or more permissions are included in a basic, predefined, or custom role, you can use one of the following methods:

The sections below describe each role type and provide examples of how to use them.

Basic roles

There are several basic roles that existed prior to the introduction of IAM: Owner, Editor, and Viewer. These roles are concentric; that is, the Owner role includes the permissions in the Editor role, and the Editor role includes the permissions in the Viewer role. They were originally known as "primitive roles."

The following table summarizes the permissions that the basic roles include across all Google Cloud services:

Basic role definitions

Name Title Permissions
roles/viewer Viewer Permissions for read-only actions that do not affect state, such as viewing (but not modifying) existing resources or data.
roles/editor Editor All viewer permissions, plus permissions for actions that modify state, such as changing existing resources.
Note: While the roles/editor role contains permissions to create and delete resources for most Google Cloud services, some services do not include these permissions. See the section above for more information on how to check if a role has the permissions that you need.
roles/owner Owner All editor permissions and permissions for the following actions:
  • Manage roles and permissions for a project and all resources within the project.
  • Set up billing for a project.
Note:
  • Granting the owner role at a resource level, such as a Pub/Sub topic, doesn't grant the owner role on the parent project.
  • Granting the owner role at the organization level doesn't allow you to update the organization's metadata. However, it allows you to modify projects and other resources under that organization.

You can apply basic roles at the project or service resource levels by using the Cloud Console, the API, and the gcloud tool. See Granting, changing, and revoking access for instructions.

Invitation flow

You cannot grant the owner role to a member for a project using the Identity and Access Management API or the gcloud command-line tool. You can only add owners to a project using the Cloud Console. An invitation will be sent to the member via email and the member must accept the invitation to be made an owner of the project.

Note that invitation emails aren't sent in the following cases:

  • When you're granting a role other than the owner.
  • When an organization member adds another member of their organization as an owner of a project within that organization.

To see how to grant roles using the Cloud Console, see Granting, changing, and revoking access.

Predefined roles

In addition to the basic roles, IAM provides additional predefined roles that give granular access to specific Google Cloud resources and prevent unwanted access to other resources.

The following table lists these roles, their description, and the lowest-level resource type where the roles can be set. A particular role can be granted to this resource type, or in most cases any type above it in the Google Cloud hierarchy. You can grant multiple roles to the same user. For example, the same user can have Network Admin and Log Viewer roles on a project and also have a Publisher role for a Pub/Sub topic within that project. For a list of the permissions contained in a role, see Getting the role metadata.

Access Approval roles

Role Title Description Permissions Lowest resource
roles/accessapproval.approver Access Approval Approver Beta Ability to view or act on access approval requests and view configuration
  • accessapproval.requests.*
  • accessapproval.settings.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/accessapproval.configEditor Access Approval Config Editor Beta Ability update the Access Approval configuration
  • accessapproval.settings.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/accessapproval.viewer Access Approval Viewer Beta Ability to view access approval requests and configuration
  • accessapproval.requests.get
  • accessapproval.requests.list
  • accessapproval.settings.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Access Context Manager roles

Role Title Description Permissions Lowest resource
roles/accesscontextmanager.policyAdmin Access Context Manager Admin Full access to policies, access levels, and access zones
  • accesscontextmanager.*
  • resourcemanager.organizations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/accesscontextmanager.policyEditor Access Context Manager Editor Edit access to policies. Create, edit, and change access levels and access zones.
  • accesscontextmanager.accessLevels.*
  • accesscontextmanager.accessPolicies.create
  • accesscontextmanager.accessPolicies.delete
  • accesscontextmanager.accessPolicies.get
  • accesscontextmanager.accessPolicies.getIamPolicy
  • accesscontextmanager.accessPolicies.list
  • accesscontextmanager.accessPolicies.update
  • accesscontextmanager.accessZones.*
  • accesscontextmanager.policies.create
  • accesscontextmanager.policies.delete
  • accesscontextmanager.policies.get
  • accesscontextmanager.policies.getIamPolicy
  • accesscontextmanager.policies.list
  • accesscontextmanager.policies.update
  • accesscontextmanager.servicePerimeters.*
  • resourcemanager.organizations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/accesscontextmanager.policyReader Access Context Manager Reader Read access to policies, access levels, and access zones.
  • accesscontextmanager.accessLevels.get
  • accesscontextmanager.accessLevels.list
  • accesscontextmanager.accessPolicies.get
  • accesscontextmanager.accessPolicies.getIamPolicy
  • accesscontextmanager.accessPolicies.list
  • accesscontextmanager.accessZones.get
  • accesscontextmanager.accessZones.list
  • accesscontextmanager.policies.get
  • accesscontextmanager.policies.getIamPolicy
  • accesscontextmanager.policies.list
  • accesscontextmanager.servicePerimeters.get
  • accesscontextmanager.servicePerimeters.list
  • resourcemanager.organizations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/accesscontextmanager.vpcScTroubleshooterViewer VPC Service Controls Troubleshooter Viewer
  • accesscontextmanager.accessLevels.get
  • accesscontextmanager.accessLevels.list
  • accesscontextmanager.policies.get
  • accesscontextmanager.policies.getIamPolicy
  • accesscontextmanager.policies.list
  • accesscontextmanager.servicePerimeters.get
  • accesscontextmanager.servicePerimeters.list
  • logging.exclusions.get
  • logging.exclusions.list
  • logging.logEntries.list
  • logging.logMetrics.get
  • logging.logMetrics.list
  • logging.logServiceIndexes.*
  • logging.logServices.*
  • logging.logs.list
  • logging.sinks.get
  • logging.sinks.list
  • logging.usage.*
  • resourcemanager.organizations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Actions roles

Role Title Description Permissions Lowest resource
roles/actions.Admin Actions Admin Access to edit and deploy an action
  • actions.*
  • firebase.projects.get
  • firebase.projects.update
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.services.use
roles/actions.Viewer Actions Viewer Access to view an action
  • actions.agent.get
  • actions.agentVersions.get
  • actions.agentVersions.list
  • firebase.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.services.use

Android Management roles

Role Title Description Permissions Lowest resource
roles/androidmanagement.user Android Management User Full access to manage devices.
  • androidmanagement.*
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

API Gateway roles

Role Title Description Permissions Lowest resource
roles/apigateway.admin ApiGateway Admin Beta Full access to ApiGateway and related resources.
  • apigateway.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/apigateway.viewer ApiGateway Viewer Beta Read-only access to ApiGateway and related resources.
  • apigateway.apiconfigs.get
  • apigateway.apiconfigs.getIamPolicy
  • apigateway.apiconfigs.list
  • apigateway.apis.get
  • apigateway.apis.getIamPolicy
  • apigateway.apis.list
  • apigateway.gateways.get
  • apigateway.gateways.getIamPolicy
  • apigateway.gateways.list
  • apigateway.locations.*
  • apigateway.operations.get
  • apigateway.operations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Apigee roles

Role Title Description Permissions Lowest resource
roles/apigee.admin Apigee Organization Admin Full access to all apigee resource features
  • apigee.*
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
roles/apigee.analyticsAgent Apigee Analytics Agent Curated set of permissions for Apigee Universal Data Collection Agent to manage analytics for an Apigee Organization
  • apigee.environments.getDataLocation
roles/apigee.analyticsEditor Apigee Analytics Editor Analytics editor for an Apigee Organization
  • apigee.datacollectors.*
  • apigee.datastores.*
  • apigee.environments.get
  • apigee.environments.getStats
  • apigee.exports.*
  • apigee.hostqueries.*
  • apigee.hoststats.*
  • apigee.organizations.get
  • apigee.organizations.list
  • apigee.queries.*
  • apigee.reports.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/apigee.analyticsViewer Apigee Analytics Viewer Analytics viewer for an Apigee Organization
  • apigee.datacollectors.get
  • apigee.datacollectors.list
  • apigee.datastores.get
  • apigee.datastores.list
  • apigee.environments.getStats
  • apigee.exports.get
  • apigee.exports.list
  • apigee.hostqueries.get
  • apigee.hostqueries.list
  • apigee.hoststats.*
  • apigee.organizations.get
  • apigee.organizations.list
  • apigee.queries.get
  • apigee.queries.list
  • apigee.reports.get
  • apigee.reports.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/apigee.apiCreator Apigee API Creator Creator of apigee resources
  • apigee.apiproductattributes.get
  • apigee.apiproductattributes.list
  • apigee.apiproducts.get
  • apigee.apiproducts.list
  • apigee.apps.*
  • apigee.envgroupattachments.get
  • apigee.envgroupattachments.list
  • apigee.envgroups.get
  • apigee.envgroups.list
  • apigee.environments.get
  • apigee.environments.getStats
  • apigee.environments.list
  • apigee.ingressconfigs.*
  • apigee.keyvaluemaps.*
  • apigee.organizations.get
  • apigee.organizations.list
  • apigee.proxies.*
  • apigee.proxyrevisions.delete
  • apigee.proxyrevisions.get
  • apigee.proxyrevisions.list
  • apigee.proxyrevisions.update
  • apigee.sharedflowrevisions.*
  • apigee.sharedflows.*
  • apigee.tracesessions.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/apigee.deployer Apigee Deployer Deployer of apigee resources
  • apigee.apiproductattributes.get
  • apigee.apiproductattributes.list
  • apigee.apiproducts.get
  • apigee.apiproducts.list
  • apigee.apps.*
  • apigee.datacollectors.get
  • apigee.datacollectors.list
  • apigee.deployments.*
  • apigee.envgroupattachments.get
  • apigee.envgroupattachments.list
  • apigee.envgroups.get
  • apigee.envgroups.list
  • apigee.environments.get
  • apigee.environments.getIamPolicy
  • apigee.environments.getStats
  • apigee.environments.list
  • apigee.environments.setIamPolicy
  • apigee.flowhooks.*
  • apigee.ingressconfigs.*
  • apigee.keystorealiases.*
  • apigee.keystores.*
  • apigee.keyvaluemaps.*
  • apigee.maskconfigs.*
  • apigee.organizations.get
  • apigee.organizations.list
  • apigee.proxies.get
  • apigee.proxies.list
  • apigee.proxyrevisions.deploy
  • apigee.proxyrevisions.get
  • apigee.proxyrevisions.list
  • apigee.proxyrevisions.undeploy
  • apigee.references.*
  • apigee.resourcefiles.*
  • apigee.sharedflowrevisions.*
  • apigee.sharedflows.*
  • apigee.targetservers.*
  • apigee.tracesessions.*
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
roles/apigee.developerAdmin Apigee Developer Admin Developer admin of apigee resources
  • apigee.apiproductattributes.get
  • apigee.apiproductattributes.list
  • apigee.apiproducts.get
  • apigee.apiproducts.list
  • apigee.appkeys.*
  • apigee.datacollectors.*
  • apigee.developerappattributes.*
  • apigee.developerapps.*
  • apigee.developerattributes.*
  • apigee.developers.*
  • apigee.environments.get
  • apigee.environments.getStats
  • apigee.hoststats.*
  • apigee.organizations.get
  • apigee.organizations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
roles/apigee.portalAdmin Apigee Portal Admin Portal admin for an Apigee Organization
roles/apigee.readOnlyAdmin Apigee Read-only Admin Viewer of all apigee resources
  • apigee.apiproductattributes.get
  • apigee.apiproductattributes.list
  • apigee.apiproducts.get
  • apigee.apiproducts.list
  • apigee.appkeys.get
  • apigee.apps.*
  • apigee.caches.list
  • apigee.canaryevaluations.get
  • apigee.datacollectors.get
  • apigee.datacollectors.list
  • apigee.datastores.get
  • apigee.datastores.list
  • apigee.deployments.get
  • apigee.deployments.list
  • apigee.developerappattributes.get
  • apigee.developerappattributes.list
  • apigee.developerapps.get
  • apigee.developerapps.list
  • apigee.developerattributes.get
  • apigee.developerattributes.list
  • apigee.developers.get
  • apigee.developers.list
  • apigee.envgroupattachments.get
  • apigee.envgroupattachments.list
  • apigee.envgroups.get
  • apigee.envgroups.list
  • apigee.environments.get
  • apigee.environments.getDataLocation
  • apigee.environments.getIamPolicy
  • apigee.environments.getStats
  • apigee.environments.list
  • apigee.exports.get
  • apigee.exports.list
  • apigee.flowhooks.getSharedFlow
  • apigee.flowhooks.list
  • apigee.hostqueries.get
  • apigee.hostqueries.list
  • apigee.hoststats.*
  • apigee.ingressconfigs.*
  • apigee.instanceattachments.get
  • apigee.instanceattachments.list
  • apigee.instances.get
  • apigee.instances.list
  • apigee.keystorealiases.get
  • apigee.keystorealiases.list
  • apigee.keystores.get
  • apigee.keystores.list
  • apigee.keyvaluemaps.list
  • apigee.maskconfigs.get
  • apigee.operations.*
  • apigee.organizations.get
  • apigee.organizations.list
  • apigee.proxies.get
  • apigee.proxies.list
  • apigee.proxyrevisions.get
  • apigee.proxyrevisions.list
  • apigee.queries.get
  • apigee.queries.list
  • apigee.references.get
  • apigee.references.list
  • apigee.reports.get
  • apigee.reports.list
  • apigee.resourcefiles.get
  • apigee.resourcefiles.list
  • apigee.sharedflowrevisions.get
  • apigee.sharedflowrevisions.list
  • apigee.sharedflows.get
  • apigee.sharedflows.list
  • apigee.targetservers.get
  • apigee.targetservers.list
  • apigee.tracesessions.get
  • apigee.tracesessions.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
roles/apigee.runtimeAgent Apigee Runtime Agent Curated set of permissions for a runtime agent to access Apigee Organization resources
  • apigee.canaryevaluations.*
  • apigee.ingressconfigs.*
  • apigee.instances.reportStatus
  • apigee.operations.*
roles/apigee.synchronizerManager Apigee Synchronizer Manager Curated set of permissions for a Synchronizer to manage environments in an Apigee Organization
  • apigee.environments.get
  • apigee.environments.manageRuntime
  • apigee.ingressconfigs.*
roles/apigeeconnect.Admin Apigee Connect Admin Admin of Apigee Connect
  • apigeeconnect.connections.*
roles/apigeeconnect.Agent Apigee Connect Agent Ability to set up Apigee Connect agent between external clusters and Google.
  • apigeeconnect.endpoints.*

App Engine roles

Role Title Description Permissions Lowest resource
roles/appengine.appAdmin App Engine Admin Read/Write/Modify access to all application configuration and settings.
  • appengine.applications.get
  • appengine.applications.update
  • appengine.instances.*
  • appengine.operations.*
  • appengine.runtimes.*
  • appengine.services.*
  • appengine.versions.create
  • appengine.versions.delete
  • appengine.versions.get
  • appengine.versions.list
  • appengine.versions.update
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/appengine.appCreator App Engine Creator Ability to create the App Engine resource for the project.
  • appengine.applications.create
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/appengine.appViewer App Engine Viewer Read-only access to all application configuration and settings.
  • appengine.applications.get
  • appengine.instances.get
  • appengine.instances.list
  • appengine.operations.*
  • appengine.services.get
  • appengine.services.list
  • appengine.versions.get
  • appengine.versions.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/appengine.codeViewer App Engine Code Viewer Read-only access to all application configuration, settings, and deployed source code.
  • appengine.applications.get
  • appengine.instances.get
  • appengine.instances.list
  • appengine.operations.*
  • appengine.services.get
  • appengine.services.list
  • appengine.versions.get
  • appengine.versions.getFileContents
  • appengine.versions.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/appengine.deployer App Engine Deployer

Read-only access to all application configuration and settings.

Write access only to create a new version; cannot modify existing versions other than deleting versions that are not receiving traffic.

  • appengine.applications.get
  • appengine.instances.get
  • appengine.instances.list
  • appengine.operations.*
  • appengine.services.get
  • appengine.services.list
  • appengine.versions.create
  • appengine.versions.delete
  • appengine.versions.get
  • appengine.versions.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/appengine.serviceAdmin App Engine Service Admin

Read-only access to all application configuration and settings.

Write access to module-level and version-level settings. Cannot deploy a new version.

  • appengine.applications.get
  • appengine.instances.*
  • appengine.operations.*
  • appengine.services.*
  • appengine.versions.delete
  • appengine.versions.get
  • appengine.versions.list
  • appengine.versions.update
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project

Artifact Registry roles

Role Title Description Permissions Lowest resource
roles/artifactregistry.admin Artifact Registry Administrator Beta Administrator access to create and manage repositories.
  • artifactregistry.*
roles/artifactregistry.reader Artifact Registry Reader Beta Access to read repository items.
  • artifactregistry.files.*
  • artifactregistry.packages.get
  • artifactregistry.packages.list
  • artifactregistry.repositories.downloadArtifacts
  • artifactregistry.repositories.get
  • artifactregistry.repositories.list
  • artifactregistry.tags.get
  • artifactregistry.tags.list
  • artifactregistry.versions.get
  • artifactregistry.versions.list
roles/artifactregistry.repoAdmin Artifact Registry Repository Administrator Beta Access to manage artifacts in repositories.
  • artifactregistry.files.*
  • artifactregistry.packages.*
  • artifactregistry.repositories.deleteArtifacts
  • artifactregistry.repositories.downloadArtifacts
  • artifactregistry.repositories.get
  • artifactregistry.repositories.list
  • artifactregistry.repositories.uploadArtifacts
  • artifactregistry.tags.*
  • artifactregistry.versions.*
roles/artifactregistry.writer Artifact Registry Writer Beta Access to read and write repository items.
  • artifactregistry.files.*
  • artifactregistry.packages.get
  • artifactregistry.packages.list
  • artifactregistry.repositories.downloadArtifacts
  • artifactregistry.repositories.get
  • artifactregistry.repositories.list
  • artifactregistry.repositories.uploadArtifacts
  • artifactregistry.tags.create
  • artifactregistry.tags.get
  • artifactregistry.tags.list
  • artifactregistry.tags.update
  • artifactregistry.versions.get
  • artifactregistry.versions.list

Assured Workloads roles

Role Title Description Permissions Lowest resource
roles/assuredworkloads.admin Assured Workloads Administrator Beta Grants full access to Assured Workloads resources, including IAM policy administration.
  • assuredworkloads.*
  • orgpolicy.*
  • resourcemanager.organizations.get
  • resourcemanager.projects.create
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/assuredworkloads.editor Assured Workloads Editor Beta Grants access to read and write to Assured Workloads resources.
  • assuredworkloads.*
  • orgpolicy.*
  • resourcemanager.organizations.get
  • resourcemanager.projects.create
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/assuredworkloads.reader Assured Workloads Reader Beta Grants read access to all Assured Workloads resources.
  • assuredworkloads.operations.*
  • assuredworkloads.workload.get
  • assuredworkloads.workload.list
  • resourcemanager.organizations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list

AutoML roles

Role Title Description Permissions Lowest resource
roles/automl.admin AutoML Admin Beta Full access to all AutoML resources
  • automl.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.services.list
Dataset/Model
roles/automl.editor AutoML Editor Beta Editor of all AutoML resources
  • automl.annotationSpecs.*
  • automl.annotations.*
  • automl.columnSpecs.*
  • automl.datasets.create
  • automl.datasets.delete
  • automl.datasets.export
  • automl.datasets.get
  • automl.datasets.import
  • automl.datasets.list
  • automl.datasets.update
  • automl.examples.*
  • automl.humanAnnotationTasks.*
  • automl.locations.get
  • automl.locations.list
  • automl.modelEvaluations.*
  • automl.models.create
  • automl.models.delete
  • automl.models.deploy
  • automl.models.export
  • automl.models.get
  • automl.models.list
  • automl.models.predict
  • automl.models.undeploy
  • automl.operations.*
  • automl.tableSpecs.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.services.list
Dataset/Model
roles/automl.predictor AutoML Predictor Beta Predict using models
  • automl.models.predict
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Model
roles/automl.viewer AutoML Viewer Beta Viewer of all AutoML resources
  • automl.annotationSpecs.get
  • automl.annotationSpecs.list
  • automl.annotations.list
  • automl.columnSpecs.get
  • automl.columnSpecs.list
  • automl.datasets.get
  • automl.datasets.list
  • automl.examples.get
  • automl.examples.list
  • automl.humanAnnotationTasks.get
  • automl.humanAnnotationTasks.list
  • automl.locations.get
  • automl.locations.list
  • automl.modelEvaluations.get
  • automl.modelEvaluations.list
  • automl.models.get
  • automl.models.list
  • automl.operations.get
  • automl.operations.list
  • automl.tableSpecs.get
  • automl.tableSpecs.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.services.list
Dataset/Model

BigQuery roles

Role Title Description Permissions Lowest resource
roles/bigquery.admin BigQuery Admin Provides permissions to manage all resources within the project. Can manage all data within the project, and can cancel jobs from other users running within the project.
  • bigquery.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/bigquery.connectionAdmin BigQuery Connection Admin Beta
  • bigquery.connections.*
roles/bigquery.connectionUser BigQuery Connection User Beta
  • bigquery.connections.get
  • bigquery.connections.getIamPolicy
  • bigquery.connections.list
  • bigquery.connections.use
roles/bigquery.dataEditor BigQuery Data Editor

When applied to a table or view, this role provides permissions to:

  • Read and update data and metadata for the table or view.
  • Delete the table or view.

This role cannot be applied to individual models or routines.

When applied to a dataset, this role provides permissions to:

  • Read the dataset's metadata and list tables in the dataset.
  • Create, update, get, and delete the dataset's tables.

When applied at the project or organization level, this role can also create new datasets.

  • bigquery.datasets.create
  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.datasets.updateTag
  • bigquery.models.*
  • bigquery.routines.*
  • bigquery.tables.create
  • bigquery.tables.delete
  • bigquery.tables.export
  • bigquery.tables.get
  • bigquery.tables.getData
  • bigquery.tables.getIamPolicy
  • bigquery.tables.list
  • bigquery.tables.update
  • bigquery.tables.updateData
  • bigquery.tables.updateTag
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Table or view
roles/bigquery.dataOwner BigQuery Data Owner

When applied to a table or view, this role provides permissions to:

  • Read and update data and metadata for the table or view.
  • Share the table or view.
  • Delete the table or view.

This role cannot be applied to individual models or routines.

When applied to a dataset, this role provides permissions to:

  • Read, update, and delete the dataset.
  • Create, update, get, and delete the dataset's tables.

When applied at the project or organization level, this role can also create new datasets.

  • bigquery.datasets.*
  • bigquery.models.*
  • bigquery.routines.*
  • bigquery.tables.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Table or view
roles/bigquery.dataViewer BigQuery Data Viewer

When applied to a table or view, this role provides permissions to:

  • Read data and metadata from the table or view.

This role cannot be applied to individual models or routines.

When applied to a dataset, this role provides permissions to:

  • Read the dataset's metadata and list tables in the dataset.
  • Read data and metadata from the dataset's tables.

When applied at the project or organization level, this role can also enumerate all datasets in the project. Additional roles, however, are necessary to allow the running of jobs.

  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.models.export
  • bigquery.models.getData
  • bigquery.models.getMetadata
  • bigquery.models.list
  • bigquery.routines.get
  • bigquery.routines.list
  • bigquery.tables.export
  • bigquery.tables.get
  • bigquery.tables.getData
  • bigquery.tables.getIamPolicy
  • bigquery.tables.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Table or view
roles/bigquery.jobUser BigQuery Job User Provides permissions to run jobs, including queries, within the project.
  • bigquery.jobs.create
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/bigquery.metadataViewer BigQuery Metadata Viewer

When applied to a table or view, this role provides permissions to:

  • Read metadata from the table or view.

This role cannot be applied to individual models or routines.

When applied to a dataset, this role provides permissions to:

  • List tables and views in the dataset.
  • Read metadata from the dataset's tables and views.

When applied at the project or organization level, this role provides permissions to:

  • List all datasets and read metadata for all datasets in the project.
  • List all tables and views and read metadata for all tables and views in the project.

Additional roles are necessary to allow the running of jobs.

  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.models.getMetadata
  • bigquery.models.list
  • bigquery.routines.get
  • bigquery.routines.list
  • bigquery.tables.get
  • bigquery.tables.getIamPolicy
  • bigquery.tables.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Table or view
roles/bigquery.readSessionUser BigQuery Read Session User Access to create and use read sessions
  • bigquery.readsessions.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/bigquery.resourceAdmin BigQuery Resource Admin Beta Administer all BigQuery resources.
  • bigquery.bireservations.*
  • bigquery.capacityCommitments.*
  • bigquery.jobs.get
  • bigquery.jobs.list
  • bigquery.jobs.listAll
  • bigquery.reservationAssignments.*
  • bigquery.reservations.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/bigquery.resourceEditor BigQuery Resource Editor Beta Manage all BigQuery resources, but cannot make purchasing decisions.
  • bigquery.bireservations.get
  • bigquery.capacityCommitments.get
  • bigquery.capacityCommitments.list
  • bigquery.jobs.get
  • bigquery.jobs.list
  • bigquery.jobs.listAll
  • bigquery.reservationAssignments.*
  • bigquery.reservations.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/bigquery.resourceViewer BigQuery Resource Viewer Beta View all BigQuery resources but cannot make changes or purchasing decisions.
  • bigquery.bireservations.get
  • bigquery.capacityCommitments.get
  • bigquery.capacityCommitments.list
  • bigquery.jobs.get
  • bigquery.jobs.list
  • bigquery.jobs.listAll
  • bigquery.reservationAssignments.list
  • bigquery.reservationAssignments.search
  • bigquery.reservations.get
  • bigquery.reservations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/bigquery.user BigQuery User

When applied to a dataset, this role provides the ability to read the dataset's metadata and list tables in the dataset.

When applied to a project, this role also provides the ability to run jobs, including queries, within the project. A member with this role can enumerate their own jobs, cancel their own jobs, and enumerate datasets within a project. Additionally, allows the creation of new datasets within the project; the creator is granted the BigQuery Data Owner role (roles/bigquery.dataOwner) on these new datasets.

  • bigquery.bireservations.get
  • bigquery.capacityCommitments.get
  • bigquery.capacityCommitments.list
  • bigquery.config.get
  • bigquery.datasets.create
  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.jobs.create
  • bigquery.jobs.list
  • bigquery.models.list
  • bigquery.readsessions.*
  • bigquery.reservationAssignments.list
  • bigquery.reservationAssignments.search
  • bigquery.reservations.get
  • bigquery.reservations.list
  • bigquery.routines.list
  • bigquery.savedqueries.get
  • bigquery.savedqueries.list
  • bigquery.tables.list
  • bigquery.transfers.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Dataset

Cloud Bigtable roles

Role Title Description Permissions Lowest resource
roles/bigtable.admin Bigtable Administrator Administers all instances within a project, including the data stored within tables. Can create new instances. Intended for project administrators.
  • bigtable.*
  • monitoring.metricDescriptors.get
  • monitoring.metricDescriptors.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
Instance
roles/bigtable.reader Bigtable Reader Provides read-only access to the data stored within tables. Intended for data scientists, dashboard generators, and other data-analysis scenarios.
  • bigtable.appProfiles.get
  • bigtable.appProfiles.list
  • bigtable.backups.get
  • bigtable.backups.list
  • bigtable.clusters.get
  • bigtable.clusters.list
  • bigtable.instances.get
  • bigtable.instances.list
  • bigtable.keyvisualizer.*
  • bigtable.locations.*
  • bigtable.tables.checkConsistency
  • bigtable.tables.generateConsistencyToken
  • bigtable.tables.get
  • bigtable.tables.list
  • bigtable.tables.readRows
  • bigtable.tables.sampleRowKeys
  • monitoring.metricDescriptors.get
  • monitoring.metricDescriptors.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
Instance
roles/bigtable.user Bigtable User Provides read-write access to the data stored within tables. Intended for application developers or service accounts.
  • bigtable.appProfiles.get
  • bigtable.appProfiles.list
  • bigtable.backups.get
  • bigtable.backups.list
  • bigtable.clusters.get
  • bigtable.clusters.list
  • bigtable.instances.get
  • bigtable.instances.list
  • bigtable.keyvisualizer.*
  • bigtable.locations.*
  • bigtable.tables.checkConsistency
  • bigtable.tables.generateConsistencyToken
  • bigtable.tables.get
  • bigtable.tables.list
  • bigtable.tables.mutateRows
  • bigtable.tables.readRows
  • bigtable.tables.sampleRowKeys
  • monitoring.metricDescriptors.get
  • monitoring.metricDescriptors.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
Instance
roles/bigtable.viewer Bigtable Viewer Provides no data access. Intended as a minimal set of permissions to access the Cloud Console for Bigtable.
  • bigtable.appProfiles.get
  • bigtable.appProfiles.list
  • bigtable.backups.get
  • bigtable.backups.list
  • bigtable.clusters.get
  • bigtable.clusters.list
  • bigtable.instances.get
  • bigtable.instances.list
  • bigtable.locations.*
  • bigtable.tables.checkConsistency
  • bigtable.tables.generateConsistencyToken
  • bigtable.tables.get
  • bigtable.tables.list
  • monitoring.metricDescriptors.get
  • monitoring.metricDescriptors.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
Instance

Billing roles

Role Title Description Permissions Lowest resource
roles/billing.admin Billing Account Administrator Provides access to see and manage all aspects of billing accounts.
  • billing.accounts.close
  • billing.accounts.get
  • billing.accounts.getIamPolicy
  • billing.accounts.getPaymentInfo
  • billing.accounts.getSpendingInformation
  • billing.accounts.getUsageExportSpec
  • billing.accounts.list
  • billing.accounts.move
  • billing.accounts.redeemPromotion
  • billing.accounts.removeFromOrganization
  • billing.accounts.reopen
  • billing.accounts.setIamPolicy
  • billing.accounts.update
  • billing.accounts.updatePaymentInfo
  • billing.accounts.updateUsageExportSpec
  • billing.budgets.*
  • billing.credits.*
  • billing.resourceAssociations.*
  • billing.subscriptions.*
  • cloudnotifications.*
  • consumerprocurement.accounts.*
  • consumerprocurement.orders.*
  • dataprocessing.groupcontrols.list
  • logging.logEntries.list
  • logging.logServiceIndexes.*
  • logging.logServices.*
  • logging.logs.list
  • logging.privateLogEntries.*
  • recommender.commitmentUtilizationInsights.*
  • recommender.usageCommitmentRecommendations.*
  • resourcemanager.projects.createBillingAssignment
  • resourcemanager.projects.deleteBillingAssignment
Billing Account
roles/billing.creator Billing Account Creator Provides access to create billing accounts.
  • billing.accounts.create
  • resourcemanager.organizations.get
Organization
roles/billing.projectManager Project Billing Manager Provides access to assign a project's billing account or disable its billing.
  • resourcemanager.projects.createBillingAssignment
  • resourcemanager.projects.deleteBillingAssignment
Project
roles/billing.user Billing Account User Provides access to associate projects with billing accounts.
  • billing.accounts.get
  • billing.accounts.getIamPolicy
  • billing.accounts.list
  • billing.accounts.redeemPromotion
  • billing.credits.*
  • billing.resourceAssociations.create
Billing Account
roles/billing.viewer Billing Account Viewer View billing account cost information and transactions.
  • billing.accounts.get
  • billing.accounts.getIamPolicy
  • billing.accounts.getPaymentInfo
  • billing.accounts.getSpendingInformation
  • billing.accounts.getUsageExportSpec
  • billing.accounts.list
  • billing.budgets.get
  • billing.budgets.list
  • billing.credits.*
  • billing.resourceAssociations.list
  • billing.subscriptions.get
  • billing.subscriptions.list
  • consumerprocurement.accounts.get
  • consumerprocurement.accounts.list
  • consumerprocurement.orders.get
  • consumerprocurement.orders.list
  • dataprocessing.groupcontrols.list
  • recommender.commitmentUtilizationInsights.get
  • recommender.commitmentUtilizationInsights.list
  • recommender.usageCommitmentRecommendations.get
  • recommender.usageCommitmentRecommendations.list
Billing Account

Binary Authorization roles

Role Title Description Permissions Lowest resource
roles/binaryauthorization.attestorsAdmin Binary Authorization Attestor Admin Beta Administrator of Binary Authorization Attestors
  • binaryauthorization.attestors.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/binaryauthorization.attestorsEditor Binary Authorization Attestor Editor Beta Editor of Binary Authorization Attestors
  • binaryauthorization.attestors.create
  • binaryauthorization.attestors.delete
  • binaryauthorization.attestors.get
  • binaryauthorization.attestors.list
  • binaryauthorization.attestors.update
  • binaryauthorization.attestors.verifyImageAttested
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/binaryauthorization.attestorsVerifier Binary Authorization Attestor Image Verifier Beta Caller of Binary Authorization Attestors VerifyImageAttested
  • binaryauthorization.attestors.get
  • binaryauthorization.attestors.list
  • binaryauthorization.attestors.verifyImageAttested
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/binaryauthorization.attestorsViewer Binary Authorization Attestor Viewer Beta Viewer of Binary Authorization Attestors
  • binaryauthorization.attestors.get
  • binaryauthorization.attestors.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/binaryauthorization.policyAdmin Binary Authorization Policy Administrator Beta Administrator of Binary Authorization Policy
  • binaryauthorization.policy.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/binaryauthorization.policyEditor Binary Authorization Policy Editor Beta Editor of Binary Authorization Policy
  • binaryauthorization.policy.get
  • binaryauthorization.policy.update
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/binaryauthorization.policyViewer Binary Authorization Policy Viewer Beta Viewer of Binary Authorization Policy
  • binaryauthorization.policy.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Hangouts Chat roles

Role Title Description Permissions Lowest resource
roles/chat.owner Chat Bots Owner Can view and modify bot configurations
  • chat.*
roles/chat.reader Chat Bots Viewer Can view bot configurations
  • chat.bots.get

Cloud Asset roles

Role Title Description Permissions Lowest resource
roles/cloudasset.owner Cloud Asset Owner Full access to cloud assets metadata
  • cloudasset.*
roles/cloudasset.viewer Cloud Asset Viewer Read only access to cloud assets metadata
  • cloudasset.assets.*

Cloud Build roles

Role Title Description Permissions Lowest resource
roles/cloudbuild.builds.builder Cloud Build Service Account Provides access to perform builds.
  • artifactregistry.files.*
  • artifactregistry.packages.get
  • artifactregistry.packages.list
  • artifactregistry.repositories.downloadArtifacts
  • artifactregistry.repositories.get
  • artifactregistry.repositories.list
  • artifactregistry.repositories.uploadArtifacts
  • artifactregistry.tags.create
  • artifactregistry.tags.get
  • artifactregistry.tags.list
  • artifactregistry.tags.update
  • artifactregistry.versions.get
  • artifactregistry.versions.list
  • cloudbuild.*
  • containeranalysis.occurrences.create
  • containeranalysis.occurrences.delete
  • containeranalysis.occurrences.get
  • containeranalysis.occurrences.list
  • containeranalysis.occurrences.update
  • logging.logEntries.create
  • pubsub.topics.create
  • pubsub.topics.publish
  • remotebuildexecution.blobs.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • source.repos.get
  • source.repos.list
  • storage.buckets.create
  • storage.buckets.get
  • storage.buckets.list
  • storage.objects.create
  • storage.objects.delete
  • storage.objects.get
  • storage.objects.list
  • storage.objects.update
roles/cloudbuild.builds.editor Cloud Build Editor Provides access to create and cancel builds.
  • cloudbuild.*
  • remotebuildexecution.blobs.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/cloudbuild.builds.viewer Cloud Build Viewer Provides access to view builds.
  • cloudbuild.builds.get
  • cloudbuild.builds.list
  • remotebuildexecution.blobs.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project

Cloud Data Fusion roles

Role Title Description Permissions Lowest resource
roles/datafusion.admin Cloud Data Fusion Admin Beta Full access to Cloud Data Fusion Instances and related resources.
  • datafusion.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/datafusion.runner Cloud Data Fusion Runner Beta Access to Cloud Data Fusion runtime resources.
  • datafusion.instances.runtime
roles/datafusion.viewer Cloud Data Fusion Viewer Beta Read-only access to Cloud Data Fusion Instances and related resources.
  • datafusion.instances.get
  • datafusion.instances.getIamPolicy
  • datafusion.instances.list
  • datafusion.instances.runtime
  • datafusion.locations.*
  • datafusion.operations.get
  • datafusion.operations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project

Cloud Debugger roles

Role Title Description Permissions Lowest resource
roles/clouddebugger.agent Cloud Debugger Agent Beta Provides permissions to register the debug target, read active breakpoints, and report breakpoint results.
  • clouddebugger.breakpoints.list
  • clouddebugger.breakpoints.listActive
  • clouddebugger.breakpoints.update
  • clouddebugger.debuggees.create
Service Account
roles/clouddebugger.user Cloud Debugger User Beta Provides permissions to create, view, list, and delete breakpoints (snapshots & logpoints) as well as list debug targets (debuggees).
  • clouddebugger.breakpoints.create
  • clouddebugger.breakpoints.delete
  • clouddebugger.breakpoints.get
  • clouddebugger.breakpoints.list
  • clouddebugger.debuggees.list
Project

Cloud Functions roles

Role Title Description Permissions Lowest resource
roles/cloudfunctions.admin Cloud Functions Admin Full access to functions, operations and locations.
  • cloudfunctions.*
  • resourcemanager.projects.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/cloudfunctions.developer Cloud Functions Developer Read and write access to all functions-related resources.
  • cloudfunctions.functions.call
  • cloudfunctions.functions.create
  • cloudfunctions.functions.delete
  • cloudfunctions.functions.get
  • cloudfunctions.functions.invoke
  • cloudfunctions.functions.list
  • cloudfunctions.functions.sourceCodeGet
  • cloudfunctions.functions.sourceCodeSet
  • cloudfunctions.functions.update
  • cloudfunctions.locations.*
  • cloudfunctions.operations.*
  • resourcemanager.projects.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/cloudfunctions.invoker Cloud Functions Invoker Ability to invoke HTTP functions with restricted access.
  • cloudfunctions.functions.invoke
roles/cloudfunctions.viewer Cloud Functions Viewer Read-only access to functions and locations.
  • cloudfunctions.functions.get
  • cloudfunctions.functions.list
  • cloudfunctions.locations.*
  • cloudfunctions.operations.*
  • resourcemanager.projects.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Cloud IAP roles

Role Title Description Permissions Lowest resource
roles/iap.admin IAP Policy Admin Provides full access to Identity-Aware Proxy resources.
  • iap.tunnel.*
  • iap.tunnelInstances.getIamPolicy
  • iap.tunnelInstances.setIamPolicy
  • iap.tunnelZones.*
  • iap.web.getIamPolicy
  • iap.web.setIamPolicy
  • iap.webServiceVersions.getIamPolicy
  • iap.webServiceVersions.setIamPolicy
  • iap.webServices.getIamPolicy
  • iap.webServices.setIamPolicy
  • iap.webTypes.getIamPolicy
  • iap.webTypes.setIamPolicy
Project
roles/iap.httpsResourceAccessor IAP-secured Web App User Provides permission to access HTTPS resources which use Identity-Aware Proxy.
  • iap.webServiceVersions.accessViaIAP
Project
roles/iap.settingsAdmin IAP Settings Admin Administrator of IAP Settings.
  • iap.projects.*
  • iap.web.getSettings
  • iap.web.updateSettings
  • iap.webServiceVersions.getSettings
  • iap.webServiceVersions.updateSettings
  • iap.webServices.getSettings
  • iap.webServices.updateSettings
  • iap.webTypes.getSettings
  • iap.webTypes.updateSettings
roles/iap.tunnelResourceAccessor IAP-secured Tunnel User Access Tunnel resources which use Identity-Aware Proxy
  • iap.tunnelInstances.accessViaIAP

Cloud IoT roles

Role Title Description Permissions Lowest resource
roles/cloudiot.admin Cloud IoT Admin Full control of all Cloud IoT resources and permissions.
  • cloudiot.*
  • cloudiottoken.*
Device
roles/cloudiot.deviceController Cloud IoT Device Controller Access to update the device configuration, but not to create or delete devices.
  • cloudiot.devices.get
  • cloudiot.devices.list
  • cloudiot.devices.sendCommand
  • cloudiot.devices.updateConfig
  • cloudiot.registries.get
  • cloudiot.registries.list
  • cloudiottoken.tokensettings.get
Device
roles/cloudiot.editor Cloud IoT Editor Read-write access to all Cloud IoT resources.
  • cloudiot.devices.*
  • cloudiot.registries.create
  • cloudiot.registries.delete
  • cloudiot.registries.get
  • cloudiot.registries.list
  • cloudiot.registries.update
  • cloudiottoken.*
Device
roles/cloudiot.provisioner Cloud IoT Provisioner Access to create and delete devices from registries, but not to modify the registries.
  • cloudiot.devices.*
  • cloudiot.registries.get
  • cloudiot.registries.list
  • cloudiottoken.tokensettings.get
Device
roles/cloudiot.viewer Cloud IoT Viewer Read-only access to all Cloud IoT resources.
  • cloudiot.devices.get
  • cloudiot.devices.list
  • cloudiot.registries.get
  • cloudiot.registries.list
  • cloudiottoken.tokensettings.get
Device

Cloud Talent Solution roles

Role Title Description Permissions Lowest resource
roles/cloudjobdiscovery.admin Admin Access to Cloud Talent Solution Self-Service Tools.
  • cloudjobdiscovery.tools.*
  • iam.serviceAccounts.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudjobdiscovery.jobsEditor Job Editor Write access to all job data in Cloud Talent Solution.
  • cloudjobdiscovery.companies.*
  • cloudjobdiscovery.events.*
  • cloudjobdiscovery.jobs.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudjobdiscovery.jobsViewer Job Viewer Read access to all job data in Cloud Talent Solution.
  • cloudjobdiscovery.companies.get
  • cloudjobdiscovery.companies.list
  • cloudjobdiscovery.jobs.get
  • cloudjobdiscovery.jobs.search
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudjobdiscovery.profilesEditor Profile Editor Write access to all profile data in Cloud Talent Solution.
  • cloudjobdiscovery.events.*
  • cloudjobdiscovery.profiles.*
  • cloudjobdiscovery.tenants.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudjobdiscovery.profilesViewer Profile Viewer Read access to all profile data in Cloud Talent Solution.
  • cloudjobdiscovery.profiles.get
  • cloudjobdiscovery.profiles.search
  • cloudjobdiscovery.tenants.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Cloud KMS roles

Role Title Description Permissions Lowest resource
roles/cloudkms.admin Cloud KMS Admin Provides full access to Cloud KMS resources, except encrypt and decrypt operations.
  • cloudkms.cryptoKeyVersions.create
  • cloudkms.cryptoKeyVersions.destroy
  • cloudkms.cryptoKeyVersions.get
  • cloudkms.cryptoKeyVersions.list
  • cloudkms.cryptoKeyVersions.restore
  • cloudkms.cryptoKeyVersions.update
  • cloudkms.cryptoKeys.*
  • cloudkms.importJobs.*
  • cloudkms.keyRings.*
  • resourcemanager.projects.get
CryptoKey
roles/cloudkms.cryptoKeyDecrypter Cloud KMS CryptoKey Decrypter Provides ability to use Cloud KMS resources for decrypt operations only.
  • cloudkms.cryptoKeyVersions.useToDecrypt
  • resourcemanager.projects.get
CryptoKey
roles/cloudkms.cryptoKeyEncrypter Cloud KMS CryptoKey Encrypter Provides ability to use Cloud KMS resources for encrypt operations only.
  • cloudkms.cryptoKeyVersions.useToEncrypt
  • resourcemanager.projects.get
CryptoKey
roles/cloudkms.cryptoKeyEncrypterDecrypter Cloud KMS CryptoKey Encrypter/Decrypter Provides ability to use Cloud KMS resources for encrypt and decrypt operations only.
  • cloudkms.cryptoKeyVersions.useToDecrypt
  • cloudkms.cryptoKeyVersions.useToEncrypt
  • resourcemanager.projects.get
CryptoKey
roles/cloudkms.importer Cloud KMS Importer Enables ImportCryptoKeyVersion, CreateImportJob, ListImportJobs, and GetImportJob operations
  • cloudkms.importJobs.create
  • cloudkms.importJobs.get
  • cloudkms.importJobs.list
  • cloudkms.importJobs.useToImport
  • resourcemanager.projects.get
roles/cloudkms.publicKeyViewer Cloud KMS CryptoKey Public Key Viewer Enables GetPublicKey operations
  • cloudkms.cryptoKeyVersions.viewPublicKey
  • resourcemanager.projects.get
roles/cloudkms.signer Cloud KMS CryptoKey Signer Enables the AsymmetricSign operation
  • cloudkms.cryptoKeyVersions.useToSign
  • resourcemanager.projects.get
roles/cloudkms.signerVerifier Cloud KMS CryptoKey Signer/Verifier Enables AsymmetricSign, and GetPublicKey operations
  • cloudkms.cryptoKeyVersions.useToSign
  • cloudkms.cryptoKeyVersions.viewPublicKey
  • resourcemanager.projects.get

Cloud Marketplace roles

Role Title Description Permissions Lowest resource
roles/consumerprocurement.entitlementManager Consumer Procurement Entitlement Manager Beta Allows managing entitlements and enabling, disabling, and inspecting service states for a consumer project.
  • consumerprocurement.entitlements.*
  • consumerprocurement.freeTrials.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.operations.get
  • serviceusage.services.disable
  • serviceusage.services.enable
  • serviceusage.services.get
  • serviceusage.services.list
roles/consumerprocurement.entitlementViewer Consumer Procurement Entitlement Viewer Beta Allows inspecting entitlements and service states for a consumer project.
  • consumerprocurement.entitlements.*
  • consumerprocurement.freeTrials.get
  • consumerprocurement.freeTrials.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.services.get
  • serviceusage.services.list
roles/consumerprocurement.orderAdmin Consumer Procurement Order Administrator Beta Allows managing purchases.
  • consumerprocurement.accounts.*
  • consumerprocurement.orders.*
roles/consumerprocurement.orderViewer Consumer Procurement Order Viewer Beta Allows inspecting purchases.
  • consumerprocurement.accounts.get
  • consumerprocurement.accounts.list
  • consumerprocurement.orders.get
  • consumerprocurement.orders.list

Cloud Migration roles

Role Title Description Permissions Lowest resource
roles/cloudmigration.inframanager Velostrata Manager Beta Ability to create and manage Compute VMs to run Velostrata Infrastructure
  • cloudmigration.*
  • compute.addresses.*
  • compute.diskTypes.*
  • compute.disks.create
  • compute.disks.createSnapshot
  • compute.disks.delete
  • compute.disks.get
  • compute.disks.list
  • compute.disks.setLabels
  • compute.disks.update
  • compute.disks.use
  • compute.disks.useReadOnly
  • compute.globalOperations.get
  • compute.images.get
  • compute.images.list
  • compute.images.useReadOnly
  • compute.instances.attachDisk
  • compute.instances.create
  • compute.instances.delete
  • compute.instances.detachDisk
  • compute.instances.get
  • compute.instances.getSerialPortOutput
  • compute.instances.list
  • compute.instances.reset
  • compute.instances.setDiskAutoDelete
  • compute.instances.setLabels
  • compute.instances.setMachineType
  • compute.instances.setMetadata
  • compute.instances.setMinCpuPlatform
  • compute.instances.setScheduling
  • compute.instances.setServiceAccount
  • compute.instances.setTags
  • compute.instances.start
  • compute.instances.startWithEncryptionKey
  • compute.instances.stop
  • compute.instances.update
  • compute.instances.updateNetworkInterface
  • compute.instances.updateShieldedInstanceConfig
  • compute.instances.use
  • compute.licenseCodes.get
  • compute.licenseCodes.list
  • compute.licenseCodes.update
  • compute.licenseCodes.use
  • compute.licenses.get
  • compute.licenses.list
  • compute.machineTypes.*
  • compute.networks.get
  • compute.networks.list
  • compute.networks.use
  • compute.networks.useExternalIp
  • compute.nodeGroups.get
  • compute.nodeGroups.list
  • compute.nodeTemplates.list
  • compute.projects.get
  • compute.regionOperations.get
  • compute.regions.*
  • compute.snapshots.create
  • compute.snapshots.delete
  • compute.snapshots.get
  • compute.snapshots.setLabels
  • compute.snapshots.useReadOnly
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.subnetworks.use
  • compute.subnetworks.useExternalIp
  • compute.zoneOperations.get
  • compute.zones.*
  • gkehub.endpoints.*
  • iam.serviceAccounts.get
  • iam.serviceAccounts.list
  • resourcemanager.projects.get
  • storage.buckets.create
  • storage.buckets.delete
  • storage.buckets.get
  • storage.buckets.list
  • storage.buckets.update
roles/cloudmigration.storageaccess Velostrata Storage Access Beta Ability to access migration storage
  • storage.objects.create
  • storage.objects.delete
  • storage.objects.get
  • storage.objects.list
  • storage.objects.update
roles/cloudmigration.velostrataconnect Velostrata Manager Connection Agent Beta Ability to set up connection between Velostrata Manager and Google
  • cloudmigration.*
  • gkehub.endpoints.*
roles/vmmigration.admin VM Migration Administrator Beta Ability to view and edit all VM Migration objects
  • vmmigration.*
roles/vmmigration.viewer VM Migration Viewer Beta Ability to view all VM Migration objects
  • vmmigration.deployments.get
  • vmmigration.deployments.list

Cloud Private Catalog roles

Role Title Description Permissions Lowest resource
roles/cloudprivatecatalog.consumer Catalog Consumer Beta Can browse catalogs in the target resource context.
  • cloudprivatecatalog.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudprivatecatalogproducer.admin Catalog Admin Beta Can manage catalog and view its associations.
  • cloudprivatecatalog.*
  • cloudprivatecatalogproducer.*
  • resourcemanager.folders.get
  • resourcemanager.folders.list
  • resourcemanager.organizations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudprivatecatalogproducer.manager Catalog Manager Beta Can manage associations between a catalog and a target resource.
  • cloudprivatecatalog.*
  • cloudprivatecatalogproducer.associations.*
  • cloudprivatecatalogproducer.catalogs.get
  • cloudprivatecatalogproducer.catalogs.list
  • cloudprivatecatalogproducer.targets.*
  • resourcemanager.folders.get
  • resourcemanager.folders.list
  • resourcemanager.organizations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Cloud Profiler roles

Role Title Description Permissions Lowest resource
roles/cloudprofiler.agent Cloud Profiler Agent Cloud Profiler agents are allowed to register and provide the profiling data.
  • cloudprofiler.profiles.create
  • cloudprofiler.profiles.update
roles/cloudprofiler.user Cloud Profiler User Cloud Profiler users are allowed to query and view the profiling data.
  • cloudprofiler.profiles.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Cloud Scheduler roles

Role Title Description Permissions Lowest resource
roles/cloudscheduler.admin Cloud Scheduler Admin Beta Full access to jobs and executions.
  • appengine.applications.get
  • cloudscheduler.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.services.get
  • serviceusage.services.list
roles/cloudscheduler.jobRunner Cloud Scheduler Job Runner Beta Access to run jobs.
  • appengine.applications.get
  • cloudscheduler.jobs.fullView
  • cloudscheduler.jobs.run
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.services.get
  • serviceusage.services.list
roles/cloudscheduler.viewer Cloud Scheduler Viewer Beta Get and list access to jobs, executions, and locations.
  • appengine.applications.get
  • cloudscheduler.jobs.fullView
  • cloudscheduler.jobs.get
  • cloudscheduler.jobs.list
  • cloudscheduler.locations.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.services.get
  • serviceusage.services.list

Cloud Security Scanner roles

Role Title Description Permissions Lowest resource
roles/cloudsecurityscanner.editor Web Security Scanner Editor Full access to all Web Security Scanner resources
  • appengine.applications.get
  • cloudsecurityscanner.*
  • compute.addresses.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Project
roles/cloudsecurityscanner.runner Web Security Scanner Runner Read access to Scan and ScanRun, plus the ability to start scans
  • cloudsecurityscanner.crawledurls.*
  • cloudsecurityscanner.scanruns.get
  • cloudsecurityscanner.scanruns.list
  • cloudsecurityscanner.scanruns.stop
  • cloudsecurityscanner.scans.get
  • cloudsecurityscanner.scans.list
  • cloudsecurityscanner.scans.run
Project
roles/cloudsecurityscanner.viewer Web Security Scanner Viewer Read access to all Web Security Scanner resources
  • cloudsecurityscanner.crawledurls.*
  • cloudsecurityscanner.results.*
  • cloudsecurityscanner.scanruns.get
  • cloudsecurityscanner.scanruns.getSummary
  • cloudsecurityscanner.scanruns.list
  • cloudsecurityscanner.scans.get
  • cloudsecurityscanner.scans.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Project

Cloud Services roles

Role Title Description Permissions Lowest resource
roles/servicebroker.admin Service Broker Admin Full access to ServiceBroker resources.
  • servicebroker.*
roles/servicebroker.operator Service Broker Operator Operational access to the ServiceBroker resources.
  • servicebroker.bindingoperations.*
  • servicebroker.bindings.create
  • servicebroker.bindings.delete
  • servicebroker.bindings.get
  • servicebroker.bindings.list
  • servicebroker.catalogs.create
  • servicebroker.catalogs.delete
  • servicebroker.catalogs.get
  • servicebroker.catalogs.list
  • servicebroker.instanceoperations.*
  • servicebroker.instances.create
  • servicebroker.instances.delete
  • servicebroker.instances.get
  • servicebroker.instances.list
  • servicebroker.instances.update

Cloud SQL roles

Role Title Description Permissions Lowest resource
roles/cloudsql.admin Cloud SQL Admin Provides full control of Cloud SQL resources.
  • cloudsql.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Project
roles/cloudsql.client Cloud SQL Client Provides connectivity access to Cloud SQL instances.
  • cloudsql.instances.connect
  • cloudsql.instances.get
Project
roles/cloudsql.editor Cloud SQL Editor Provides full control of existing Cloud SQL instances excluding modifying users, SSL certificates or deleting resources.
  • cloudsql.backupRuns.create
  • cloudsql.backupRuns.get
  • cloudsql.backupRuns.list
  • cloudsql.databases.create
  • cloudsql.databases.get
  • cloudsql.databases.list
  • cloudsql.databases.update
  • cloudsql.instances.addServerCa
  • cloudsql.instances.connect
  • cloudsql.instances.export
  • cloudsql.instances.failover
  • cloudsql.instances.get
  • cloudsql.instances.list
  • cloudsql.instances.listServerCas
  • cloudsql.instances.restart
  • cloudsql.instances.rotateServerCa
  • cloudsql.instances.truncateLog
  • cloudsql.instances.update
  • cloudsql.sslCerts.get
  • cloudsql.sslCerts.list
  • cloudsql.users.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Project
roles/cloudsql.instanceUser Cloud SQL Instance User Role allowing access to a Cloud SQL instance
  • cloudsql.instances.get
  • cloudsql.instances.login
roles/cloudsql.viewer Cloud SQL Viewer Provides read-only access to Cloud SQL resources.
  • cloudsql.backupRuns.get
  • cloudsql.backupRuns.list
  • cloudsql.databases.get
  • cloudsql.databases.list
  • cloudsql.instances.export
  • cloudsql.instances.get
  • cloudsql.instances.list
  • cloudsql.instances.listServerCas
  • cloudsql.sslCerts.get
  • cloudsql.sslCerts.list
  • cloudsql.users.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Project

Cloud Tasks roles

Role Title Description Permissions Lowest resource
roles/cloudtasks.admin Cloud Tasks Admin Beta Full access to queues and tasks.
  • cloudtasks.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudtasks.enqueuer Cloud Tasks Enqueuer Beta Access to create tasks.
  • cloudtasks.tasks.create
  • cloudtasks.tasks.fullView
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudtasks.queueAdmin Cloud Tasks Queue Admin Beta Admin access to queues.
  • cloudtasks.locations.*
  • cloudtasks.queues.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudtasks.taskDeleter Cloud Tasks Task Deleter Beta Access to delete tasks.
  • cloudtasks.tasks.delete
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudtasks.taskRunner Cloud Tasks Task Runner Beta Access to run tasks.
  • cloudtasks.tasks.fullView
  • cloudtasks.tasks.run
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudtasks.viewer Cloud Tasks Viewer Beta Get and list access to tasks, queues, and locations.
  • cloudtasks.locations.*
  • cloudtasks.queues.get
  • cloudtasks.queues.list
  • cloudtasks.tasks.fullView
  • cloudtasks.tasks.get
  • cloudtasks.tasks.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Cloud Trace roles

Role Title Description Permissions Lowest resource
roles/cloudtrace.admin Cloud Trace Admin Provides full access to the Trace console and read-write access to traces.
  • cloudtrace.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/cloudtrace.agent Cloud Trace Agent For service accounts. Provides ability to write traces by sending the data to Stackdriver Trace.
  • cloudtrace.traces.patch
Project
roles/cloudtrace.user Cloud Trace User Provides full access to the Trace console and read access to traces.
  • cloudtrace.insights.*
  • cloudtrace.stats.*
  • cloudtrace.tasks.*
  • cloudtrace.traces.get
  • cloudtrace.traces.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project

Cloud Translation roles

Role Title Description Permissions Lowest resource
roles/cloudtranslate.admin Cloud Translation API Admin Full access to all Cloud Translation resources
  • automl.models.get
  • automl.models.predict
  • cloudtranslate.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudtranslate.editor Cloud Translation API Editor Editor of all Cloud Translation resources
  • automl.models.get
  • automl.models.predict
  • cloudtranslate.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudtranslate.user Cloud Translation API User User of Cloud Translation and AutoML models
  • automl.models.get
  • automl.models.predict
  • cloudtranslate.generalModels.*
  • cloudtranslate.glossaries.batchPredict
  • cloudtranslate.glossaries.get
  • cloudtranslate.glossaries.list
  • cloudtranslate.glossaries.predict
  • cloudtranslate.languageDetectionModels.*
  • cloudtranslate.locations.*
  • cloudtranslate.operations.get
  • cloudtranslate.operations.list
  • cloudtranslate.operations.wait
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudtranslate.viewer Cloud Translation API Viewer Viewer of all Translation resources
  • automl.models.get
  • cloudtranslate.generalModels.get
  • cloudtranslate.glossaries.get
  • cloudtranslate.glossaries.list
  • cloudtranslate.locations.*
  • cloudtranslate.operations.get
  • cloudtranslate.operations.list
  • cloudtranslate.operations.wait
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Workflows roles

Role Title Description Permissions Lowest resource
roles/workflows.admin Workflows Admin Beta Full access to workflows and related resources.
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • workflows.*
roles/workflows.editor Workflows Editor Beta Read and write access to workflows and related resources.
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • workflows.executions.*
  • workflows.locations.*
  • workflows.operations.*
  • workflows.workflows.create
  • workflows.workflows.delete
  • workflows.workflows.get
  • workflows.workflows.getIamPolicy
  • workflows.workflows.list
  • workflows.workflows.update
roles/workflows.invoker Workflows Invoker Beta Access to execute workflows and manage the executions.
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • workflows.executions.*
roles/workflows.viewer Workflows Viewer Beta Read-only access to workflows and related resources.
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • workflows.executions.get
  • workflows.executions.list
  • workflows.locations.*
  • workflows.operations.get
  • workflows.operations.list
  • workflows.workflows.get
  • workflows.workflows.getIamPolicy
  • workflows.workflows.list

Codelab API Keys roles

Role Title Description Permissions Lowest resource
roles/codelabapikeys.admin Codelab ApiKeys Admin Beta Full access to API keys
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/codelabapikeys.editor Codelab API Keys Editor Beta This role can view and edit all properties of API keys.
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/codelabapikeys.viewer Codelab API Keys Viewer Beta This role can view all properties except change history of API keys.
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Cloud Composer roles

Role Title Description Permissions Lowest resource
roles/composer.admin Composer Administrator Provides full control of Cloud Composer resources.
  • composer.*
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Project
roles/composer.environmentAndStorageObjectAdmin Environment and Storage Object Administrator Provides full control of Cloud Composer resources and of the objects in all project buckets.
  • composer.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • storage.objects.*
Project
roles/composer.environmentAndStorageObjectViewer Environment User and Storage Object Viewer Provides the permissions necessary to list and get Cloud Composer environments and operations. Provides read-only access to objects in all project buckets.
  • composer.environments.get
  • composer.environments.list
  • composer.imageversions.*
  • composer.operations.get
  • composer.operations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • storage.objects.get
  • storage.objects.list
Project
roles/composer.user Composer User Provides the permissions necessary to list and get Cloud Composer environments and operations.
  • composer.environments.get
  • composer.environments.list
  • composer.imageversions.*
  • composer.operations.get
  • composer.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Project
roles/composer.worker Composer Worker Provides the permissions necessary to run a Cloud Composer environment VM. Intended for service accounts.
  • artifactregistry.*
  • cloudbuild.*
  • container.*
  • containeranalysis.occurrences.create
  • containeranalysis.occurrences.delete
  • containeranalysis.occurrences.get
  • containeranalysis.occurrences.list
  • containeranalysis.occurrences.update
  • logging.logEntries.create
  • monitoring.metricDescriptors.create
  • monitoring.metricDescriptors.get
  • monitoring.metricDescriptors.list
  • monitoring.monitoredResourceDescriptors.*
  • monitoring.timeSeries.*
  • pubsub.snapshots.create
  • pubsub.snapshots.delete
  • pubsub.snapshots.get
  • pubsub.snapshots.list
  • pubsub.snapshots.seek
  • pubsub.snapshots.update
  • pubsub.subscriptions.consume
  • pubsub.subscriptions.create
  • pubsub.subscriptions.delete
  • pubsub.subscriptions.get
  • pubsub.subscriptions.list
  • pubsub.subscriptions.update
  • pubsub.topics.attachSubscription
  • pubsub.topics.create
  • pubsub.topics.delete
  • pubsub.topics.detachSubscription
  • pubsub.topics.get
  • pubsub.topics.list
  • pubsub.topics.publish
  • pubsub.topics.update
  • pubsub.topics.updateTag
  • remotebuildexecution.blobs.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • source.repos.get
  • source.repos.list
  • storage.buckets.create
  • storage.buckets.get
  • storage.buckets.list
  • storage.objects.*
Project

Compute Engine roles

Role Title Description Permissions Lowest resource
roles/compute.admin Compute Admin

Full control of all Compute Engine resources.

If the user will be managing virtual machine instances that are configured to run as a service account, you must also grant the roles/iam.serviceAccountUser role.

  • compute.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Disk, image, instance, instanceTemplate, nodeGroup, nodeTemplate, snapshot Beta
roles/compute.imageUser Compute Image User

Permission to list and read images without having other permissions on the image. Granting this role at the project level gives users the ability to list all images in the project and create resources, such as instances and persistent disks, based on images in the project.

  • compute.images.get
  • compute.images.getFromFamily
  • compute.images.list
  • compute.images.useReadOnly
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
ImageBeta
roles/compute.instanceAdmin Compute Instance Admin (beta)

Permissions to create, modify, and delete virtual machine instances. This includes permissions to create, modify, and delete disks, and also to configure Shielded VMBETA settings.

If the user will be managing virtual machine instances that are configured to run as a service account, you must also grant the roles/iam.serviceAccountUser role.

For example, if your company has someone who manages groups of virtual machine instances but does not manage network or security settings and does not manage instances that run as service accounts, you can grant this role on the organization, folder, or project that contains the instances, or you can grant it on individual instances.

  • compute.acceleratorTypes.*
  • compute.addresses.get
  • compute.addresses.list
  • compute.addresses.use
  • compute.autoscalers.*
  • compute.diskTypes.*
  • compute.disks.create
  • compute.disks.createSnapshot
  • compute.disks.delete
  • compute.disks.get
  • compute.disks.list
  • compute.disks.resize
  • compute.disks.setLabels
  • compute.disks.update
  • compute.disks.use
  • compute.disks.useReadOnly
  • compute.globalAddresses.get
  • compute.globalAddresses.list
  • compute.globalAddresses.use
  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.images.get
  • compute.images.getFromFamily
  • compute.images.list
  • compute.images.useReadOnly
  • compute.instanceGroupManagers.*
  • compute.instanceGroups.*
  • compute.instanceTemplates.*
  • compute.instances.*
  • compute.licenses.get
  • compute.licenses.list
  • compute.machineTypes.*
  • compute.networkEndpointGroups.*
  • compute.networks.get
  • compute.networks.list
  • compute.networks.use
  • compute.networks.useExternalIp
  • compute.projects.get
  • compute.regionOperations.get
  • compute.regionOperations.list
  • compute.regions.*
  • compute.reservations.get
  • compute.reservations.list
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.subnetworks.use
  • compute.subnetworks.useExternalIp
  • compute.targetPools.get
  • compute.targetPools.list
  • compute.zoneOperations.get
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Disk, image, instance, instanceTemplate, snapshot Beta
roles/compute.instanceAdmin.v1 Compute Instance Admin (v1)

Full control of Compute Engine instances, instance groups, disks, snapshots, and images. Read access to all Compute Engine networking resources.

If you grant a user this role only at an instance level, then that user cannot create new instances.

  • compute.acceleratorTypes.*
  • compute.addresses.get
  • compute.addresses.list
  • compute.addresses.use
  • compute.autoscalers.*
  • compute.backendBuckets.get
  • compute.backendBuckets.list
  • compute.backendServices.get
  • compute.backendServices.list
  • compute.diskTypes.*
  • compute.disks.*
  • compute.externalVpnGateways.get
  • compute.externalVpnGateways.list
  • compute.firewalls.get
  • compute.firewalls.list
  • compute.forwardingRules.get
  • compute.forwardingRules.list
  • compute.globalAddresses.get
  • compute.globalAddresses.list
  • compute.globalAddresses.use
  • compute.globalForwardingRules.get
  • compute.globalForwardingRules.list
  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.healthChecks.get
  • compute.healthChecks.list
  • compute.httpHealthChecks.get
  • compute.httpHealthChecks.list
  • compute.httpsHealthChecks.get
  • compute.httpsHealthChecks.list
  • compute.images.*
  • compute.instanceGroupManagers.*
  • compute.instanceGroups.*
  • compute.instanceTemplates.*
  • compute.instances.*
  • compute.interconnectAttachments.get
  • compute.interconnectAttachments.list
  • compute.interconnectLocations.*
  • compute.interconnects.get
  • compute.interconnects.list
  • compute.licenseCodes.*
  • compute.licenses.*
  • compute.machineTypes.*
  • compute.networkEndpointGroups.*
  • compute.networks.get
  • compute.networks.list
  • compute.networks.use
  • compute.networks.useExternalIp
  • compute.projects.get
  • compute.projects.setCommonInstanceMetadata
  • compute.regionBackendServices.get
  • compute.regionBackendServices.list
  • compute.regionHealthCheckServices.get
  • compute.regionHealthCheckServices.list
  • compute.regionNotificationEndpoints.get
  • compute.regionNotificationEndpoints.list
  • compute.regionOperations.get
  • compute.regionOperations.list
  • compute.regions.*
  • compute.reservations.get
  • compute.reservations.list
  • compute.resourcePolicies.*
  • compute.routers.get
  • compute.routers.list
  • compute.routes.get
  • compute.routes.list
  • compute.snapshots.*
  • compute.sslCertificates.get
  • compute.sslCertificates.list
  • compute.sslPolicies.get
  • compute.sslPolicies.list
  • compute.sslPolicies.listAvailableFeatures
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.subnetworks.use
  • compute.subnetworks.useExternalIp
  • compute.targetHttpProxies.get
  • compute.targetHttpProxies.list
  • compute.targetHttpsProxies.get
  • compute.targetHttpsProxies.list
  • compute.targetInstances.get
  • compute.targetInstances.list
  • compute.targetPools.get
  • compute.targetPools.list
  • compute.targetSslProxies.get
  • compute.targetSslProxies.list
  • compute.targetTcpProxies.get
  • compute.targetTcpProxies.list
  • compute.targetVpnGateways.get
  • compute.targetVpnGateways.list
  • compute.urlMaps.get
  • compute.urlMaps.list
  • compute.vpnGateways.get
  • compute.vpnGateways.list
  • compute.vpnTunnels.get
  • compute.vpnTunnels.list
  • compute.zoneOperations.get
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/compute.loadBalancerAdmin Compute Load Balancer Admin Beta

Permissions to create, modify, and delete load balancers and associate resources.

For example, if your company has a load balancing team that manages load balancers, SSL certificates for load balancers, SSL policies, and other load balancing resources, and a separate networking team that manages the rest of the networking resources, then grant this role to the load balancing team's group.

  • compute.addresses.*
  • compute.backendBuckets.*
  • compute.backendServices.*
  • compute.forwardingRules.*
  • compute.globalAddresses.*
  • compute.globalForwardingRules.*
  • compute.healthChecks.*
  • compute.httpHealthChecks.*
  • compute.httpsHealthChecks.*
  • compute.instanceGroups.*
  • compute.instances.get
  • compute.instances.list
  • compute.instances.use
  • compute.networkEndpointGroups.*
  • compute.networks.get
  • compute.networks.list
  • compute.networks.use
  • compute.projects.get
  • compute.regionBackendServices.*
  • compute.regionHealthCheckServices.*
  • compute.regionNotificationEndpoints.*
  • compute.securityPolicies.get
  • compute.securityPolicies.list
  • compute.securityPolicies.use
  • compute.sslCertificates.*
  • compute.sslPolicies.*
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.subnetworks.use
  • compute.targetHttpProxies.*
  • compute.targetHttpsProxies.*
  • compute.targetInstances.*
  • compute.targetPools.*
  • compute.targetSslProxies.*
  • compute.targetTcpProxies.*
  • compute.urlMaps.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
InstanceBeta
roles/compute.networkAdmin Compute Network Admin

Permissions to create, modify, and delete networking resources, except for firewall rules and SSL certificates. The network admin role allows read-only access to firewall rules, SSL certificates, and instances (to view their ephemeral IP addresses). The network admin role does not allow a user to create, start, stop, or delete instances.

For example, if your company has a security team that manages firewalls and SSL certificates and a networking team that manages the rest of the networking resources, then grant this role to the networking team's group.

  • compute.acceleratorTypes.*
  • compute.addresses.*
  • compute.autoscalers.get
  • compute.autoscalers.list
  • compute.backendBuckets.*
  • compute.backendServices.*
  • compute.externalVpnGateways.*
  • compute.firewalls.get
  • compute.firewalls.list
  • compute.forwardingRules.*
  • compute.globalAddresses.*
  • compute.globalForwardingRules.*
  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.globalPublicDelegatedPrefixes.delete
  • compute.globalPublicDelegatedPrefixes.get
  • compute.globalPublicDelegatedPrefixes.list
  • compute.globalPublicDelegatedPrefixes.update
  • compute.globalPublicDelegatedPrefixes.updatePolicy
  • compute.healthChecks.*
  • compute.httpHealthChecks.*
  • compute.httpsHealthChecks.*
  • compute.instanceGroupManagers.get
  • compute.instanceGroupManagers.list
  • compute.instanceGroupManagers.update
  • compute.instanceGroupManagers.use
  • compute.instanceGroups.get
  • compute.instanceGroups.list
  • compute.instanceGroups.update
  • compute.instanceGroups.use
  • compute.instances.get
  • compute.instances.getGuestAttributes
  • compute.instances.getScreenshot
  • compute.instances.getSerialPortOutput
  • compute.instances.list
  • compute.instances.listReferrers
  • compute.instances.use
  • compute.interconnectAttachments.*
  • compute.interconnectLocations.*
  • compute.interconnects.*
  • compute.machineTypes.*
  • compute.networkEndpointGroups.get
  • compute.networkEndpointGroups.list
  • compute.networkEndpointGroups.use
  • compute.networks.*
  • compute.projects.get
  • compute.publicDelegatedPrefixes.delete
  • compute.publicDelegatedPrefixes.get
  • compute.publicDelegatedPrefixes.list
  • compute.publicDelegatedPrefixes.update
  • compute.publicDelegatedPrefixes.updatePolicy
  • compute.regionBackendServices.*
  • compute.regionHealthCheckServices.*
  • compute.regionNotificationEndpoints.*
  • compute.regionOperations.get
  • compute.regionOperations.list
  • compute.regions.*
  • compute.routers.*
  • compute.routes.*
  • compute.securityPolicies.get
  • compute.securityPolicies.list
  • compute.securityPolicies.use
  • compute.sslCertificates.get
  • compute.sslCertificates.list
  • compute.sslPolicies.*
  • compute.subnetworks.*
  • compute.targetHttpProxies.*
  • compute.targetHttpsProxies.*
  • compute.targetInstances.*
  • compute.targetPools.*
  • compute.targetSslProxies.*
  • compute.targetTcpProxies.*
  • compute.targetVpnGateways.*
  • compute.urlMaps.*
  • compute.vpnGateways.*
  • compute.vpnTunnels.*
  • compute.zoneOperations.get
  • compute.zoneOperations.list
  • compute.zones.*
  • networksecurity.*
  • networkservices.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • servicenetworking.operations.get
  • servicenetworking.services.addPeering
  • servicenetworking.services.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
InstanceBeta
roles/compute.networkUser Compute Network User

Provides access to a shared VPC network

Once granted, service owners can use VPC networks and subnets that belong to the host project. For example, a network user can create a VM instance that belongs to a host project network but they cannot delete or create new networks in the host project.

  • compute.addresses.createInternal
  • compute.addresses.deleteInternal
  • compute.addresses.get
  • compute.addresses.list
  • compute.addresses.useInternal
  • compute.externalVpnGateways.get
  • compute.externalVpnGateways.list
  • compute.externalVpnGateways.use
  • compute.firewalls.get
  • compute.firewalls.list
  • compute.interconnectAttachments.get
  • compute.interconnectAttachments.list
  • compute.interconnectLocations.*
  • compute.interconnects.get
  • compute.interconnects.list
  • compute.interconnects.use
  • compute.networks.access
  • compute.networks.get
  • compute.networks.getEffectiveFirewalls
  • compute.networks.list
  • compute.networks.listPeeringRoutes
  • compute.networks.use
  • compute.networks.useExternalIp
  • compute.projects.get
  • compute.regions.*
  • compute.routers.get
  • compute.routers.list
  • compute.routes.get
  • compute.routes.list
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.subnetworks.use
  • compute.subnetworks.useExternalIp
  • compute.targetVpnGateways.get
  • compute.targetVpnGateways.list
  • compute.vpnGateways.get
  • compute.vpnGateways.list
  • compute.vpnGateways.use
  • compute.vpnTunnels.get
  • compute.vpnTunnels.list
  • compute.zones.*
  • networksecurity.authorizationPolicies.get
  • networksecurity.authorizationPolicies.list
  • networksecurity.authorizationPolicies.use
  • networksecurity.clientTlsPolicies.get
  • networksecurity.clientTlsPolicies.list
  • networksecurity.clientTlsPolicies.use
  • networksecurity.locations.*
  • networksecurity.operations.get
  • networksecurity.operations.list
  • networksecurity.serverTlsPolicies.get
  • networksecurity.serverTlsPolicies.list
  • networksecurity.serverTlsPolicies.use
  • networkservices.endpointConfigSelectors.get
  • networkservices.endpointConfigSelectors.list
  • networkservices.endpointConfigSelectors.use
  • networkservices.httpFilters.get
  • networkservices.httpFilters.list
  • networkservices.httpFilters.use
  • networkservices.httpfilters.get
  • networkservices.httpfilters.list
  • networkservices.httpfilters.use
  • networkservices.locations.*
  • networkservices.operations.get
  • networkservices.operations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • servicenetworking.services.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Project
roles/compute.networkViewer Compute Network Viewer

Read-only access to all networking resources

For example, if you have software that inspects your network configuration, you could grant this role to that software's service account.

  • compute.acceleratorTypes.*
  • compute.addresses.get
  • compute.addresses.list
  • compute.autoscalers.get
  • compute.autoscalers.list
  • compute.backendBuckets.get
  • compute.backendBuckets.list
  • compute.backendServices.get
  • compute.backendServices.list
  • compute.firewalls.get
  • compute.firewalls.list
  • compute.forwardingRules.get
  • compute.forwardingRules.list
  • compute.globalAddresses.get
  • compute.globalAddresses.list
  • compute.globalForwardingRules.get
  • compute.globalForwardingRules.list
  • compute.healthChecks.get
  • compute.healthChecks.list
  • compute.httpHealthChecks.get
  • compute.httpHealthChecks.list
  • compute.httpsHealthChecks.get
  • compute.httpsHealthChecks.list
  • compute.instanceGroupManagers.get
  • compute.instanceGroupManagers.list
  • compute.instanceGroups.get
  • compute.instanceGroups.list
  • compute.instances.get
  • compute.instances.getGuestAttributes
  • compute.instances.getScreenshot
  • compute.instances.getSerialPortOutput
  • compute.instances.list
  • compute.instances.listReferrers
  • compute.interconnectAttachments.get
  • compute.interconnectAttachments.list
  • compute.interconnectLocations.*
  • compute.interconnects.get
  • compute.interconnects.list
  • compute.machineTypes.*
  • compute.networks.get
  • compute.networks.getEffectiveFirewalls
  • compute.networks.list
  • compute.networks.listPeeringRoutes
  • compute.projects.get
  • compute.regionBackendServices.get
  • compute.regionBackendServices.list
  • compute.regionHealthCheckServices.get
  • compute.regionHealthCheckServices.list
  • compute.regionNotificationEndpoints.get
  • compute.regionNotificationEndpoints.list
  • compute.regions.*
  • compute.routers.get
  • compute.routers.list
  • compute.routes.get
  • compute.routes.list
  • compute.sslCertificates.get
  • compute.sslCertificates.list
  • compute.sslPolicies.get
  • compute.sslPolicies.list
  • compute.sslPolicies.listAvailableFeatures
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.targetHttpProxies.get
  • compute.targetHttpProxies.list
  • compute.targetHttpsProxies.get
  • compute.targetHttpsProxies.list
  • compute.targetInstances.get
  • compute.targetInstances.list
  • compute.targetPools.get
  • compute.targetPools.list
  • compute.targetSslProxies.get
  • compute.targetSslProxies.list
  • compute.targetTcpProxies.get
  • compute.targetTcpProxies.list
  • compute.targetVpnGateways.get
  • compute.targetVpnGateways.list
  • compute.urlMaps.get
  • compute.urlMaps.list
  • compute.vpnGateways.get
  • compute.vpnGateways.list
  • compute.vpnTunnels.get
  • compute.vpnTunnels.list
  • compute.zones.*
  • networksecurity.authorizationPolicies.get
  • networksecurity.authorizationPolicies.list
  • networksecurity.clientTlsPolicies.get
  • networksecurity.clientTlsPolicies.list
  • networksecurity.locations.*
  • networksecurity.operations.get
  • networksecurity.operations.list
  • networksecurity.serverTlsPolicies.get
  • networksecurity.serverTlsPolicies.list
  • networkservices.endpointConfigSelectors.get
  • networkservices.endpointConfigSelectors.list
  • networkservices.httpFilters.get
  • networkservices.httpFilters.list
  • networkservices.httpfilters.get
  • networkservices.httpfilters.list
  • networkservices.locations.*
  • networkservices.operations.get
  • networkservices.operations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • servicenetworking.services.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
InstanceBeta
roles/compute.orgSecurityPolicyAdmin Compute Organization Security Policy Admin Beta Full control of Compute Engine Organization Security Policies.
  • compute.globalOperations.get
  • compute.globalOperations.getIamPolicy
  • compute.globalOperations.list
  • compute.globalOperations.setIamPolicy
  • compute.projects.get
  • compute.securityPolicies.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/compute.orgSecurityPolicyUser Compute Organization Security Policy User Beta View or use Compute Engine Security Policies to associate with the organization or folders.
  • compute.globalOperations.get
  • compute.globalOperations.getIamPolicy
  • compute.globalOperations.list
  • compute.globalOperations.setIamPolicy
  • compute.projects.get
  • compute.securityPolicies.addAssociation
  • compute.securityPolicies.get
  • compute.securityPolicies.list
  • compute.securityPolicies.removeAssociation
  • compute.securityPolicies.use
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/compute.orgSecurityResourceAdmin Compute Organization Resource Admin Beta Full control of Compute Engine Security Policy associations to the organization or folders.
  • compute.globalOperations.get
  • compute.globalOperations.getIamPolicy
  • compute.globalOperations.list
  • compute.globalOperations.setIamPolicy
  • compute.organizations.listAssociations
  • compute.organizations.setSecurityPolicy
  • compute.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/compute.osAdminLogin Compute OS Admin Login Access to log in to a Compute Engine instance as an administrator user.
  • compute.instances.get
  • compute.instances.list
  • compute.instances.osAdminLogin
  • compute.instances.osLogin
  • compute.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
InstanceBeta
roles/compute.osLogin Compute OS Login Access to log in to a Compute Engine instance as a standard user.
  • compute.instances.get
  • compute.instances.list
  • compute.instances.osLogin
  • compute.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
InstanceBeta
roles/compute.osLoginExternalUser Compute OS Login External User

Available only at the organization level.

Access for an external user to set OS Login information associated with this organization. This role does not grant access to instances. External users must be granted one of the required OS Login roles in order to allow access to instances using SSH.

  • compute.oslogin.*
Organization
roles/compute.packetMirroringAdmin Compute packet mirroring admin Specify resources to be mirrored.
  • compute.networks.mirror
  • compute.projects.get
  • compute.subnetworks.mirror
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/compute.packetMirroringUser Compute packet mirroring user Use Compute Engine packet mirrorings.
  • compute.packetMirrorings.*
  • compute.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/compute.publicIpAdmin Compute Public IP Admin Beta Full control of public IP address management for Compute Engine.
  • compute.addresses.*
  • compute.globalAddresses.*
  • compute.globalPublicDelegatedPrefixes.*
  • compute.publicAdvertisedPrefixes.*
  • compute.publicDelegatedPrefixes.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/compute.securityAdmin Compute Security Admin

Permissions to create, modify, and delete firewall rules and SSL certificates, and also to configure Shielded VMBETA settings.

For example, if your company has a security team that manages firewalls and SSL certificates and a networking team that manages the rest of the networking resources, then grant this role to the security team's group.

  • compute.firewalls.*
  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.instances.getEffectiveFirewalls
  • compute.instances.setShieldedInstanceIntegrityPolicy
  • compute.instances.setShieldedVmIntegrityPolicy
  • compute.instances.updateShieldedInstanceConfig
  • compute.instances.updateShieldedVmConfig
  • compute.networks.get
  • compute.networks.getEffectiveFirewalls
  • compute.networks.list
  • compute.networks.updatePolicy
  • compute.packetMirrorings.*
  • compute.projects.get
  • compute.regionOperations.get
  • compute.regionOperations.list
  • compute.regions.*
  • compute.routes.get
  • compute.routes.list
  • compute.securityPolicies.*
  • compute.sslCertificates.*
  • compute.sslPolicies.*
  • compute.subnetworks.get
  • compute.subnetworks.list
  • compute.zoneOperations.get
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
InstanceBeta
roles/compute.storageAdmin Compute Storage Admin

Permissions to create, modify, and delete disks, images, and snapshots.

For example, if your company has someone who manages project images and you don't want them to have the editor role on the project, then grant this role to their account on the project.

  • compute.diskTypes.*
  • compute.disks.*
  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.images.*
  • compute.licenseCodes.*
  • compute.licenses.*
  • compute.projects.get
  • compute.regionOperations.get
  • compute.regionOperations.list
  • compute.regions.*
  • compute.resourcePolicies.*
  • compute.snapshots.*
  • compute.zoneOperations.get
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Disk, image, snapshot Beta
roles/compute.viewer Compute Viewer

Read-only access to get and list Compute Engine resources, without being able to read the data stored on them.

For example, an account with this role could inventory all of the disks in a project, but it could not read any of the data on those disks.

  • compute.acceleratorTypes.*
  • compute.addresses.get
  • compute.addresses.list
  • compute.autoscalers.get
  • compute.autoscalers.list
  • compute.backendBuckets.get
  • compute.backendBuckets.list
  • compute.backendServices.get
  • compute.backendServices.list
  • compute.commitments.get
  • compute.commitments.list
  • compute.diskTypes.*
  • compute.disks.get
  • compute.disks.getIamPolicy
  • compute.disks.list
  • compute.externalVpnGateways.get
  • compute.externalVpnGateways.list
  • compute.firewalls.get
  • compute.firewalls.list
  • compute.forwardingRules.get
  • compute.forwardingRules.list
  • compute.globalAddresses.get
  • compute.globalAddresses.list
  • compute.globalForwardingRules.get
  • compute.globalForwardingRules.list
  • compute.globalOperations.get
  • compute.globalOperations.getIamPolicy
  • compute.globalOperations.list
  • compute.globalPublicDelegatedPrefixes.get
  • compute.globalPublicDelegatedPrefixes.list
  • compute.healthChecks.get
  • compute.healthChecks.list
  • compute.httpHealthChecks.get
  • compute.httpHealthChecks.list
  • compute.httpsHealthChecks.get
  • compute.httpsHealthChecks.list
  • compute.images.get
  • compute.images.getFromFamily
  • compute.images.getIamPolicy
  • compute.images.list
  • compute.instanceGroupManagers.get
  • compute.instanceGroupManagers.list
  • compute.instanceGroups.get
  • compute.instanceGroups.list
  • compute.instanceTemplates.get
  • compute.instanceTemplates.getIamPolicy
  • compute.instanceTemplates.list
  • compute.instances.get
  • compute.instances.getEffectiveFirewalls
  • compute.instances.getGuestAttributes
  • compute.instances.getIamPolicy
  • compute.instances.getScreenshot
  • compute.instances.getSerialPortOutput
  • compute.instances.getShieldedInstanceIdentity
  • compute.instances.getShieldedVmIdentity
  • compute.instances.list
  • compute.instances.listReferrers
  • compute.interconnectAttachments.get
  • compute.interconnectAttachments.list
  • compute.interconnectLocations.*
  • compute.interconnects.get
  • compute.interconnects.list
  • compute.licenseCodes.get
  • compute.licenseCodes.getIamPolicy
  • compute.licenseCodes.list
  • compute.licenses.get
  • compute.licenses.getIamPolicy
  • compute.licenses.list
  • compute.machineTypes.*
  • compute.maintenancePolicies.get
  • compute.maintenancePolicies.getIamPolicy
  • compute.maintenancePolicies.list
  • compute.networkEndpointGroups.get
  • compute.networkEndpointGroups.getIamPolicy
  • compute.networkEndpointGroups.list
  • compute.networks.get
  • compute.networks.getEffectiveFirewalls
  • compute.networks.list
  • compute.networks.listPeeringRoutes
  • compute.nodeGroups.get
  • compute.nodeGroups.getIamPolicy
  • compute.nodeGroups.list
  • compute.nodeTemplates.get
  • compute.nodeTemplates.getIamPolicy
  • compute.nodeTemplates.list
  • compute.nodeTypes.*
  • compute.organizations.listAssociations
  • compute.projects.get
  • compute.publicAdvertisedPrefixes.get
  • compute.publicAdvertisedPrefixes.list
  • compute.publicDelegatedPrefixes.get
  • compute.publicDelegatedPrefixes.list
  • compute.regionBackendServices.get
  • compute.regionBackendServices.list
  • compute.regionHealthCheckServices.get
  • compute.regionHealthCheckServices.list
  • compute.regionNotificationEndpoints.get
  • compute.regionNotificationEndpoints.list
  • compute.regionOperations.get
  • compute.regionOperations.getIamPolicy
  • compute.regionOperations.list
  • compute.regions.*
  • compute.reservations.get
  • compute.reservations.list
  • compute.resourcePolicies.get
  • compute.resourcePolicies.list
  • compute.routers.get
  • compute.routers.list
  • compute.routes.get
  • compute.routes.list
  • compute.securityPolicies.get
  • compute.securityPolicies.getIamPolicy
  • compute.securityPolicies.list
  • compute.snapshots.get
  • compute.snapshots.getIamPolicy
  • compute.snapshots.list
  • compute.sslCertificates.get
  • compute.sslCertificates.list
  • compute.sslPolicies.get
  • compute.sslPolicies.list
  • compute.sslPolicies.listAvailableFeatures
  • compute.subnetworks.get
  • compute.subnetworks.getIamPolicy
  • compute.subnetworks.list
  • compute.targetHttpProxies.get
  • compute.targetHttpProxies.list
  • compute.targetHttpsProxies.get
  • compute.targetHttpsProxies.list
  • compute.targetInstances.get
  • compute.targetInstances.list
  • compute.targetPools.get
  • compute.targetPools.list
  • compute.targetSslProxies.get
  • compute.targetSslProxies.list
  • compute.targetTcpProxies.get
  • compute.targetTcpProxies.list
  • compute.targetVpnGateways.get
  • compute.targetVpnGateways.list
  • compute.urlMaps.get
  • compute.urlMaps.list
  • compute.urlMaps.validate
  • compute.vpnGateways.get
  • compute.vpnGateways.list
  • compute.vpnTunnels.get
  • compute.vpnTunnels.list
  • compute.zoneOperations.get
  • compute.zoneOperations.getIamPolicy
  • compute.zoneOperations.list
  • compute.zones.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Disk, image, instance, instanceTemplate, nodeGroup, nodeTemplate, snapshot Beta
roles/compute.xpnAdmin Compute Shared VPC Admin

Permissions to administer shared VPC host projects, specifically enabling the host projects and associating shared VPC service projects to the host project's network.

At the organization level, this role can only be granted by an organization admin.

Google Cloud recommends that the Shared VPC Admin be the owner of the shared VPC host project. The Shared VPC Admin is responsible for granting the Compute Network User role (roles/compute.networkUser) to service owners, and the shared VPC host project owner controls the project itself. Managing the project is easier if a single principal (individual or group) can fulfill both roles.

  • compute.globalOperations.get
  • compute.globalOperations.list
  • compute.organizations.administerXpn
  • compute.organizations.disableXpnHost
  • compute.organizations.disableXpnResource
  • compute.organizations.enableXpnHost
  • compute.organizations.enableXpnResource
  • compute.projects.get
  • compute.subnetworks.getIamPolicy
  • compute.subnetworks.setIamPolicy
  • resourcemanager.organizations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
Folder
roles/osconfig.assignmentAdmin Assignment Admin Full admin access to Assignments
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.assignmentEditor Assignment Editor Editor of Assignment resources
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.assignmentViewer Assignment Viewer Viewer of Assignment resources
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.guestPolicyAdmin GuestPolicy Admin Beta Full admin access to GuestPolicies
  • osconfig.guestPolicies.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.guestPolicyEditor GuestPolicy Editor Beta Editor of GuestPolicy resources
  • osconfig.guestPolicies.get
  • osconfig.guestPolicies.list
  • osconfig.guestPolicies.update
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.guestPolicyViewer GuestPolicy Viewer Beta Viewer of GuestPolicy resources
  • osconfig.guestPolicies.get
  • osconfig.guestPolicies.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.osConfigAdmin OsConfig Admin Full admin access to OsConfigs
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.osConfigEditor OsConfig Editor Editor of OsConfig resources
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.osConfigViewer OsConfig Viewer Viewer of OsConfig resources
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.patchDeploymentAdmin PatchDeployment Admin Full admin access to PatchDeployments
  • osconfig.patchDeployments.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.patchDeploymentViewer PatchDeployment Viewer Viewer of PatchDeployment resources
  • osconfig.patchDeployments.get
  • osconfig.patchDeployments.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.patchJobExecutor Patch Job Executor Access to execute Patch Jobs.
  • osconfig.patchJobs.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/osconfig.patchJobViewer Patch Job Viewer Get and list Patch Jobs.
  • osconfig.patchJobs.get
  • osconfig.patchJobs.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Kubernetes Engine roles

Role Title Description Permissions Lowest resource
roles/container.admin Kubernetes Engine Admin

Provides access to full management of clusters and their Kubernetes API objects.

To set a service account on nodes, you must also grant the Service Account User role (roles/iam.serviceAccountUser).

  • container.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/container.clusterAdmin Kubernetes Engine Cluster Admin

Provides access to management of clusters.

To set a service account on nodes, you must also grant the Service Account User role (roles/iam.serviceAccountUser).

  • container.clusters.create
  • container.clusters.delete
  • container.clusters.get
  • container.clusters.list
  • container.clusters.update
  • container.operations.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/container.clusterViewer Kubernetes Engine Cluster Viewer Get and list access to GKE Clusters.
  • container.clusters.get
  • container.clusters.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/container.developer Kubernetes Engine Developer Provides access to Kubernetes API objects inside clusters.
  • container.apiServices.*
  • container.backendConfigs.*
  • container.bindings.*
  • container.certificateSigningRequests.create
  • container.certificateSigningRequests.delete
  • container.certificateSigningRequests.get
  • container.certificateSigningRequests.list
  • container.certificateSigningRequests.update
  • container.certificateSigningRequests.updateStatus
  • container.clusterRoleBindings.get
  • container.clusterRoleBindings.list
  • container.clusterRoles.get
  • container.clusterRoles.list
  • container.clusters.get
  • container.clusters.list
  • container.componentStatuses.*
  • container.configMaps.*
  • container.controllerRevisions.get
  • container.controllerRevisions.list
  • container.cronJobs.*
  • container.csiDrivers.*
  • container.csiNodes.*
  • container.customResourceDefinitions.*
  • container.daemonSets.*
  • container.deployments.*
  • container.endpoints.*
  • container.events.*
  • container.horizontalPodAutoscalers.*
  • container.ingresses.*
  • container.initializerConfigurations.*
  • container.jobs.*
  • container.limitRanges.*
  • container.localSubjectAccessReviews.*
  • container.namespaces.*
  • container.networkPolicies.*
  • container.nodes.*
  • container.persistentVolumeClaims.*
  • container.persistentVolumes.*
  • container.petSets.*
  • container.podDisruptionBudgets.*
  • container.podPresets.*
  • container.podSecurityPolicies.get
  • container.podSecurityPolicies.list
  • container.podTemplates.*
  • container.pods.*
  • container.replicaSets.*
  • container.replicationControllers.*
  • container.resourceQuotas.*
  • container.roleBindings.get
  • container.roleBindings.list
  • container.roles.get
  • container.roles.list
  • container.runtimeClasses.*
  • container.scheduledJobs.*
  • container.secrets.*
  • container.selfSubjectAccessReviews.*
  • container.serviceAccounts.*
  • container.services.*
  • container.statefulSets.*
  • container.storageClasses.*
  • container.subjectAccessReviews.*
  • container.thirdPartyObjects.*
  • container.thirdPartyResources.*
  • container.tokenReviews.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/container.hostServiceAgentUser Kubernetes Engine Host Service Agent User Allows the Kubernetes Engine service account in the host project to configure shared network resources for cluster management. Also gives access to inspect the firewall rules in the host project.
  • compute.firewalls.get
  • container.hostServiceAgent.*
roles/container.viewer Kubernetes Engine Viewer Provides read-only access to GKE resources.
  • container.apiServices.get
  • container.apiServices.list
  • container.backendConfigs.get
  • container.backendConfigs.list
  • container.bindings.get
  • container.bindings.list
  • container.certificateSigningRequests.get
  • container.certificateSigningRequests.list
  • container.clusterRoleBindings.get
  • container.clusterRoleBindings.list
  • container.clusterRoles.get
  • container.clusterRoles.list
  • container.clusters.get
  • container.clusters.list
  • container.componentStatuses.*
  • container.configMaps.get
  • container.configMaps.list
  • container.controllerRevisions.get
  • container.controllerRevisions.list
  • container.cronJobs.get
  • container.cronJobs.getStatus
  • container.cronJobs.list
  • container.csiDrivers.get
  • container.csiDrivers.list
  • container.csiNodes.get
  • container.csiNodes.list
  • container.customResourceDefinitions.get
  • container.customResourceDefinitions.list
  • container.daemonSets.get
  • container.daemonSets.getStatus
  • container.daemonSets.list
  • container.deployments.get
  • container.deployments.getStatus
  • container.deployments.list
  • container.endpoints.get
  • container.endpoints.list
  • container.events.get
  • container.events.list
  • container.horizontalPodAutoscalers.get
  • container.horizontalPodAutoscalers.getStatus
  • container.horizontalPodAutoscalers.list
  • container.ingresses.get
  • container.ingresses.getStatus
  • container.ingresses.list
  • container.initializerConfigurations.get
  • container.initializerConfigurations.list
  • container.jobs.get
  • container.jobs.getStatus
  • container.jobs.list
  • container.limitRanges.get
  • container.limitRanges.list
  • container.namespaces.get
  • container.namespaces.getStatus
  • container.namespaces.list
  • container.networkPolicies.get
  • container.networkPolicies.list
  • container.nodes.get
  • container.nodes.getStatus
  • container.nodes.list
  • container.operations.*
  • container.persistentVolumeClaims.get
  • container.persistentVolumeClaims.getStatus
  • container.persistentVolumeClaims.list
  • container.persistentVolumes.get
  • container.persistentVolumes.getStatus
  • container.persistentVolumes.list
  • container.petSets.get
  • container.petSets.list
  • container.podDisruptionBudgets.get
  • container.podDisruptionBudgets.getStatus
  • container.podDisruptionBudgets.list
  • container.podPresets.get
  • container.podPresets.list
  • container.podSecurityPolicies.get
  • container.podSecurityPolicies.list
  • container.podTemplates.get
  • container.podTemplates.list
  • container.pods.get
  • container.pods.getStatus
  • container.pods.list
  • container.replicaSets.get
  • container.replicaSets.getScale
  • container.replicaSets.getStatus
  • container.replicaSets.list
  • container.replicationControllers.get
  • container.replicationControllers.getScale
  • container.replicationControllers.getStatus
  • container.replicationControllers.list
  • container.resourceQuotas.get
  • container.resourceQuotas.getStatus
  • container.resourceQuotas.list
  • container.roleBindings.get
  • container.roleBindings.list
  • container.roles.get
  • container.roles.list
  • container.runtimeClasses.get
  • container.runtimeClasses.list
  • container.scheduledJobs.get
  • container.scheduledJobs.list
  • container.serviceAccounts.get
  • container.serviceAccounts.list
  • container.services.get
  • container.services.getStatus
  • container.services.list
  • container.statefulSets.get
  • container.statefulSets.getStatus
  • container.statefulSets.list
  • container.storageClasses.get
  • container.storageClasses.list
  • container.thirdPartyObjects.get
  • container.thirdPartyObjects.list
  • container.thirdPartyResources.get
  • container.thirdPartyResources.list
  • container.tokenReviews.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project

Container Analysis roles

Role Title Description Permissions Lowest resource
roles/containeranalysis.admin Container Analysis Admin Access to all Container Analysis resources.
  • containeranalysis.notes.attachOccurrence
  • containeranalysis.notes.create
  • containeranalysis.notes.delete
  • containeranalysis.notes.get
  • containeranalysis.notes.getIamPolicy
  • containeranalysis.notes.list
  • containeranalysis.notes.setIamPolicy
  • containeranalysis.notes.update
  • containeranalysis.occurrences.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/containeranalysis.notes.attacher Container Analysis Notes Attacher Can attach Container Analysis Occurrences to Notes.
  • containeranalysis.notes.attachOccurrence
  • containeranalysis.notes.get
roles/containeranalysis.notes.editor Container Analysis Notes Editor Can edit Container Analysis Notes.
  • containeranalysis.notes.attachOccurrence
  • containeranalysis.notes.create
  • containeranalysis.notes.delete
  • containeranalysis.notes.get
  • containeranalysis.notes.list
  • containeranalysis.notes.update
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/containeranalysis.notes.occurrences.viewer Container Analysis Occurrences for Notes Viewer
  • containeranalysis.notes.get
  • containeranalysis.notes.listOccurrences
roles/containeranalysis.notes.viewer Container Analysis Notes Viewer Can view Container Analysis Notes.
  • containeranalysis.notes.get
  • containeranalysis.notes.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/containeranalysis.occurrences.editor Container Analysis Occurrences Editor Can edit Container Analysis Occurrences.
  • containeranalysis.occurrences.create
  • containeranalysis.occurrences.delete
  • containeranalysis.occurrences.get
  • containeranalysis.occurrences.list
  • containeranalysis.occurrences.update
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/containeranalysis.occurrences.viewer Container Analysis Occurrences Viewer Can view Container Analysis Occurrences.
  • containeranalysis.occurrences.get
  • containeranalysis.occurrences.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Data Catalog roles

Role Title Description Permissions Lowest resource
roles/datacatalog.admin Data Catalog Admin Full access to all DataCatalog resources
  • bigquery.datasets.get
  • bigquery.datasets.updateTag
  • bigquery.models.getMetadata
  • bigquery.models.updateTag
  • bigquery.tables.get
  • bigquery.tables.updateTag
  • datacatalog.categories.getIamPolicy
  • datacatalog.categories.setIamPolicy
  • datacatalog.entries.*
  • datacatalog.entryGroups.*
  • datacatalog.tagTemplates.*
  • datacatalog.taxonomies.*
  • pubsub.topics.get
  • pubsub.topics.updateTag
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datacatalog.categoryAdmin Policy Tag Admin Beta Manage taxonomies
  • datacatalog.categories.getIamPolicy
  • datacatalog.categories.setIamPolicy
  • datacatalog.taxonomies.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datacatalog.categoryFineGrainedReader Fine-Grained Reader Beta Read access to sub-resources tagged by a policy tag, for example, BigQuery columns
  • datacatalog.categories.fineGrainedGet
roles/datacatalog.entryGroupCreator DataCatalog EntryGroup Creator Can create new entryGroups
  • datacatalog.entryGroups.create
  • datacatalog.entryGroups.get
  • datacatalog.entryGroups.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datacatalog.entryGroupOwner DataCatalog entryGroup Owner Full access to entryGroups
  • datacatalog.entries.*
  • datacatalog.entryGroups.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datacatalog.entryOwner DataCatalog entry Owner Full access to entries
  • datacatalog.entries.*
  • datacatalog.entryGroups.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datacatalog.entryViewer DataCatalog Entry Viewer Read access to entries
  • datacatalog.entries.get
  • datacatalog.entries.list
  • datacatalog.entryGroups.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datacatalog.tagEditor Data Catalog Tag Editor Provides access to modify tags on Google Cloud assets for BigQuery and Pub/Sub
  • bigquery.datasets.updateTag
  • bigquery.models.updateTag
  • bigquery.tables.updateTag
  • datacatalog.entries.updateTag
  • pubsub.topics.updateTag
roles/datacatalog.tagTemplateCreator Data Catalog TagTemplate Creator Access to create new tag templates
  • datacatalog.tagTemplates.create
  • datacatalog.tagTemplates.get
roles/datacatalog.tagTemplateOwner Data Catalog TagTemplate Owner Full access to tag templates
  • datacatalog.tagTemplates.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datacatalog.tagTemplateUser Data Catalog TagTemplate User Access to use templates to tag resources
  • datacatalog.tagTemplates.get
  • datacatalog.tagTemplates.getTag
  • datacatalog.tagTemplates.use
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datacatalog.tagTemplateViewer Data Catalog TagTemplate Viewer Read access to templates and tags created using the templates
  • datacatalog.tagTemplates.get
  • datacatalog.tagTemplates.getTag
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datacatalog.viewer Data Catalog Viewer Provides metadata read access to catalogued Google Cloud assets for BigQuery and Pub/Sub
  • bigquery.datasets.get
  • bigquery.models.getMetadata
  • bigquery.tables.get
  • datacatalog.entries.get
  • datacatalog.entries.list
  • datacatalog.entryGroups.get
  • datacatalog.entryGroups.list
  • datacatalog.tagTemplates.get
  • datacatalog.tagTemplates.getTag
  • datacatalog.taxonomies.get
  • datacatalog.taxonomies.list
  • pubsub.topics.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Dataflow roles

Role Title Description Permissions Lowest resource
roles/dataflow.admin Dataflow Admin Minimal role for creating and managing dataflow jobs.
  • compute.machineTypes.get
  • dataflow.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • storage.buckets.get
  • storage.objects.create
  • storage.objects.get
  • storage.objects.list
roles/dataflow.developer Dataflow Developer Provides the permissions necessary to execute and manipulate Dataflow jobs.
  • dataflow.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/dataflow.viewer Dataflow Viewer Provides read-only access to all Dataflow-related resources.
  • dataflow.jobs.get
  • dataflow.jobs.list
  • dataflow.messages.*
  • dataflow.metrics.*
  • dataflow.snapshots.get
  • dataflow.snapshots.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/dataflow.worker Dataflow Worker Provides the permissions necessary for a Compute Engine service account to execute work units for a Dataflow pipeline.
  • compute.instanceGroupManagers.update
  • compute.instances.delete
  • compute.instances.setDiskAutoDelete
  • dataflow.jobs.get
  • logging.logEntries.create
  • storage.objects.create
  • storage.objects.get
Project

Cloud Data Labeling roles

Role Title Description Permissions Lowest resource
roles/datalabeling.admin DataLabeling Service Admin Beta Full access to all DataLabeling resources
  • datalabeling.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datalabeling.editor DataLabeling Service Editor Beta Editor of all DataLabeling resources
  • datalabeling.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/datalabeling.viewer DataLabeling Service Viewer Beta Viewer of all DataLabeling resources
  • datalabeling.annotateddatasets.get
  • datalabeling.annotateddatasets.list
  • datalabeling.annotationspecsets.get
  • datalabeling.annotationspecsets.list
  • datalabeling.dataitems.*
  • datalabeling.datasets.get
  • datalabeling.datasets.list
  • datalabeling.examples.*
  • datalabeling.instructions.get
  • datalabeling.instructions.list
  • datalabeling.operations.get
  • datalabeling.operations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Dataprep roles

Role Title Description Permissions Lowest resource
roles/dataprep.projects.user Dataprep User Beta Use of Dataprep.
  • dataprep.*
  • resourcemanager.projects.get
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list

Dataproc roles

Role Title Description Permissions Lowest resource
roles/dataproc.admin Dataproc Administrator Full control of Dataproc resources.
  • compute.machineTypes.*
  • compute.networks.get
  • compute.networks.list
  • compute.projects.get
  • compute.regions.*
  • compute.zones.*
  • dataproc.autoscalingPolicies.*
  • dataproc.clusters.*
  • dataproc.jobs.*
  • dataproc.operations.*
  • dataproc.workflowTemplates.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/dataproc.editor Dataproc Editor Provides the permissions necessary for viewing the resources required to manage Dataproc, including machine types, networks, projects, and zones.
  • compute.machineTypes.*
  • compute.networks.get
  • compute.networks.list
  • compute.projects.get
  • compute.regions.*
  • compute.zones.*
  • dataproc.autoscalingPolicies.create
  • dataproc.autoscalingPolicies.delete
  • dataproc.autoscalingPolicies.get
  • dataproc.autoscalingPolicies.list
  • dataproc.autoscalingPolicies.update
  • dataproc.autoscalingPolicies.use
  • dataproc.clusters.create
  • dataproc.clusters.delete
  • dataproc.clusters.get
  • dataproc.clusters.list
  • dataproc.clusters.update
  • dataproc.clusters.use
  • dataproc.jobs.cancel
  • dataproc.jobs.create
  • dataproc.jobs.delete
  • dataproc.jobs.get
  • dataproc.jobs.list
  • dataproc.jobs.update
  • dataproc.operations.delete
  • dataproc.operations.get
  • dataproc.operations.list
  • dataproc.workflowTemplates.create
  • dataproc.workflowTemplates.delete
  • dataproc.workflowTemplates.get
  • dataproc.workflowTemplates.instantiate
  • dataproc.workflowTemplates.instantiateInline
  • dataproc.workflowTemplates.list
  • dataproc.workflowTemplates.update
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/dataproc.viewer Dataproc Viewer Provides read-only access to Dataproc resources.
  • compute.machineTypes.get
  • compute.regions.*
  • compute.zones.*
  • dataproc.autoscalingPolicies.get
  • dataproc.autoscalingPolicies.list
  • dataproc.clusters.get
  • dataproc.clusters.list
  • dataproc.jobs.get
  • dataproc.jobs.list
  • dataproc.operations.get
  • dataproc.operations.list
  • dataproc.workflowTemplates.get
  • dataproc.workflowTemplates.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/dataproc.worker Dataproc Worker Provides worker access to Dataproc resources. Intended for service accounts.
  • dataproc.agents.*
  • dataproc.tasks.*
  • logging.logEntries.create
  • monitoring.metricDescriptors.create
  • monitoring.metricDescriptors.get
  • monitoring.metricDescriptors.list
  • monitoring.monitoredResourceDescriptors.*
  • monitoring.timeSeries.create
  • storage.buckets.get
  • storage.objects.*

Datastore roles

Role Title Description Permissions Lowest resource
roles/datastore.importExportAdmin Cloud Datastore Import Export Admin Provides full access to manage imports and exports.
  • appengine.applications.get
  • datastore.databases.export
  • datastore.databases.import
  • datastore.operations.cancel
  • datastore.operations.get
  • datastore.operations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/datastore.indexAdmin Cloud Datastore Index Admin Provides full access to manage index definitions.
  • appengine.applications.get
  • datastore.indexes.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/datastore.owner Cloud Datastore Owner Provides full access to Datastore resources.
  • appengine.applications.get
  • datastore.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/datastore.user Cloud Datastore User Provides read/write access to data in a Datastore database.
  • appengine.applications.get
  • datastore.databases.get
  • datastore.entities.*
  • datastore.indexes.list
  • datastore.namespaces.get
  • datastore.namespaces.list
  • datastore.statistics.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/datastore.viewer Cloud Datastore Viewer Provides read access to Datastore resources.
  • appengine.applications.get
  • datastore.databases.get
  • datastore.databases.list
  • datastore.entities.get
  • datastore.entities.list
  • datastore.indexes.get
  • datastore.indexes.list
  • datastore.namespaces.get
  • datastore.namespaces.list
  • datastore.statistics.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project

Deployment Manager roles

Role Title Description Permissions Lowest resource
roles/deploymentmanager.editor Deployment Manager Editor Provides the permissions necessary to create and manage deployments.
  • deploymentmanager.compositeTypes.*
  • deploymentmanager.deployments.cancelPreview
  • deploymentmanager.deployments.create
  • deploymentmanager.deployments.delete
  • deploymentmanager.deployments.get
  • deploymentmanager.deployments.list
  • deploymentmanager.deployments.stop
  • deploymentmanager.deployments.update
  • deploymentmanager.manifests.*
  • deploymentmanager.operations.*
  • deploymentmanager.resources.*
  • deploymentmanager.typeProviders.*
  • deploymentmanager.types.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Project
roles/deploymentmanager.typeEditor Deployment Manager Type Editor Provides read and write access to all Type Registry resources.
  • deploymentmanager.compositeTypes.*
  • deploymentmanager.operations.get
  • deploymentmanager.typeProviders.*
  • deploymentmanager.types.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
Project
roles/deploymentmanager.typeViewer Deployment Manager Type Viewer Provides read-only access to all Type Registry resources.
  • deploymentmanager.compositeTypes.get
  • deploymentmanager.compositeTypes.list
  • deploymentmanager.typeProviders.get
  • deploymentmanager.typeProviders.getType
  • deploymentmanager.typeProviders.list
  • deploymentmanager.typeProviders.listTypes
  • deploymentmanager.types.get
  • deploymentmanager.types.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
Project
roles/deploymentmanager.viewer Deployment Manager Viewer Provides read-only access to all Deployment Manager-related resources.
  • deploymentmanager.compositeTypes.get
  • deploymentmanager.compositeTypes.list
  • deploymentmanager.deployments.get
  • deploymentmanager.deployments.list
  • deploymentmanager.manifests.*
  • deploymentmanager.operations.*
  • deploymentmanager.resources.*
  • deploymentmanager.typeProviders.get
  • deploymentmanager.typeProviders.getType
  • deploymentmanager.typeProviders.list
  • deploymentmanager.typeProviders.listTypes
  • deploymentmanager.types.get
  • deploymentmanager.types.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Project

Dialogflow roles

Role Title Description Permissions Lowest resource
roles/dialogflow.admin Dialogflow API Admin Grant to Dialogflow API admins that need full access to Dialogflow-specific resources. Also see Dialogflow access control.
  • dialogflow.*
  • resourcemanager.projects.get
Project
roles/dialogflow.client Dialogflow API Client Grant to Dialogflow API clients that perform Dialogflow-specific edits and detect intent calls using the API. Also see Dialogflow access control.
  • dialogflow.contexts.*
  • dialogflow.sessionEntityTypes.*
  • dialogflow.sessions.*
Project
roles/dialogflow.consoleAgentEditor Dialogflow Console Agent Editor Grant to Dialogflow Console editors that edit existing agents. Also see Dialogflow access control.
  • actions.agentVersions.create
  • dialogflow.*
  • resourcemanager.projects.get
Project
roles/dialogflow.reader Dialogflow API Reader Grant to Dialogflow API clients that perform Dialogflow-specific read-only calls using the API. Also see Dialogflow access control.
  • dialogflow.agents.export
  • dialogflow.agents.get
  • dialogflow.agents.list
  • dialogflow.agents.search
  • dialogflow.contexts.get
  • dialogflow.contexts.list
  • dialogflow.documents.get
  • dialogflow.documents.list
  • dialogflow.entityTypes.get
  • dialogflow.entityTypes.list
  • dialogflow.environments.get
  • dialogflow.environments.list
  • dialogflow.flows.get
  • dialogflow.flows.list
  • dialogflow.fulfillments.get
  • dialogflow.intents.get
  • dialogflow.intents.list
  • dialogflow.knowledgeBases.get
  • dialogflow.knowledgeBases.list
  • dialogflow.operations.*
  • dialogflow.pages.get
  • dialogflow.pages.list
  • dialogflow.sessionEntityTypes.get
  • dialogflow.sessionEntityTypes.list
  • dialogflow.transitionRouteGroups.get
  • dialogflow.transitionRouteGroups.list
  • dialogflow.versions.get
  • dialogflow.versions.list
  • dialogflow.webhooks.get
  • dialogflow.webhooks.list
  • resourcemanager.projects.get
Project

Cloud DLP roles

Role Title Description Permissions Lowest resource
roles/dlp.admin DLP Administrator Administer DLP including jobs and templates.
  • dlp.*
  • serviceusage.services.use
roles/dlp.analyzeRiskTemplatesEditor DLP Analyze Risk Templates Editor Edit DLP analyze risk templates.
  • dlp.analyzeRiskTemplates.*
roles/dlp.analyzeRiskTemplatesReader DLP Analyze Risk Templates Reader Read DLP analyze risk templates.
  • dlp.analyzeRiskTemplates.get
  • dlp.analyzeRiskTemplates.list
roles/dlp.deidentifyTemplatesEditor DLP De-identify Templates Editor Edit DLP de-identify templates.
  • dlp.deidentifyTemplates.*
roles/dlp.deidentifyTemplatesReader DLP De-identify Templates Reader Read DLP de-identify templates.
  • dlp.deidentifyTemplates.get
  • dlp.deidentifyTemplates.list
roles/dlp.inspectFindingsReader DLP Inspect Findings Reader Read DLP stored findings.
  • dlp.inspectFindings.*
roles/dlp.inspectTemplatesEditor DLP Inspect Templates Editor Edit DLP inspect templates.
  • dlp.inspectTemplates.*
roles/dlp.inspectTemplatesReader DLP Inspect Templates Reader Read DLP inspect templates.
  • dlp.inspectTemplates.get
  • dlp.inspectTemplates.list
roles/dlp.jobTriggersEditor DLP Job Triggers Editor Edit job triggers configurations.
  • dlp.jobTriggers.*
roles/dlp.jobTriggersReader DLP Job Triggers Reader Read job triggers.
  • dlp.jobTriggers.get
  • dlp.jobTriggers.list
roles/dlp.jobsEditor DLP Jobs Editor Edit and create jobs
  • dlp.jobs.*
  • dlp.kms.*
roles/dlp.jobsReader DLP Jobs Reader Read jobs
  • dlp.jobs.get
  • dlp.jobs.list
roles/dlp.reader DLP Reader Read DLP entities, such as jobs and templates.
  • dlp.analyzeRiskTemplates.get
  • dlp.analyzeRiskTemplates.list
  • dlp.deidentifyTemplates.get
  • dlp.deidentifyTemplates.list
  • dlp.inspectFindings.*
  • dlp.inspectTemplates.get
  • dlp.inspectTemplates.list
  • dlp.jobTriggers.get
  • dlp.jobTriggers.list
  • dlp.jobs.get
  • dlp.jobs.list
  • dlp.storedInfoTypes.get
  • dlp.storedInfoTypes.list
roles/dlp.storedInfoTypesEditor DLP Stored InfoTypes Editor Edit DLP stored info types.
  • dlp.storedInfoTypes.*
roles/dlp.storedInfoTypesReader DLP Stored InfoTypes Reader Read DLP stored info types.
  • dlp.storedInfoTypes.get
  • dlp.storedInfoTypes.list
roles/dlp.user DLP User Inspect, Redact, and De-identify Content
  • dlp.kms.*
  • serviceusage.services.use

DNS roles

Role Title Description Permissions Lowest resource
roles/dns.admin DNS Administrator Provides read-write access to all Cloud DNS resources.
  • compute.networks.get
  • compute.networks.list
  • dns.changes.*
  • dns.dnsKeys.*
  • dns.managedZoneOperations.*
  • dns.managedZones.*
  • dns.networks.*
  • dns.policies.create
  • dns.policies.delete
  • dns.policies.get
  • dns.policies.list
  • dns.policies.update
  • dns.projects.*
  • dns.resourceRecordSets.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project
roles/dns.peer DNS Peer Access to target networks with DNS peering zones
  • dns.networks.targetWithPeeringZone
roles/dns.reader DNS Reader Provides read-only access to all Cloud DNS resources.
  • compute.networks.get
  • dns.changes.get
  • dns.changes.list
  • dns.dnsKeys.*
  • dns.managedZoneOperations.*
  • dns.managedZones.get
  • dns.managedZones.list
  • dns.policies.get
  • dns.policies.list
  • dns.projects.*
  • dns.resourceRecordSets.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
Project

Endpoints roles

Role Title Description Permissions Lowest resource
roles/endpoints.portalAdmin Endpoints Portal Admin Beta Provides all permissions needed to add, view, and delete custom domains on the Endpoints > Developer Portal page in the Cloud Console. On a portal created for an API, provides the permission to change settings on the Site Wide tab on the Settings page.
  • endpoints.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • servicemanagement.services.get
Project

Error Reporting roles

Role Title Description Permissions Lowest resource
roles/errorreporting.admin Error Reporting Admin Beta Provides full access to Error Reporting data.
  • cloudnotifications.*
  • errorreporting.*
Project
roles/errorreporting.user Error Reporting User Beta Provides the permissions to read and write Error Reporting data, except for sending new error events.
  • cloudnotifications.*
  • errorreporting.applications.*
  • errorreporting.errorEvents.delete
  • errorreporting.errorEvents.list
  • errorreporting.groupMetadata.*
  • errorreporting.groups.*
Project
roles/errorreporting.viewer Error Reporting Viewer Beta Provides read-only access to Error Reporting data.
  • cloudnotifications.*
  • errorreporting.applications.*
  • errorreporting.errorEvents.list
  • errorreporting.groupMetadata.get
  • errorreporting.groups.*
Project
roles/errorreporting.writer Errors Writer Beta Provides the permissions to send error events to Error Reporting.
  • errorreporting.errorEvents.create
Service Account

Cloud Filestore roles

Role Title Description Permissions Lowest resource
roles/file.editor Cloud Filestore Editor Beta Read-write access to Filestore instances and related resources.
  • file.*
roles/file.viewer Cloud Filestore Viewer Beta Read-only access to Filestore instances and related resources.
  • file.backups.get
  • file.backups.list
  • file.instances.get
  • file.instances.list
  • file.locations.*
  • file.operations.get
  • file.operations.list

Firebase roles

Role Title Description Permissions Lowest resource
roles/firebase.admin Firebase Admin Full access to Firebase products.
  • apikeys.keys.get
  • apikeys.keys.list
  • apikeys.keys.lookup
  • appengine.applications.get
  • automl.*
  • clientauthconfig.brands.get
  • clientauthconfig.brands.list
  • clientauthconfig.brands.update
  • clientauthconfig.clients.create
  • clientauthconfig.clients.delete
  • clientauthconfig.clients.get
  • clientauthconfig.clients.list
  • clientauthconfig.clients.update
  • cloudconfig.*
  • cloudfunctions.*
  • cloudmessaging.*
  • cloudnotifications.*
  • cloudtestservice.*
  • cloudtoolresults.*
  • datastore.*
  • errorreporting.groups.*
  • firebase.*
  • firebaseabt.*
  • firebaseanalytics.*
  • firebaseappdistro.*
  • firebaseauth.*
  • firebasecrash.*
  • firebasecrashlytics.*
  • firebasedatabase.*
  • firebasedynamiclinks.*
  • firebaseextensions.*
  • firebasehosting.*
  • firebaseinappmessaging.*
  • firebaseml.*
  • firebasenotifications.*
  • firebaseperformance.*
  • firebasepredictions.*
  • firebaserules.*
  • logging.logEntries.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
  • runtimeconfig.configs.create
  • runtimeconfig.configs.delete
  • runtimeconfig.configs.get
  • runtimeconfig.configs.list
  • runtimeconfig.configs.update
  • runtimeconfig.operations.*
  • runtimeconfig.variables.create
  • runtimeconfig.variables.delete
  • runtimeconfig.variables.get
  • runtimeconfig.variables.list
  • runtimeconfig.variables.update
  • runtimeconfig.variables.watch
  • runtimeconfig.waiters.create
  • runtimeconfig.waiters.delete
  • runtimeconfig.waiters.get
  • runtimeconfig.waiters.list
  • runtimeconfig.waiters.update
  • serviceusage.operations.get
  • serviceusage.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • storage.buckets.*
  • storage.objects.*
roles/firebase.analyticsAdmin Firebase Analytics Admin Full access to Google Analytics for Firebase.
  • cloudnotifications.*
  • firebase.billingPlans.get
  • firebase.clients.get
  • firebase.links.list
  • firebase.projects.get
  • firebaseanalytics.*
  • firebaseextensions.configs.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
roles/firebase.analyticsViewer Firebase Analytics Viewer Read access to Google Analytics for Firebase.
  • cloudnotifications.*
  • firebase.billingPlans.get
  • firebase.clients.get
  • firebase.links.list
  • firebase.projects.get
  • firebaseanalytics.resources.googleAnalyticsReadAndAnalyze
  • firebaseextensions.configs.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
roles/firebase.developAdmin Firebase Develop Admin Full access to Firebase Develop products and Analytics.
  • apikeys.keys.get
  • apikeys.keys.list
  • apikeys.keys.lookup
  • appengine.applications.get
  • automl.*
  • clientauthconfig.brands.get
  • clientauthconfig.brands.list
  • clientauthconfig.brands.update
  • clientauthconfig.clients.get
  • clientauthconfig.clients.list
  • cloudfunctions.*
  • cloudnotifications.*
  • datastore.*
  • errorreporting.groups.*
  • firebase.billingPlans.get
  • firebase.clients.get
  • firebase.links.list
  • firebase.projects.get
  • firebaseanalytics.*
  • firebaseauth.*
  • firebasedatabase.*
  • firebaseextensions.configs.list
  • firebasehosting.*
  • firebaseml.*
  • firebaserules.*
  • logging.logEntries.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
  • runtimeconfig.configs.create
  • runtimeconfig.configs.delete
  • runtimeconfig.configs.get
  • runtimeconfig.configs.list
  • runtimeconfig.configs.update
  • runtimeconfig.operations.*
  • runtimeconfig.variables.create
  • runtimeconfig.variables.delete
  • runtimeconfig.variables.get
  • runtimeconfig.variables.list
  • runtimeconfig.variables.update
  • runtimeconfig.variables.watch
  • runtimeconfig.waiters.create
  • runtimeconfig.waiters.delete
  • runtimeconfig.waiters.get
  • runtimeconfig.waiters.list
  • runtimeconfig.waiters.update
  • serviceusage.operations.get
  • serviceusage.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • storage.buckets.*
  • storage.objects.*
roles/firebase.developViewer Firebase Develop Viewer Read access to Firebase Develop products and Analytics.
  • automl.annotationSpecs.get
  • automl.annotationSpecs.list
  • automl.annotations.list
  • automl.columnSpecs.get
  • automl.columnSpecs.list
  • automl.datasets.get
  • automl.datasets.list
  • automl.examples.get
  • automl.examples.list
  • automl.humanAnnotationTasks.get
  • automl.humanAnnotationTasks.list
  • automl.locations.get
  • automl.locations.list
  • automl.modelEvaluations.get
  • automl.modelEvaluations.list
  • automl.models.get
  • automl.models.list
  • automl.operations.get
  • automl.operations.list
  • automl.tableSpecs.get
  • automl.tableSpecs.list
  • clientauthconfig.brands.get
  • clientauthconfig.brands.list
  • cloudfunctions.functions.get
  • cloudfunctions.functions.list
  • cloudfunctions.locations.*
  • cloudfunctions.operations.*
  • cloudnotifications.*
  • datastore.databases.get
  • datastore.databases.getIamPolicy
  • datastore.databases.list
  • datastore.entities.get
  • datastore.entities.list
  • datastore.indexes.get
  • datastore.indexes.list
  • datastore.namespaces.get
  • datastore.namespaces.getIamPolicy
  • datastore.namespaces.list
  • datastore.statistics.*
  • errorreporting.groups.*
  • firebase.billingPlans.get
  • firebase.clients.get
  • firebase.links.list
  • firebase.projects.get
  • firebaseanalytics.resources.googleAnalyticsReadAndAnalyze
  • firebaseauth.configs.get
  • firebaseauth.users.get
  • firebasedatabase.instances.get
  • firebasedatabase.instances.list
  • firebaseextensions.configs.list
  • firebasehosting.sites.get
  • firebasehosting.sites.list
  • firebaseml.compressionjobs.get
  • firebaseml.compressionjobs.list
  • firebaseml.models.get
  • firebaseml.models.list
  • firebaseml.modelversions.get
  • firebaseml.modelversions.list
  • firebaserules.releases.get
  • firebaserules.releases.list
  • firebaserules.rulesets.get
  • firebaserules.rulesets.list
  • logging.logEntries.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
  • serviceusage.operations.get
  • serviceusage.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • storage.buckets.get
  • storage.buckets.getIamPolicy
  • storage.buckets.list
  • storage.objects.get
  • storage.objects.getIamPolicy
  • storage.objects.list
roles/firebase.growthAdmin Firebase Grow Admin Full access to Firebase Grow products and Analytics.
  • clientauthconfig.clients.get
  • clientauthconfig.clients.list
  • cloudconfig.*
  • cloudmessaging.*
  • cloudnotifications.*
  • firebase.billingPlans.get
  • firebase.clients.get
  • firebase.links.list
  • firebase.projects.get
  • firebaseabt.*
  • firebaseanalytics.*
  • firebasedynamiclinks.*
  • firebaseextensions.configs.list
  • firebaseinappmessaging.*
  • firebasenotifications.*
  • firebasepredictions.*
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
  • serviceusage.operations.get
  • serviceusage.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/firebase.growthViewer Firebase Grow Viewer Read access to Firebase Grow products and Analytics.
  • cloudconfig.configs.get
  • cloudnotifications.*
  • firebase.billingPlans.get
  • firebase.clients.get
  • firebase.links.list
  • firebase.projects.get
  • firebaseabt.experimentresults.*
  • firebaseabt.experiments.get
  • firebaseabt.experiments.list
  • firebaseabt.projectmetadata.*
  • firebaseanalytics.resources.googleAnalyticsReadAndAnalyze
  • firebasedynamiclinks.destinations.list
  • firebasedynamiclinks.domains.get
  • firebasedynamiclinks.domains.list
  • firebasedynamiclinks.links.get
  • firebasedynamiclinks.links.list
  • firebasedynamiclinks.stats.*
  • firebaseextensions.configs.list
  • firebaseinappmessaging.campaigns.get
  • firebaseinappmessaging.campaigns.list
  • firebasenotifications.messages.get
  • firebasenotifications.messages.list
  • firebasepredictions.predictions.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
  • serviceusage.operations.get
  • serviceusage.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/firebase.qualityAdmin Firebase Quality Admin Full access to Firebase Quality products and Analytics.
  • cloudnotifications.*
  • firebase.billingPlans.get
  • firebase.clients.get
  • firebase.links.list
  • firebase.projects.get
  • firebaseanalytics.*
  • firebaseappdistro.*
  • firebasecrash.*
  • firebasecrashlytics.*
  • firebaseextensions.configs.list
  • firebaseperformance.*
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
  • serviceusage.operations.get
  • serviceusage.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/firebase.qualityViewer Firebase Quality Viewer Read access to Firebase Quality products and Analytics.
  • cloudnotifications.*
  • firebase.billingPlans.get
  • firebase.clients.get
  • firebase.links.list
  • firebase.projects.get
  • firebaseanalytics.resources.googleAnalyticsReadAndAnalyze
  • firebaseappdistro.groups.list
  • firebaseappdistro.releases.list
  • firebaseappdistro.testers.list
  • firebasecrash.reports.*
  • firebasecrashlytics.config.get
  • firebasecrashlytics.data.*
  • firebasecrashlytics.issues.get
  • firebasecrashlytics.issues.list
  • firebasecrashlytics.sessions.*
  • firebaseextensions.configs.list
  • firebaseperformance.data.*
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
  • serviceusage.operations.get
  • serviceusage.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
roles/firebase.viewer Firebase Viewer Read-only access to Firebase products.
  • automl.annotationSpecs.get
  • automl.annotationSpecs.list
  • automl.annotations.list
  • automl.columnSpecs.get
  • automl.columnSpecs.list
  • automl.datasets.get
  • automl.datasets.list
  • automl.examples.get
  • automl.examples.list
  • automl.humanAnnotationTasks.get
  • automl.humanAnnotationTasks.list
  • automl.locations.get
  • automl.locations.list
  • automl.modelEvaluations.get
  • automl.modelEvaluations.list
  • automl.models.get
  • automl.models.list
  • automl.operations.get
  • automl.operations.list
  • automl.tableSpecs.get
  • automl.tableSpecs.list
  • clientauthconfig.brands.get
  • clientauthconfig.brands.list
  • cloudconfig.configs.get
  • cloudfunctions.functions.get
  • cloudfunctions.functions.list
  • cloudfunctions.locations.*
  • cloudfunctions.operations.*
  • cloudnotifications.*
  • cloudtestservice.environmentcatalog.*
  • cloudtestservice.matrices.get
  • cloudtoolresults.executions.get
  • cloudtoolresults.executions.list
  • cloudtoolresults.histories.get
  • cloudtoolresults.histories.list
  • cloudtoolresults.settings.get
  • cloudtoolresults.steps.get
  • cloudtoolresults.steps.list
  • datastore.databases.get
  • datastore.databases.getIamPolicy
  • datastore.databases.list
  • datastore.entities.get
  • datastore.entities.list
  • datastore.indexes.get
  • datastore.indexes.list
  • datastore.namespaces.get
  • datastore.namespaces.getIamPolicy
  • datastore.namespaces.list
  • datastore.statistics.*
  • errorreporting.groups.*
  • firebase.billingPlans.get
  • firebase.clients.get
  • firebase.links.list
  • firebase.projects.get
  • firebaseabt.experimentresults.*
  • firebaseabt.experiments.get
  • firebaseabt.experiments.list
  • firebaseabt.projectmetadata.*
  • firebaseanalytics.resources.googleAnalyticsReadAndAnalyze
  • firebaseappdistro.groups.list
  • firebaseappdistro.releases.list
  • firebaseappdistro.testers.list
  • firebaseauth.configs.get
  • firebaseauth.users.get
  • firebasecrash.reports.*
  • firebasecrashlytics.config.get
  • firebasecrashlytics.data.*
  • firebasecrashlytics.issues.get
  • firebasecrashlytics.issues.list
  • firebasecrashlytics.sessions.*
  • firebasedatabase.instances.get
  • firebasedatabase.instances.list
  • firebasedynamiclinks.destinations.list
  • firebasedynamiclinks.domains.get
  • firebasedynamiclinks.domains.list
  • firebasedynamiclinks.links.get
  • firebasedynamiclinks.links.list
  • firebasedynamiclinks.stats.*
  • firebaseextensions.configs.list
  • firebasehosting.sites.get
  • firebasehosting.sites.list
  • firebaseinappmessaging.campaigns.get
  • firebaseinappmessaging.campaigns.list
  • firebaseml.compressionjobs.get
  • firebaseml.compressionjobs.list
  • firebaseml.models.get
  • firebaseml.models.list
  • firebaseml.modelversions.get
  • firebaseml.modelversions.list
  • firebasenotifications.messages.get
  • firebasenotifications.messages.list
  • firebaseperformance.data.*
  • firebasepredictions.predictions.list
  • firebaserules.releases.get
  • firebaserules.releases.list
  • firebaserules.rulesets.get
  • firebaserules.rulesets.list
  • logging.logEntries.list
  • monitoring.timeSeries.list
  • resourcemanager.projects.get
  • resourcemanager.projects.getIamPolicy
  • resourcemanager.projects.list
  • serviceusage.operations.get
  • serviceusage.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • storage.buckets.get
  • storage.buckets.getIamPolicy
  • storage.buckets.list
  • storage.objects.get
  • storage.objects.getIamPolicy
  • storage.objects.list

Firebase Products roles

Role Title Description Permissions Lowest resource
roles/cloudconfig.admin Firebase Remote Config Admin Full access to Firebase Remote Config resources.
  • cloudconfig.*
  • firebase.clients.get
  • firebase.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudconfig.viewer Firebase Remote Config Viewer Read access to Firebase Remote Config resources.
  • cloudconfig.configs.get
  • firebase.clients.get
  • firebase.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/cloudtestservice.testAdmin Firebase Test Lab Admin Full access to all Test Lab features
  • cloudtestservice.*
  • cloudtoolresults.*
  • firebase.billingPlans.get
  • firebase.clients.get
  • firebase.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • storage.buckets.create
  • storage.buckets.get
  • storage.buckets.update
  • storage.objects.create
  • storage.objects.get
  • storage.objects.list
roles/cloudtestservice.testViewer Firebase Test Lab Viewer Read access to Test Lab features
  • cloudtestservice.environmentcatalog.*
  • cloudtestservice.matrices.get
  • cloudtoolresults.executions.get
  • cloudtoolresults.executions.list
  • cloudtoolresults.histories.get
  • cloudtoolresults.histories.list
  • cloudtoolresults.settings.get
  • cloudtoolresults.steps.get
  • cloudtoolresults.steps.list
  • firebase.clients.get
  • firebase.projects.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • storage.objects.get
  • storage.objects.list
roles/firebaseabt.admin Firebase A/B Testing Admin Beta Full read/write access to Firebase A/B Testing resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseabt.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseabt.viewer Firebase A/B Testing Viewer Beta Read-only access to Firebase A/B Testing resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseabt.experimentresults.*
  • firebaseabt.experiments.get
  • firebaseabt.experiments.list
  • firebaseabt.projectmetadata.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseappdistro.admin Firebase App Distribution Admin Beta Full read/write access to Firebase App Distribution resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseappdistro.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseappdistro.viewer Firebase App Distribution Viewer Beta Read-only access to Firebase App Distribution resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseappdistro.groups.list
  • firebaseappdistro.releases.list
  • firebaseappdistro.testers.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseauth.admin Firebase Authentication Admin Full read/write access to Firebase Authentication resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseauth.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseauth.viewer Firebase Authentication Viewer Read-only access to Firebase Authentication resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseauth.configs.get
  • firebaseauth.users.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasecrashlytics.admin Firebase Crashlytics Admin Full read/write access to Firebase Crashlytics resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasecrashlytics.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasecrashlytics.viewer Firebase Crashlytics Viewer Read-only access to Firebase Crashlytics resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasecrashlytics.config.get
  • firebasecrashlytics.data.*
  • firebasecrashlytics.issues.get
  • firebasecrashlytics.issues.list
  • firebasecrashlytics.sessions.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasedatabase.admin Firebase Realtime Database Admin Full read/write access to Firebase Realtime Database resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasedatabase.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasedatabase.viewer Firebase Realtime Database Viewer Read-only access to Firebase Realtime Database resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasedatabase.instances.get
  • firebasedatabase.instances.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasedynamiclinks.admin Firebase Dynamic Links Admin Full read/write access to Firebase Dynamic Links resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasedynamiclinks.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasedynamiclinks.viewer Firebase Dynamic Links Viewer Read-only access to Firebase Dynamic Links resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasedynamiclinks.destinations.list
  • firebasedynamiclinks.domains.get
  • firebasedynamiclinks.domains.list
  • firebasedynamiclinks.links.get
  • firebasedynamiclinks.links.list
  • firebasedynamiclinks.stats.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasehosting.admin Firebase Hosting Admin Full read/write access to Firebase Hosting resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasehosting.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasehosting.viewer Firebase Hosting Viewer Read-only access to Firebase Hosting resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasehosting.sites.get
  • firebasehosting.sites.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseinappmessaging.admin Firebase In-App Messaging Admin Beta Full read/write access to Firebase In-App Messaging resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseinappmessaging.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseinappmessaging.viewer Firebase In-App Messaging Viewer Beta Read-only access to Firebase In-App Messaging resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseinappmessaging.campaigns.get
  • firebaseinappmessaging.campaigns.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseml.admin Firebase ML Kit Admin Beta Full read/write access to Firebase ML Kit resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseml.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseml.viewer Firebase ML Kit Viewer Beta Read-only access to Firebase ML Kit resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseml.compressionjobs.get
  • firebaseml.compressionjobs.list
  • firebaseml.models.get
  • firebaseml.models.list
  • firebaseml.modelversions.get
  • firebaseml.modelversions.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasenotifications.admin Firebase Cloud Messaging Admin Full read/write access to Firebase Cloud Messaging resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasenotifications.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasenotifications.viewer Firebase Cloud Messaging Viewer Read-only access to Firebase Cloud Messaging resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasenotifications.messages.get
  • firebasenotifications.messages.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseperformance.admin Firebase Performance Reporting Admin Full access to firebaseperformance resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseperformance.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaseperformance.viewer Firebase Performance Reporting Viewer Read-only access to firebaseperformance resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebaseperformance.data.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasepredictions.admin Firebase Predictions Admin Full read/write access to Firebase Predictions resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasepredictions.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebasepredictions.viewer Firebase Predictions Viewer Read-only access to Firebase Predictions resources.
  • firebase.clients.get
  • firebase.projects.get
  • firebasepredictions.predictions.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaserules.admin Firebase Rules Admin Full management of Firebase Rules.
  • firebaserules.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/firebaserules.viewer Firebase Rules Viewer Read-only access on all resources with the ability to test Rulesets.
  • firebaserules.releases.get
  • firebaserules.releases.list
  • firebaserules.rulesets.get
  • firebaserules.rulesets.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Cloud Game Services roles

Role Title Description Permissions Lowest resource
roles/gameservices.admin Game Services API Admin Full access to Game Services API and related resources.
  • gameservices.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/gameservices.viewer Game Services API Viewer Read-only access to Game Services API and related resources.
  • gameservices.gameServerClusters.get
  • gameservices.gameServerClusters.list
  • gameservices.gameServerConfigs.get
  • gameservices.gameServerConfigs.list
  • gameservices.gameServerDeployments.get
  • gameservices.gameServerDeployments.list
  • gameservices.locations.*
  • gameservices.operations.get
  • gameservices.operations.list
  • gameservices.realms.get
  • gameservices.realms.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Genomics roles

Role Title Description Permissions Lowest resource
roles/genomics.admin Genomics Admin Full access to genomics datasets and operations.
  • genomics.*
roles/genomics.editor Genomics Editor Access to read and edit genomics datasets and operations.
  • genomics.datasets.create
  • genomics.datasets.delete
  • genomics.datasets.get
  • genomics.datasets.list
  • genomics.datasets.update
  • genomics.operations.*
roles/genomics.pipelinesRunner Genomics Pipelines Runner Full access to operate on genomics pipelines.
  • genomics.operations.*
roles/genomics.viewer Genomics Viewer Access to view genomics datasets and operations.
  • genomics.datasets.get
  • genomics.datasets.list
  • genomics.operations.get
  • genomics.operations.list

GKE Hub roles

Role Title Description Permissions Lowest resource
roles/gkehub.admin GKE Hub Admin Full access to GKE Hubs and related resources.
  • gkehub.features.*
  • gkehub.locations.*
  • gkehub.memberships.*
  • gkehub.operations.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/gkehub.connect GKE Hub Connection Agent Ability to set up GKE Connect between external clusters and Google.
  • gkehub.endpoints.*
roles/gkehub.gatewayAdmin Connect Gateway Admin Full access to Connect Gateway.
  • gkehub.gateway.*
roles/gkehub.viewer GKE Hub Viewer Read-only access to GKE Hubs and related resources.
  • gkehub.features.get
  • gkehub.features.getIamPolicy
  • gkehub.features.list
  • gkehub.gateway.get
  • gkehub.gateway.getIamPolicy
  • gkehub.locations.*
  • gkehub.memberships.generateConnectManifest
  • gkehub.memberships.get
  • gkehub.memberships.getIamPolicy
  • gkehub.memberships.list
  • gkehub.operations.get
  • gkehub.operations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Cloud Healthcare roles

Role Title Description Permissions Lowest resource
roles/healthcare.annotationEditor Healthcare Annotation Editor Create, delete, update, read and list annotations.
  • healthcare.annotationStores.get
  • healthcare.annotationStores.list
  • healthcare.annotations.*
  • healthcare.datasets.get
  • healthcare.datasets.list
  • healthcare.locations.*
  • healthcare.operations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/healthcare.annotationReader Healthcare Annotation Reader Read and list annotations in an Annotation store.
  • healthcare.annotationStores.get
  • healthcare.annotationStores.list
  • healthcare.annotations.get
  • healthcare.annotations.list
  • healthcare.datasets.get
  • healthcare.datasets.list
  • healthcare.locations.*
  • healthcare.operations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/healthcare.annotationStoreAdmin Healthcare Annotation Administrator Administer Annotation stores.
  • healthcare.annotationStores.*
  • healthcare.datasets.get
  • healthcare.datasets.list
  • healthcare.locations.*
  • healthcare.operations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/healthcare.annotationStoreViewer Healthcare Annotation Store Viewer List Annotation Stores in a dataset.
  • healthcare.annotationStores.get
  • healthcare.annotationStores.list
  • healthcare.datasets.get
  • healthcare.datasets.list
  • healthcare.locations.*
  • healthcare.operations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/healthcare.datasetAdmin Healthcare Dataset Administrator Administer Healthcare Datasets.
  • healthcare.datasets.*
  • healthcare.locations.*
  • healthcare.operations.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/healthcare.datasetViewer Healthcare Dataset Viewer List the Healthcare Datasets in a project.
  • healthcare.datasets.get
  • healthcare.datasets.list
  • healthcare.locations.*
  • healthcare.operations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/healthcare.dicomEditor Healthcare DICOM Editor Edit DICOM images individually and in bulk.
  • healthcare.datasets.get
  • healthcare.datasets.list
  • healthcare.dicomStores.dicomWebDelete
  • healthcare.dicomStores.dicomWebRead
  • healthcare.dicomStores.dicomWebWrite
  • healthcare.dicomStores.export
  • healthcare.dicomStores.get
  • healthcare.dicomStores.import
  • healthcare.dicomStores.list
  • healthcare.locations.*
  • healthcare.operations.cancel
  • healthcare.operations.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/healthcare.dicomStoreAdmin Healthcare DICOM Store Administrator Administer DICOM stores.
  • healthcare.datasets.get
  • healthcare.datasets.list
  • healthcare.dicomStores.create
  • healthcare.dicomStores.deidentify
  • healthcare.dicomStores.delete