Ruoli e autorizzazioni IAM di BigQuery

Questo documento fornisce informazioni su ruoli e autorizzazioni di Identity and Access Management (IAM) per BigQuery. IAM ti consente di concedere l'accesso granulare a determinate risorse BigQuery e aiuta a impedire l'accesso ad altre risorse. IAM ti consente di applicare il principio di sicurezza del privilegio minimo, che afferma che nessuno deve disporre di più autorizzazioni di quelle di cui ha effettivamente bisogno.

Quando un'entità (un utente, un gruppo o un account di servizio) chiama un'API Google Cloud, deve disporre delle autorizzazioni IAM appropriate per utilizzare la risorsa. Per concedere a un'entità le autorizzazioni richieste, devi concederle un ruolo IAM.

Questo documento descrive come utilizzare i ruoli IAM predefiniti e personalizzati per consentire ai principali di accedere alle risorse BigQuery.

Per familiarizzare con la gestione dell'accesso in Google Cloud in generale, consulta la panoramica di IAM.

Tipi di ruoli IAM

Un ruolo è una raccolta di autorizzazioni. Puoi utilizzare i seguenti tipi di ruoli in IAM per fornire l'accesso alle risorse BigQuery:

  • I ruoli predefiniti sono gestiti da Google Cloud e supportano i casi d'uso comuni e i pattern di controllo dell'accesso.
  • I ruoli personalizzati forniscono accesso in base a un elenco di autorizzazioni specificato dall'utente.

Per determinare se una o più autorizzazioni sono incluse in un ruolo, puoi utilizzare uno tra i seguenti metodi:

Quando assegni più tipi di ruoli a un utente, le autorizzazioni concesse sono la combinazione delle autorizzazioni di ciascun ruolo.

Per ulteriori informazioni sull'utilizzo di IAM per accedere alle risorse, consulta Concedere, modificare e revocare l'accesso alle risorse nella documentazione di IAM.

Per informazioni sulla creazione di ruoli personalizzati, consulta Creare e gestire i ruoli personalizzati nella documentazione IAM.

Ruoli IAM in BigQuery

Le autorizzazioni non vengono assegnate direttamente a utenti, gruppi o account di servizio. Agli utenti, ai gruppi o agli account di servizio viene invece concesso l'accesso a uno o più ruoli predefiniti o personalizzati per concedergli le autorizzazioni per eseguire azioni sulle risorse.

Puoi concedere l'accesso ai seguenti livelli di risorse BigQuery:

  • Organizzazioni, cartelle o progetti
  • Connessioni
  • Set di dati
  • Tabelle o visualizzazioni
  • Tag di criteri, criteri di accesso alle righe o criteri dei dati BigQuery

Ruoli applicati a livello di organizzazione o progetto Google Cloud

Quando assegni i ruoli a livello di organizzazione e progetto, fornisci l'autorizzazione per eseguire job BigQuery o per accedere a tutte le risorse BigQuery di un progetto.

Ruoli applicati a livello di set di dati

Puoi assegnare i ruoli a livello di set di dati per fornire l'accesso a un set di dati specifico, senza fornire l'accesso completo alle risorse del progetto. Nella gerarchia delle risorse IAM, i set di dati BigQuery sono risorse secondarie dei progetti. Per ulteriori informazioni sull'assegnazione dei ruoli a livello di set di dati, consulta Controllare l'accesso ai set di dati.

Ruoli applicati alle singole risorse all'interno dei set di dati

Puoi assegnare i ruoli singolarmente a determinati tipi di risorse all'interno dei set di dati, senza fornire l'accesso completo alle risorse del set di dati.

I ruoli possono essere applicati a singole risorse dei seguenti tipi:

  • tabelle
  • autorizzate

I ruoli non possono essere applicati a singole risorse dei seguenti tipi:

  • routines
  • modelli

Per ulteriori informazioni sull'assegnazione dei ruoli a livello di tabella o vista, consulta Controllare l'accesso a tabelle o viste.

Ruoli IAM predefiniti di BigQuery

La tabella seguente elenca i ruoli IAM BigQuery predefiniti con un elenco corrispondente di tutte le autorizzazioni incluse in ciascun ruolo. Tieni presente che ogni autorizzazione è applicabile a un determinato tipo di risorsa.

Role Permissions

(roles/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.

Lowest-level resources where you can grant this role:

  • Datasets
  • Row access policies
  • Tables
  • Views

bigquery.bireservations.*

  • bigquery.bireservations.get
  • bigquery.bireservations.update

bigquery.capacityCommitments.*

  • bigquery.capacityCommitments.create
  • bigquery.capacityCommitments.delete
  • bigquery.capacityCommitments.get
  • bigquery.capacityCommitments.list
  • bigquery.capacityCommitments.update

bigquery.config.*

  • bigquery.config.get
  • bigquery.config.update

bigquery.connections.*

  • bigquery.connections.create
  • bigquery.connections.delegate
  • bigquery.connections.delete
  • bigquery.connections.get
  • bigquery.connections.getIamPolicy
  • bigquery.connections.list
  • bigquery.connections.setIamPolicy
  • bigquery.connections.update
  • bigquery.connections.updateTag
  • bigquery.connections.use

bigquery.dataPolicies.create

bigquery.dataPolicies.delete

bigquery.dataPolicies.get

bigquery.dataPolicies.getIamPolicy

bigquery.dataPolicies.list

bigquery.dataPolicies.setIamPolicy

bigquery.dataPolicies.update

bigquery.datasets.*

  • bigquery.datasets.create
  • bigquery.datasets.createTagBinding
  • bigquery.datasets.delete
  • bigquery.datasets.deleteTagBinding
  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.datasets.link
  • bigquery.datasets.listEffectiveTags
  • bigquery.datasets.listSharedDatasetUsage
  • bigquery.datasets.listTagBindings
  • bigquery.datasets.setIamPolicy
  • bigquery.datasets.update
  • bigquery.datasets.updateTag

bigquery.jobs.*

  • bigquery.jobs.create
  • bigquery.jobs.delete
  • bigquery.jobs.get
  • bigquery.jobs.list
  • bigquery.jobs.listAll
  • bigquery.jobs.listExecutionMetadata
  • bigquery.jobs.update

bigquery.models.*

  • bigquery.models.create
  • bigquery.models.delete
  • bigquery.models.export
  • bigquery.models.getData
  • bigquery.models.getMetadata
  • bigquery.models.list
  • bigquery.models.updateData
  • bigquery.models.updateMetadata
  • bigquery.models.updateTag

bigquery.readsessions.*

  • bigquery.readsessions.create
  • bigquery.readsessions.getData
  • bigquery.readsessions.update

bigquery.reservationAssignments.*

  • bigquery.reservationAssignments.create
  • bigquery.reservationAssignments.delete
  • bigquery.reservationAssignments.list
  • bigquery.reservationAssignments.search

bigquery.reservations.*

  • bigquery.reservations.create
  • bigquery.reservations.delete
  • bigquery.reservations.get
  • bigquery.reservations.list
  • bigquery.reservations.update

bigquery.routines.*

  • bigquery.routines.create
  • bigquery.routines.delete
  • bigquery.routines.get
  • bigquery.routines.list
  • bigquery.routines.update
  • bigquery.routines.updateTag

bigquery.rowAccessPolicies.create

bigquery.rowAccessPolicies.delete

bigquery.rowAccessPolicies.getIamPolicy

bigquery.rowAccessPolicies.list

bigquery.rowAccessPolicies.overrideTimeTravelRestrictions

bigquery.rowAccessPolicies.setIamPolicy

bigquery.rowAccessPolicies.update

bigquery.savedqueries.*

  • bigquery.savedqueries.create
  • bigquery.savedqueries.delete
  • bigquery.savedqueries.get
  • bigquery.savedqueries.list
  • bigquery.savedqueries.update

bigquery.tables.*

  • bigquery.tables.create
  • bigquery.tables.createIndex
  • bigquery.tables.createSnapshot
  • bigquery.tables.createTagBinding
  • bigquery.tables.delete
  • bigquery.tables.deleteIndex
  • bigquery.tables.deleteSnapshot
  • bigquery.tables.deleteTagBinding
  • bigquery.tables.export
  • bigquery.tables.get
  • bigquery.tables.getData
  • bigquery.tables.getIamPolicy
  • bigquery.tables.list
  • bigquery.tables.listEffectiveTags
  • bigquery.tables.listTagBindings
  • bigquery.tables.replicateData
  • bigquery.tables.restoreSnapshot
  • bigquery.tables.setCategory
  • bigquery.tables.setColumnDataPolicy
  • bigquery.tables.setIamPolicy
  • bigquery.tables.update
  • bigquery.tables.updateData
  • bigquery.tables.updateTag

bigquery.transfers.*

  • bigquery.transfers.get
  • bigquery.transfers.update

bigquerymigration.translation.translate

dataform.*

  • dataform.compilationResults.create
  • dataform.compilationResults.get
  • dataform.compilationResults.list
  • dataform.compilationResults.query
  • dataform.config.get
  • dataform.config.update
  • dataform.locations.get
  • dataform.locations.list
  • dataform.releaseConfigs.create
  • dataform.releaseConfigs.delete
  • dataform.releaseConfigs.get
  • dataform.releaseConfigs.list
  • dataform.releaseConfigs.update
  • dataform.repositories.commit
  • dataform.repositories.computeAccessTokenStatus
  • dataform.repositories.create
  • dataform.repositories.delete
  • dataform.repositories.fetchHistory
  • dataform.repositories.fetchRemoteBranches
  • dataform.repositories.get
  • dataform.repositories.getIamPolicy
  • dataform.repositories.list
  • dataform.repositories.queryDirectoryContents
  • dataform.repositories.readFile
  • dataform.repositories.setIamPolicy
  • dataform.repositories.update
  • dataform.workflowConfigs.create
  • dataform.workflowConfigs.delete
  • dataform.workflowConfigs.get
  • dataform.workflowConfigs.list
  • dataform.workflowConfigs.update
  • dataform.workflowInvocations.cancel
  • dataform.workflowInvocations.create
  • dataform.workflowInvocations.delete
  • dataform.workflowInvocations.get
  • dataform.workflowInvocations.list
  • dataform.workflowInvocations.query
  • dataform.workspaces.commit
  • dataform.workspaces.create
  • dataform.workspaces.delete
  • dataform.workspaces.fetchFileDiff
  • dataform.workspaces.fetchFileGitStatuses
  • dataform.workspaces.fetchGitAheadBehind
  • dataform.workspaces.get
  • dataform.workspaces.getIamPolicy
  • dataform.workspaces.installNpmPackages
  • dataform.workspaces.list
  • dataform.workspaces.makeDirectory
  • dataform.workspaces.moveDirectory
  • dataform.workspaces.moveFile
  • dataform.workspaces.pull
  • dataform.workspaces.push
  • dataform.workspaces.queryDirectoryContents
  • dataform.workspaces.readFile
  • dataform.workspaces.removeDirectory
  • dataform.workspaces.removeFile
  • dataform.workspaces.reset
  • dataform.workspaces.searchFiles
  • dataform.workspaces.setIamPolicy
  • dataform.workspaces.writeFile

dataplex.projects.search

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.connectionAdmin)

bigquery.connections.*

  • bigquery.connections.create
  • bigquery.connections.delegate
  • bigquery.connections.delete
  • bigquery.connections.get
  • bigquery.connections.getIamPolicy
  • bigquery.connections.list
  • bigquery.connections.setIamPolicy
  • bigquery.connections.update
  • bigquery.connections.updateTag
  • bigquery.connections.use

(roles/bigquery.connectionUser)

bigquery.connections.get

bigquery.connections.getIamPolicy

bigquery.connections.list

bigquery.connections.use

(roles/bigquery.dataEditor)

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.

Lowest-level resources where you can grant this role:

  • Table
  • View

bigquery.config.get

bigquery.datasets.create

bigquery.datasets.get

bigquery.datasets.getIamPolicy

bigquery.datasets.updateTag

bigquery.models.*

  • bigquery.models.create
  • bigquery.models.delete
  • bigquery.models.export
  • bigquery.models.getData
  • bigquery.models.getMetadata
  • bigquery.models.list
  • bigquery.models.updateData
  • bigquery.models.updateMetadata
  • bigquery.models.updateTag

bigquery.routines.*

  • bigquery.routines.create
  • bigquery.routines.delete
  • bigquery.routines.get
  • bigquery.routines.list
  • bigquery.routines.update
  • bigquery.routines.updateTag

bigquery.tables.create

bigquery.tables.createIndex

bigquery.tables.createSnapshot

bigquery.tables.delete

bigquery.tables.deleteIndex

bigquery.tables.export

bigquery.tables.get

bigquery.tables.getData

bigquery.tables.getIamPolicy

bigquery.tables.list

bigquery.tables.replicateData

bigquery.tables.restoreSnapshot

bigquery.tables.update

bigquery.tables.updateData

bigquery.tables.updateTag

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.dataOwner)

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.

Lowest-level resources where you can grant this role:

  • Table
  • View

bigquery.config.get

bigquery.dataPolicies.create

bigquery.dataPolicies.delete

bigquery.dataPolicies.get

bigquery.dataPolicies.getIamPolicy

bigquery.dataPolicies.list

bigquery.dataPolicies.setIamPolicy

bigquery.dataPolicies.update

bigquery.datasets.*

  • bigquery.datasets.create
  • bigquery.datasets.createTagBinding
  • bigquery.datasets.delete
  • bigquery.datasets.deleteTagBinding
  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.datasets.link
  • bigquery.datasets.listEffectiveTags
  • bigquery.datasets.listSharedDatasetUsage
  • bigquery.datasets.listTagBindings
  • bigquery.datasets.setIamPolicy
  • bigquery.datasets.update
  • bigquery.datasets.updateTag

bigquery.models.*

  • bigquery.models.create
  • bigquery.models.delete
  • bigquery.models.export
  • bigquery.models.getData
  • bigquery.models.getMetadata
  • bigquery.models.list
  • bigquery.models.updateData
  • bigquery.models.updateMetadata
  • bigquery.models.updateTag

bigquery.routines.*

  • bigquery.routines.create
  • bigquery.routines.delete
  • bigquery.routines.get
  • bigquery.routines.list
  • bigquery.routines.update
  • bigquery.routines.updateTag

bigquery.rowAccessPolicies.create

bigquery.rowAccessPolicies.delete

bigquery.rowAccessPolicies.getIamPolicy

bigquery.rowAccessPolicies.list

bigquery.rowAccessPolicies.setIamPolicy

bigquery.rowAccessPolicies.update

bigquery.tables.*

  • bigquery.tables.create
  • bigquery.tables.createIndex
  • bigquery.tables.createSnapshot
  • bigquery.tables.createTagBinding
  • bigquery.tables.delete
  • bigquery.tables.deleteIndex
  • bigquery.tables.deleteSnapshot
  • bigquery.tables.deleteTagBinding
  • bigquery.tables.export
  • bigquery.tables.get
  • bigquery.tables.getData
  • bigquery.tables.getIamPolicy
  • bigquery.tables.list
  • bigquery.tables.listEffectiveTags
  • bigquery.tables.listTagBindings
  • bigquery.tables.replicateData
  • bigquery.tables.restoreSnapshot
  • bigquery.tables.setCategory
  • bigquery.tables.setColumnDataPolicy
  • bigquery.tables.setIamPolicy
  • bigquery.tables.update
  • bigquery.tables.updateData
  • bigquery.tables.updateTag

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.dataViewer)

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 list all of the resources in the dataset (such as tables, views, snapshots, models, and routines) and to read their data and metadata with applicable APIs and in queries.

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.

Lowest-level resources where you can grant this role:

  • Table
  • View

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.createSnapshot

bigquery.tables.export

bigquery.tables.get

bigquery.tables.getData

bigquery.tables.getIamPolicy

bigquery.tables.list

bigquery.tables.replicateData

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.filteredDataViewer)

Access to view filtered table data defined by a row access policy

bigquery.rowAccessPolicies.getFilteredData

(roles/bigquery.jobUser)

Provides permissions to run jobs, including queries, within the project.

Lowest-level resources where you can grant this role:

  • Project

bigquery.config.get

bigquery.jobs.create

dataform.locations.*

  • dataform.locations.get
  • dataform.locations.list

dataform.repositories.create

dataform.repositories.list

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.metadataViewer)

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.

Lowest-level resources where you can grant this role:

  • Table
  • View

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

dataplex.projects.search

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.readSessionUser)

Provides the ability to create and use read sessions.

Lowest-level resources where you can grant this role:

  • Project

bigquery.readsessions.*

  • bigquery.readsessions.create
  • bigquery.readsessions.getData
  • bigquery.readsessions.update

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.resourceAdmin)

Administers BigQuery workloads, including slot assignments, commitments, and reservations.

bigquery.bireservations.*

  • bigquery.bireservations.get
  • bigquery.bireservations.update

bigquery.capacityCommitments.*

  • bigquery.capacityCommitments.create
  • bigquery.capacityCommitments.delete
  • bigquery.capacityCommitments.get
  • bigquery.capacityCommitments.list
  • bigquery.capacityCommitments.update

bigquery.jobs.get

bigquery.jobs.list

bigquery.jobs.listAll

bigquery.jobs.listExecutionMetadata

bigquery.reservationAssignments.*

  • bigquery.reservationAssignments.create
  • bigquery.reservationAssignments.delete
  • bigquery.reservationAssignments.list
  • bigquery.reservationAssignments.search

bigquery.reservations.*

  • bigquery.reservations.create
  • bigquery.reservations.delete
  • bigquery.reservations.get
  • bigquery.reservations.list
  • bigquery.reservations.update

recommender.bigqueryCapacityCommitmentsInsights.*

  • recommender.bigqueryCapacityCommitmentsInsights.get
  • recommender.bigqueryCapacityCommitmentsInsights.list
  • recommender.bigqueryCapacityCommitmentsInsights.update

recommender.bigqueryCapacityCommitmentsRecommendations.*

  • recommender.bigqueryCapacityCommitmentsRecommendations.get
  • recommender.bigqueryCapacityCommitmentsRecommendations.list
  • recommender.bigqueryCapacityCommitmentsRecommendations.update

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.resourceEditor)

Manages BigQuery workloads, but is unable to create or modify slot commitments.

bigquery.bireservations.get

bigquery.capacityCommitments.get

bigquery.capacityCommitments.list

bigquery.jobs.get

bigquery.jobs.list

bigquery.jobs.listAll

bigquery.jobs.listExecutionMetadata

bigquery.reservationAssignments.*

  • bigquery.reservationAssignments.create
  • bigquery.reservationAssignments.delete
  • bigquery.reservationAssignments.list
  • bigquery.reservationAssignments.search

bigquery.reservations.*

  • bigquery.reservations.create
  • bigquery.reservations.delete
  • bigquery.reservations.get
  • bigquery.reservations.list
  • bigquery.reservations.update

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.resourceViewer)

Can view BigQuery workloads, but cannot create or modify slot reservations or commitments.

bigquery.bireservations.get

bigquery.capacityCommitments.get

bigquery.capacityCommitments.list

bigquery.jobs.get

bigquery.jobs.list

bigquery.jobs.listAll

bigquery.jobs.listExecutionMetadata

bigquery.reservationAssignments.list

bigquery.reservationAssignments.search

bigquery.reservations.get

bigquery.reservations.list

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.studioAdmin)

Combination role of BigQuery Admin, Dataform Admin, and Notebook Runtime Admin.

aiplatform.notebookRuntimeTemplates.*

  • aiplatform.notebookRuntimeTemplates.apply
  • aiplatform.notebookRuntimeTemplates.create
  • aiplatform.notebookRuntimeTemplates.delete
  • aiplatform.notebookRuntimeTemplates.get
  • aiplatform.notebookRuntimeTemplates.getIamPolicy
  • aiplatform.notebookRuntimeTemplates.list
  • aiplatform.notebookRuntimeTemplates.setIamPolicy
  • aiplatform.notebookRuntimeTemplates.update

aiplatform.notebookRuntimes.*

  • aiplatform.notebookRuntimes.assign
  • aiplatform.notebookRuntimes.delete
  • aiplatform.notebookRuntimes.get
  • aiplatform.notebookRuntimes.list
  • aiplatform.notebookRuntimes.start
  • aiplatform.notebookRuntimes.update
  • aiplatform.notebookRuntimes.upgrade

aiplatform.operations.list

bigquery.bireservations.*

  • bigquery.bireservations.get
  • bigquery.bireservations.update

bigquery.capacityCommitments.*

  • bigquery.capacityCommitments.create
  • bigquery.capacityCommitments.delete
  • bigquery.capacityCommitments.get
  • bigquery.capacityCommitments.list
  • bigquery.capacityCommitments.update

bigquery.config.*

  • bigquery.config.get
  • bigquery.config.update

bigquery.connections.*

  • bigquery.connections.create
  • bigquery.connections.delegate
  • bigquery.connections.delete
  • bigquery.connections.get
  • bigquery.connections.getIamPolicy
  • bigquery.connections.list
  • bigquery.connections.setIamPolicy
  • bigquery.connections.update
  • bigquery.connections.updateTag
  • bigquery.connections.use

bigquery.dataPolicies.create

bigquery.dataPolicies.delete

bigquery.dataPolicies.get

bigquery.dataPolicies.getIamPolicy

bigquery.dataPolicies.list

bigquery.dataPolicies.setIamPolicy

bigquery.dataPolicies.update

bigquery.datasets.*

  • bigquery.datasets.create
  • bigquery.datasets.createTagBinding
  • bigquery.datasets.delete
  • bigquery.datasets.deleteTagBinding
  • bigquery.datasets.get
  • bigquery.datasets.getIamPolicy
  • bigquery.datasets.link
  • bigquery.datasets.listEffectiveTags
  • bigquery.datasets.listSharedDatasetUsage
  • bigquery.datasets.listTagBindings
  • bigquery.datasets.setIamPolicy
  • bigquery.datasets.update
  • bigquery.datasets.updateTag

bigquery.jobs.*

  • bigquery.jobs.create
  • bigquery.jobs.delete
  • bigquery.jobs.get
  • bigquery.jobs.list
  • bigquery.jobs.listAll
  • bigquery.jobs.listExecutionMetadata
  • bigquery.jobs.update

bigquery.models.*

  • bigquery.models.create
  • bigquery.models.delete
  • bigquery.models.export
  • bigquery.models.getData
  • bigquery.models.getMetadata
  • bigquery.models.list
  • bigquery.models.updateData
  • bigquery.models.updateMetadata
  • bigquery.models.updateTag

bigquery.readsessions.*

  • bigquery.readsessions.create
  • bigquery.readsessions.getData
  • bigquery.readsessions.update

bigquery.reservationAssignments.*

  • bigquery.reservationAssignments.create
  • bigquery.reservationAssignments.delete
  • bigquery.reservationAssignments.list
  • bigquery.reservationAssignments.search

bigquery.reservations.*

  • bigquery.reservations.create
  • bigquery.reservations.delete
  • bigquery.reservations.get
  • bigquery.reservations.list
  • bigquery.reservations.update

bigquery.routines.*

  • bigquery.routines.create
  • bigquery.routines.delete
  • bigquery.routines.get
  • bigquery.routines.list
  • bigquery.routines.update
  • bigquery.routines.updateTag

bigquery.rowAccessPolicies.create

bigquery.rowAccessPolicies.delete

bigquery.rowAccessPolicies.getIamPolicy

bigquery.rowAccessPolicies.list

bigquery.rowAccessPolicies.overrideTimeTravelRestrictions

bigquery.rowAccessPolicies.setIamPolicy

bigquery.rowAccessPolicies.update

bigquery.savedqueries.*

  • bigquery.savedqueries.create
  • bigquery.savedqueries.delete
  • bigquery.savedqueries.get
  • bigquery.savedqueries.list
  • bigquery.savedqueries.update

bigquery.tables.*

  • bigquery.tables.create
  • bigquery.tables.createIndex
  • bigquery.tables.createSnapshot
  • bigquery.tables.createTagBinding
  • bigquery.tables.delete
  • bigquery.tables.deleteIndex
  • bigquery.tables.deleteSnapshot
  • bigquery.tables.deleteTagBinding
  • bigquery.tables.export
  • bigquery.tables.get
  • bigquery.tables.getData
  • bigquery.tables.getIamPolicy
  • bigquery.tables.list
  • bigquery.tables.listEffectiveTags
  • bigquery.tables.listTagBindings
  • bigquery.tables.replicateData
  • bigquery.tables.restoreSnapshot
  • bigquery.tables.setCategory
  • bigquery.tables.setColumnDataPolicy
  • bigquery.tables.setIamPolicy
  • bigquery.tables.update
  • bigquery.tables.updateData
  • bigquery.tables.updateTag

bigquery.transfers.*

  • bigquery.transfers.get
  • bigquery.transfers.update

bigquerymigration.translation.translate

compute.reservations.get

compute.reservations.list

dataform.*

  • dataform.compilationResults.create
  • dataform.compilationResults.get
  • dataform.compilationResults.list
  • dataform.compilationResults.query
  • dataform.config.get
  • dataform.config.update
  • dataform.locations.get
  • dataform.locations.list
  • dataform.releaseConfigs.create
  • dataform.releaseConfigs.delete
  • dataform.releaseConfigs.get
  • dataform.releaseConfigs.list
  • dataform.releaseConfigs.update
  • dataform.repositories.commit
  • dataform.repositories.computeAccessTokenStatus
  • dataform.repositories.create
  • dataform.repositories.delete
  • dataform.repositories.fetchHistory
  • dataform.repositories.fetchRemoteBranches
  • dataform.repositories.get
  • dataform.repositories.getIamPolicy
  • dataform.repositories.list
  • dataform.repositories.queryDirectoryContents
  • dataform.repositories.readFile
  • dataform.repositories.setIamPolicy
  • dataform.repositories.update
  • dataform.workflowConfigs.create
  • dataform.workflowConfigs.delete
  • dataform.workflowConfigs.get
  • dataform.workflowConfigs.list
  • dataform.workflowConfigs.update
  • dataform.workflowInvocations.cancel
  • dataform.workflowInvocations.create
  • dataform.workflowInvocations.delete
  • dataform.workflowInvocations.get
  • dataform.workflowInvocations.list
  • dataform.workflowInvocations.query
  • dataform.workspaces.commit
  • dataform.workspaces.create
  • dataform.workspaces.delete
  • dataform.workspaces.fetchFileDiff
  • dataform.workspaces.fetchFileGitStatuses
  • dataform.workspaces.fetchGitAheadBehind
  • dataform.workspaces.get
  • dataform.workspaces.getIamPolicy
  • dataform.workspaces.installNpmPackages
  • dataform.workspaces.list
  • dataform.workspaces.makeDirectory
  • dataform.workspaces.moveDirectory
  • dataform.workspaces.moveFile
  • dataform.workspaces.pull
  • dataform.workspaces.push
  • dataform.workspaces.queryDirectoryContents
  • dataform.workspaces.readFile
  • dataform.workspaces.removeDirectory
  • dataform.workspaces.removeFile
  • dataform.workspaces.reset
  • dataform.workspaces.searchFiles
  • dataform.workspaces.setIamPolicy
  • dataform.workspaces.writeFile

dataplex.projects.search

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.studioUser)

Combination role of BigQuery Job User, BigQuery Read Session User, Dataform Code Creator, and Notebook Runtime User.

aiplatform.notebookRuntimeTemplates.apply

aiplatform.notebookRuntimeTemplates.get

aiplatform.notebookRuntimeTemplates.getIamPolicy

aiplatform.notebookRuntimeTemplates.list

aiplatform.notebookRuntimes.assign

aiplatform.notebookRuntimes.get

aiplatform.notebookRuntimes.list

aiplatform.operations.list

bigquery.config.get

bigquery.jobs.create

bigquery.readsessions.*

  • bigquery.readsessions.create
  • bigquery.readsessions.getData
  • bigquery.readsessions.update

dataform.locations.*

  • dataform.locations.get
  • dataform.locations.list

dataform.repositories.create

dataform.repositories.list

dataplex.projects.search

resourcemanager.projects.get

resourcemanager.projects.list

(roles/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 principal 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.

Lowest-level resources where you can grant this role:

  • Dataset

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.readsessions.create
  • bigquery.readsessions.getData
  • bigquery.readsessions.update

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

bigquerymigration.translation.translate

dataform.locations.*

  • dataform.locations.get
  • dataform.locations.list

dataform.repositories.create

dataform.repositories.list

dataplex.projects.search

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquerydatapolicy.admin)

Role for managing Data Policies in BigQuery

bigquery.dataPolicies.create

bigquery.dataPolicies.delete

bigquery.dataPolicies.get

bigquery.dataPolicies.getIamPolicy

bigquery.dataPolicies.list

bigquery.dataPolicies.setIamPolicy

bigquery.dataPolicies.update

(roles/bigquerydatapolicy.maskedReader)

Masked read access to sub-resources tagged by the policy tag associated with a data policy, for example, BigQuery columns

bigquery.dataPolicies.maskedGet

(roles/bigquerydatapolicy.rawDataReader)

Raw read access to sub-resources associated with a data policy, for example, BigQuery columns

bigquery.dataPolicies.getRawData

(roles/bigquerydatapolicy.viewer)

Role for viewing Data Policies in BigQuery

bigquery.dataPolicies.get

bigquery.dataPolicies.list

Ruoli IAM personalizzati per BigQuery

Per creare un ruolo IAM personalizzato per BigQuery, segui i passaggi descritti per i ruoli IAM personalizzati utilizzando le autorizzazioni BigQuery.

Ruoli di base di BigQuery

Per informazioni sui ruoli di base di BigQuery, consulta Ruoli e autorizzazioni di base di BigQuery.

Autorizzazioni BigQuery

La tabella seguente descrive le autorizzazioni disponibili in BigQuery. Sono inclusi nei ruoli predefiniti e possono essere utilizzati nelle definizioni dei ruoli personalizzati.

Autorizzazione Descrizione
bigquery.bireservations.get Leggi le prenotazioni di BI Engine.
bigquery.bireservations.update Aggiorna le prenotazioni di BI Engine.
bigquery.capacityCommitments.create Crea impegni di capacità nel progetto.
bigquery.capacityCommitments.delete Elimina un impegno di capacità.
bigquery.capacityCommitments.get Recupera i dettagli di un impegno di capacità.
bigquery.capacityCommitments.list Elenca tutti gli impegni di capacità in un progetto.
bigquery.capacityCommitments.update Aggiorna tutti gli impegni relativi alla capacità in un progetto.
bigquery.config.update Crea una configurazione.
bigquery.config.get Visualizza i dettagli di una configurazione.
bigquery.connections.create Creare nuove connessioni in un progetto.
bigquery.connections.delete Elimina una connessione.
bigquery.connections.get Recupera i metadati della connessione. Le credenziali sono escluse.
bigquery.connections.list Elenca le connessioni in un progetto.
bigquery.connections.update Aggiorna una connessione e le relative credenziali.
bigquery.connections.updateTag

Aggiorna i tag di una connessione.

bigquery.connections.use Utilizza una configurazione di connessione per connetterti a un'origine dati remota.
bigquery.connections.delegate Delega la connessione per creare funzioni remote e tabelle esterne autorizzate.
bigquery.dataPolicies.create

Creare nuovi criteri dei dati.

bigquery.dataPolicies.delete

Eliminare i criteri relativi ai dati.

bigquery.dataPolicies.get

Recupera i metadati relativi alle norme relative ai dati.

bigquery.dataPolicies.getIamPolicy

Leggi le autorizzazioni IAM di un criterio relativo ai dati.

bigquery.dataPolicies.list

Elenca i criteri dei dati in un progetto.

bigquery.dataPolicies.maskedGet

Visualizza i dati mascherati di una colonna con un tag di criteri associato a un criterio dei dati.

bigquery.dataPolicies.setIamPolicy

Imposta le autorizzazioni IAM di un criterio relativo ai dati.

bigquery.dataPolicies.update

Aggiornare i metadati di un criterio relativo ai dati.

bigquery.datasets.create Crea nuovi set di dati vuoti.
bigquery.datasets.createTagBinding Crea associazioni di tag delle risorse in un set di dati.
bigquery.datasets.delete Eliminare un set di dati.
bigquery.datasets.deleteTagBinding Elimina le associazioni di tag delle risorse in un set di dati.
bigquery.datasets.get Recupera i metadati e le autorizzazioni di un set di dati. Per visualizzare le autorizzazioni nella console Google Cloud è necessaria anche l'autorizzazione bigquery.datasets.getIamPolicy.
bigquery.datasets.getIamPolicy Obbligatorio per la console Google Cloud per consentire all'utente di ottenere le autorizzazioni IAM di un set di dati. Fail open. La possibilità di eseguire effettivamente l'operazione di acquisizione delle autorizzazioni è limitata dall'autorizzazione bigquery.datasets.get.
bigquery.datasets.link Crea un set di dati collegato.
bigquery.datasets.listTagBindings Elenca le associazioni di tag delle risorse in un set di dati.
bigquery.datasets.setIamPolicy Obbligatorio per la console Google Cloud per consentire all'utente di impostare le autorizzazioni IAM di un set di dati. Fail open. La possibilità di eseguire effettivamente l'operazione di impostazione delle autorizzazioni è limitata dall'autorizzazione bigquery.datasets.update.
bigquery.datasets.update Aggiorna i metadati e le autorizzazioni di un set di dati. La concessione delle autorizzazioni nella console Google Cloud richiede anche l'autorizzazione bigquery.datasets.setIamPolicy.
bigquery.datasets.updateTag Aggiorna i tag di Data Catalog per un set di dati.
bigquery.jobs.create Esegui job (incluse query) all'interno del progetto.
bigquery.jobs.get Recupera dati e metadati di qualsiasi job.1
bigquery.jobs.list Elenco di tutti i job e recupero dei metadati di qualsiasi job inviato da qualsiasi utente. Per i job inviati da altri utenti, i dettagli e i metadati vengono oscurati.
bigquery.jobs.listAll Elenco di tutti i job e recupero dei metadati di qualsiasi job inviato da qualsiasi utente.
bigquery.jobs.listExecutionMetadata Elenca tutti i metadati di esecuzione dei job (senza informazioni sensibili) su qualsiasi job inviato da qualsiasi utente. Può essere applicato solo a livello di organizzazione e viene utilizzato dall'interfaccia utente Amministrazione.
bigquery.jobs.delete Elimina i metadati di un job.
bigquery.jobs.update Annullare qualsiasi lavoro.1
bigquery.models.create Creare nuovi modelli di machine learning.
bigquery.models.delete Elimina i modelli di machine learning.
bigquery.models.getData Recupera i dati del modello di machine learning. Per ottenere i metadati del modello, hai bisogno di bigquery.models.getMetadata.
bigquery.models.getMetadata Recupera i metadati del modello di machine learning. Per ottenere i dati del modello, hai bisogno di bigquery.models.getData.
bigquery.models.list Elenca i modelli di machine learning e i metadati dei modelli.
bigquery.models.updateData Aggiorna i dati del modello di machine learning. Per aggiornare i metadati del modello, hai bisogno di bigquery.models.updateMetadata.
bigquery.models.updateMetadata Aggiorna i metadati del modello di machine learning. Per aggiornare i dati del modello, hai bisogno di bigquery.models.updateData.
bigquery.models.export Esportare modelli di machine learning.
bigquery.models.updateTag Aggiorna i tag di Data Catalog per un modello.
bigquery.readsessions.create Crea una nuova sessione di lettura utilizzando l'API Storage Read.
bigquery.readsessions.getData Leggi i dati da una sessione di lettura utilizzando l'API Storage Read.
bigquery.readsessions.update Aggiorna una sessione di lettura utilizzando l'API Storage Read.
bigquery.reservations.create Crea una prenotazione di slot in un progetto di amministrazione.
bigquery.reservations.delete Eliminare una prenotazione di uno slot.
bigquery.reservations.get Recupera i dettagli di una prenotazione di uno slot.
bigquery.reservations.list Elenca tutte le prenotazioni di slot in un progetto di amministrazione.
bigquery.reservations.update Aggiorna le proprietà di una prenotazione di uno spazio.
bigquery.reservationAssignments.create

Crea un'assegnazione di prenotazione. Questa autorizzazione è obbligatoria per il progetto del proprietario e la risorsa dell'assegnatario.
Per spostare un'assegnazione della prenotazione, devi disporre dell'autorizzazione bigquery.reservationAssignments.create per il nuovo progetto del proprietario e la risorsa dell'assegnatario.

bigquery.reservationAssignments.delete

Elimina un'assegnazione di prenotazione. Questa autorizzazione è obbligatoria per il progetto proprietario e la risorsa assegnata.
Per spostare l'assegnazione di una prenotazione, devi disporre dell'autorizzazione bigquery.reservationAssignments.delete per il progetto proprietario e la risorsa assegnata esistenti.

bigquery.reservationAssignments.list Elenca tutte le assegnazioni di prenotazione in un progetto.
bigquery.reservationAssignments.search Trova un'assegnazione di prenotazione per un determinato progetto, una cartella o un'organizzazione.
bigquery.rowAccessPolicies.create Crea un nuovo criterio di accesso a livello di riga in una tabella.
bigquery.rowAccessPolicies.delete Elimina un criterio di accesso a livello di riga da una tabella.
bigquery.rowAccessPolicies.getFilteredData Recupera i dati di una tabella che vuoi che siano visibili solo ai principali nell'elenco dei beneficiari di un criterio di accesso a livello di riga. Consigliamo di concedere questa autorizzazione solo a una risorsa dei criteri di accesso a livello di riga.
bigquery.rowAccessPolicies.list Elenca tutti i criteri di accesso a livello di riga di una tabella.
bigquery.rowAccessPolicies.overrideTimeTravelRestrictions Accedi ai dati storici di una tabella che ha o ha avuto in precedenza criteri di accesso a livello di riga.
bigquery.rowAccessPolicies.getIamPolicy Recupera le autorizzazioni IAM di un criterio di accesso riga.
bigquery.rowAccessPolicies.setIamPolicy Imposta le autorizzazioni IAM del criterio di accesso riga.
bigquery.rowAccessPolicies.update Ricrea un criterio di accesso a livello di riga.
bigquery.routines.create Creare nuove routine (funzioni e procedure archiviate).
bigquery.routines.delete Eliminare le routine.
bigquery.routines.get Recupera le definizioni e i metadati delle routine.
bigquery.routines.list Elenca le routine e i metadati delle routine.
bigquery.routines.update

Aggiorna le definizioni e i metadati delle routine.

bigquery.routines.updateTag

Aggiorna i tag di Data Catalog per una routine.

bigquery.savedqueries.create Creare query salvate.
bigquery.savedqueries.delete Elimina le query salvate.
bigquery.savedqueries.get Recupera i metadati delle query salvate.
bigquery.savedqueries.list Elenca le query salvate.
bigquery.savedqueries.update Aggiorna le query salvate.
bigquery.tables.create Creare nuove tabelle.
bigquery.tables.createIndex Creare indici di ricerca nelle tabelle.
bigquery.tables.createSnapshot Creare nuovi snapshot delle tabelle.
bigquery.tables.createTagBinding Crea associazioni di tag delle risorse in una tabella.
bigquery.tables.delete Elimina le tabelle.
bigquery.tables.deleteIndex Elimina gli indici di ricerca dalle tabelle.
bigquery.tables.deleteSnapshot Elimina gli snapshot delle tabelle.
bigquery.tables.deleteTagBinding Elimina le associazioni di tag delle risorse in una tabella.
bigquery.tables.export Esporta i dati della tabella da BigQuery.
bigquery.tables.get Recupera i metadati della tabella.
Per recuperare i dati della tabella, devi avere bigquery.tables.getData.
bigquery.tables.getData Recupera i dati della tabella. Questa autorizzazione è necessaria per eseguire query sui dati delle tabelle.
Per ottenere i metadati della tabella, devi disporre di bigquery.tables.get.
bigquery.tables.getIamPolicy Leggi il criterio IAM di una tabella.
bigquery.tables.list Elenca tabelle e metadati delle tabelle.
bigquery.tables.listEffectiveTags Elenca le associazioni di tag efficaci con l'API Cloud Resource Manager. Selezionato quando viene utilizzato il flag --effective.
bigquery.tables.listTagBindings Elenca le associazioni dei tag con l'API Cloud Resource Manager.
bigquery.tables.replicateData Replicare i dati della tabella. Questa autorizzazione è necessaria per creare viste materializzate delle repliche.
bigquery.tables.restoreSnapshot Ripristina gli snapshot delle tabelle.
bigquery.tables.setCategory Imposta i tag dei criteri nello schema della tabella.
bigquery.tables.setIamPolicy Modifica il criterio IAM di una tabella.
bigquery.tables.update

Aggiorna i metadati della tabella.
Per aggiornare i dati della tabella, devi bigquery.tables.updateData.

bigquery.tables.updateData

Aggiorna i dati della tabella.
Per aggiornare i metadati della tabella, devi bigquery.tables.update.

bigquery.tables.updateTag Aggiorna i tag di Data Catalog per una tabella.
bigquery.transfers.get Recupera i metadati di trasferimento.
bigquery.transfers.update Crea, aggiorna ed elimina i trasferimenti.

1 Per qualsiasi job creato, disponi automaticamente dell'equivalente delle autorizzazioni bigquery.jobs.get e bigquery.jobs.update per quel job.

Autorizzazioni per le attività BigQuery ML

La tabella seguente descrive le autorizzazioni necessarie per le attività comuni di BigQuery ML.

Autorizzazione Descrizione
bigquery.jobs.create
bigquery.models.create
bigquery.models.getData
bigquery.models.updateData
Crea un nuovo modello utilizzando l'istruzione CREATE MODEL
bigquery.jobs.create
bigquery.models.create
bigquery.models.getData
bigquery.models.updateData
bigquery.models.updateMetadata
Sostituire un modello esistente utilizzando l'istruzione CREATE OR REPLACE MODEL
bigquery.models.delete Eliminare il modello utilizzando l'API models.delete
bigquery.jobs.create
bigquery.models.delete
Eliminare il modello utilizzando l'istruzione DROP MODEL
bigquery.models.getMetadata Recuperare i metadati del modello utilizzando l'API models.get
bigquery.models.list Elenca i modelli e i metadati dei modelli utilizzando l'API models.list
bigquery.models.updateMetadata Aggiorna i metadati del modello utilizzando l'API models.delete. Se imposti o aggiorni un'ora di scadenza diversa da zero per il modello, è necessaria anche l'autorizzazione bigquery.models.delete
bigquery.jobs.create
bigquery.models.getData
Esegui valutazioni, previsioni e ispezioni di modelli e funzionalità utilizzando funzioni come ML.EVALUATE, ML.PREDICT, ML.TRAINING_INFO e ML.WEIGHTS.
bigquery.jobs.create
bigquery.models.export
Esportazione di un modello
bigquery.models.updateTag Aggiorna i tag di Data Catalog per un modello.

Passaggi successivi