Peran dan izin IAM BigQuery

Dokumen ini memberikan informasi tentang peran dan izin Identity and Access Management (IAM) untuk BigQuery. Dengan IAM, Anda dapat memberikan akses terperinci ke resource BigQuery tertentu dan membantu mencegah akses ke resource lain. IAM memungkinkan Anda menerapkan prinsip keamanan dengan hak istimewa terendah, yang menyatakan bahwa tidak ada yang boleh memiliki izin lebih dari yang sebenarnya dibutuhkan.

Saat akun utama (akun pengguna, grup, atau layanan) memanggil Google Cloud API, akun utama tersebut harus memiliki izin IAM yang sesuai untuk menggunakan resource. Untuk memberikan akun utama izin yang diperlukan, Anda memberikan peran IAM kepada akun utama.

Dokumen ini menjelaskan cara menggunakan peran IAM standar dan kustom untuk mengizinkan akun utama mengakses resource BigQuery.

Untuk mempelajari pengelolaan akses di Google Cloud secara umum, lihat ringkasan IAM.

Jenis peran IAM

Peran adalah kumpulan izin. Anda dapat menggunakan jenis peran berikut di IAM untuk memberikan akses ke resource BigQuery:

  • Peran bawaan dikelola oleh Google Cloud dan mendukung kasus penggunaan umum dan pola kontrol akses.
  • Peran khusus memberikan akses sesuai dengan daftar izin yang ditentukan pengguna.

Untuk menentukan apakah satu atau beberapa izin disertakan dalam peran, Anda dapat menggunakan salah satu metode berikut:

Saat Anda menetapkan beberapa jenis peran kepada pengguna, izin yang diberikan merupakan gabungan dari izin setiap peran.

Untuk informasi tambahan tentang penggunaan IAM untuk mengakses resource, lihat Memberikan, mengubah, dan mencabut akses ke resource dalam dokumentasi IAM.

Untuk mengetahui informasi cara membuat peran khusus, lihat Membuat dan mengelola peran khusus dalam dokumentasi IAM.

Peran IAM di BigQuery

Izin tidak ditetapkan langsung ke pengguna, grup, atau akun layanan. Sebaliknya, akun pengguna, grup, atau layanan diberi akses ke satu atau beberapa peran bawaan atau peran khusus untuk memberi mereka izin melakukan tindakan pada resource.

Anda dapat memberikan akses pada level resource BigQuery berikut:

  • Organisasi, folder, atau project
  • Koneksi
  • Set data
  • Tabel atau tampilan
  • Tag kebijakan, kebijakan akses baris, atau kebijakan data BigQuery

Peran yang diterapkan pada level organisasi atau project Google Cloud

Saat menetapkan peran pada level organisasi dan project, Anda memberikan izin untuk menjalankan tugas BigQuery atau mengakses semua resource BigQuery project.

Peran yang diterapkan pada level set data

Anda dapat menetapkan peran pada level set data untuk memberikan akses ke set data tertentu, tanpa memberikan akses lengkap ke resource project. Dalam hierarki resource IAM, set data BigQuery adalah resource turunan dari project. Untuk mengetahui informasi selengkapnya tentang cara menetapkan peran pada level set data, lihat Mengontrol akses ke set data.

Peran diterapkan ke setiap resource dalam set data

Anda dapat menetapkan peran satu per satu ke jenis resource tertentu dalam set data, tanpa memberikan akses lengkap ke resource set data.

Peran dapat diterapkan ke setiap jenis resource berikut:

  • tabel
  • tabel virtual

Peran tidak dapat diterapkan ke setiap jenis resource berikut:

  • rutinitas
  • model

Untuk mengetahui informasi selengkapnya tentang cara menetapkan peran pada level tabel atau tabel virtual, lihat Mengontrol akses ke tabel atau tabel virtual.

Peran IAM bawaan BigQuery

Tabel berikut mencantumkan peran IAM BigQuery bawaan dengan daftar terkait semua izin yang disertakan dalam setiap peran. Perhatikan bahwa setiap izin berlaku untuk jenis resource tertentu.

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

Peran IAM khusus untuk BigQuery

Untuk membuat peran IAM khusus untuk BigQuery, ikuti langkah-langkah yang diuraikan untuk peran khusus IAM menggunakan izin BigQuery.

Peran dasar BigQuery

Untuk mengetahui informasi tentang peran dasar BigQuery, lihat Peran dasar dan izin BigQuery.

Izin BigQuery

Tabel berikut menjelaskan izin yang tersedia di BigQuery. Izin ini disertakan dalam peran bawaan dan dapat digunakan dalam definisi peran kustom.

Izin Deskripsi
bigquery.bireservations.get Membaca pemesanan BI Engine.
bigquery.bireservations.update Memperbarui pemesanan BI Engine.
bigquery.capacityCommitments.create Membuat komitmen kapasitas dalam project.
bigquery.capacityCommitments.delete Menghapus komitmen kapasitas.
bigquery.capacityCommitments.get Mengambil detail tentang komitmen kapasitas.
bigquery.capacityCommitments.list Mencantumkan semua komitmen kapasitas dalam project.
bigquery.capacityCommitments.update Memperbarui semua komitmen kapasitas dalam project.
bigquery.config.update Membuat konfigurasi.
bigquery.config.get Mendapatkan detail tentang konfigurasi.
bigquery.connections.create Membuat koneksi baru dalam project.
bigquery.connections.delete Menghapus koneksi.
bigquery.connections.get Mendapatkan metadata koneksi. Kredensial dikecualikan.
bigquery.connections.list Mencantumkan koneksi dalam project.
bigquery.connections.update Memperbarui koneksi dan kredensialnya.
bigquery.connections.updateTag

Memperbarui tag untuk koneksi.

bigquery.connections.use Menggunakan konfigurasi koneksi untuk terhubung ke sumber data jarak jauh.
bigquery.connections.delegate Mendelegasikan koneksi untuk membuat tabel eksternal yang diotorisasi dan fungsi jarak jauh.
bigquery.dataPolicies.create

Membuat kebijakan data baru.

bigquery.dataPolicies.delete

Menghapus kebijakan data.

bigquery.dataPolicies.get

Mendapatkan metadata tentang kebijakan data.

bigquery.dataPolicies.getIamPolicy

Membaca kebijakan data izin IAM.

bigquery.dataPolicies.list

Mencantumkan kebijakan data dalam project.

bigquery.dataPolicies.maskedGet

Melihat data yang disamarkan di kolom yang memiliki tag kebijakan terkait dengan kebijakan data.

bigquery.dataPolicies.setIamPolicy

Menetapkan kebijakan data izin IAM.

bigquery.dataPolicies.update

Memperbarui metadata untuk kebijakan data.

bigquery.datasets.create Membuat set data kosong yang baru.
bigquery.datasets.createTagBinding Membuat binding tag resource pada set data.
bigquery.datasets.delete Menghapus set data.
bigquery.datasets.deleteTagBinding Menghapus binding tag resource pada set data.
bigquery.datasets.get Mendapatkan metadata dan izin tentang set data. Izin melihat di konsol Google Cloud juga memerlukan izin bigquery.datasets.getIamPolicy.
bigquery.datasets.getIamPolicy Diwajibkan oleh konsol Google Cloud untuk memberi pengguna opsi mendapatkan set data izin IAM. Gagal terbuka. Kemampuan untuk benar-benar melakukan operasi dalam mendapatkan izin dibatasi oleh izin bigquery.datasets.get .
bigquery.datasets.link Buat set data tertaut.
bigquery.datasets.listTagBindings Mencantumkan binding tag resource pada set data.
bigquery.datasets.setIamPolicy Diwajibkan oleh konsol Google Cloud untuk memberi pengguna opsi menyetel set data izin IAM. Gagal terbuka. Kemampuan untuk benar-benar melakukan operasi dalam menyetel izin dibatasi oleh izin bigquery.datasets.update .
bigquery.datasets.update Memperbarui metadata dan izin untuk set data. Memberikan izin di konsol Google Cloud juga memerlukan izin bigquery.datasets.setIamPolicy.
bigquery.datasets.updateTag Perbarui tag Data Catalog untuk set data.
bigquery.jobs.create Menjalankan tugas (termasuk kueri) dalam project.
bigquery.jobs.get Mendapatkan data dan metadata dari setiap tugas.1
bigquery.jobs.list Mencantumkan semua tugas dan mengambil metadata dari setiap tugas yang dikirimkan pengguna. Untuk tugas yang dikirimkan oleh pengguna lain, detail dan metadata akan disamarkan.
bigquery.jobs.listAll Mencantumkan semua tugas dan mengambil metadata dari setiap tugas yang dikirimkan oleh pengguna mana pun.
bigquery.jobs.listExecutionMetadata Mencantumkan semua metadata eksekusi tugas (tanpa informasi sensitif) dari setiap tugas yang dikirimkan pengguna. Hal ini hanya dapat diterapkan pada tingkat organisasi dan digunakan oleh UI Admin.
bigquery.jobs.delete Menghapus metadata tugas.
bigquery.jobs.update Membatalkan setiap tugas.1
bigquery.models.create Membuat model machine learning baru.
bigquery.models.delete Menghapus model machine learning.
bigquery.models.getData Mendapatkan data model machine learning. Untuk mendapatkan metadata model, Anda memerlukan bigquery.models.getMetadata.
bigquery.models.getMetadata Mendapatkan metadata model machine learning. Untuk mendapatkan data model, Anda memerlukan bigquery.models.getData.
bigquery.models.list Mencantumkan model machine learning dan metadata pada model.
bigquery.models.updateData Memperbarui data model machine learning. Untuk memperbarui metadata model, Anda memerlukan bigquery.models.updateMetadata.
bigquery.models.updateMetadata Perbarui metadata model machine learning. Untuk memperbarui data model, Anda memerlukan bigquery.models.updateData.
bigquery.models.export Mengekspor model machine learning.
bigquery.models.updateTag Memperbarui tag Data Catalog untuk model.
bigquery.readsessions.create Buat sesi baca baru menggunakan Storage Read API.
bigquery.readsessions.getData Membaca data dari sesi membaca menggunakan Storage Read API.
bigquery.readsessions.update Memperbarui sesi membaca menggunakan Storage Read API.
bigquery.reservations.create Buat pemesanan slot di project administrasi.
bigquery.reservations.delete Menghapus reservasi slot.
bigquery.reservations.get Mengambil detail tentang reservasi slot.
bigquery.reservations.list Mencantumkan semua reservasi slot dalam project administrasi.
bigquery.reservations.update Memperbarui properti reservasi slot.
bigquery.reservationAssignments.create

Buat penetapan pemesanan. Izin ini diperlukan pada project pemilik dan resource penerima tugas.
Untuk memindahkan penetapan pemesanan, Anda memerlukan bigquery.reservationAssignments.create pada project pemilik dan resource penerima tugas yang baru.

bigquery.reservationAssignments.delete

Menghapus penetapan pemesanan. Izin ini diperlukan pada project pemilik dan resource penerima tugas.
Untuk memindahkan penetapan pemesanan, Anda memerlukan bigquery.reservationAssignments.delete pada project pemilik dan resource penerima tugas yang ada.

bigquery.reservationAssignments.list Mencantumkan semua penetapan reservasi dalam project.
bigquery.reservationAssignments.search Menemukan penetapan reservasi untuk project, folder, atau organisasi tertentu.
bigquery.rowAccessPolicies.create Membuat kebijakan akses tingkat baris yang baru pada tabel.
bigquery.rowAccessPolicies.delete Menghapus kebijakan akses tingkat baris dari tabel.
bigquery.rowAccessPolicies.getFilteredData Mendapatkan data dalam tabel yang hanya ingin Anda lihat oleh akun utama dalam daftar penerima kebijakan akses tingkat baris. Sebaiknya izin ini hanya diberikan pada resource kebijakan akses tingkat baris.
bigquery.rowAccessPolicies.list Mencantumkan semua kebijakan akses tingkat baris pada tabel.
bigquery.rowAccessPolicies.overrideTimeTravelRestrictions Mengakses data historis untuk tabel yang memiliki, atau pernah memiliki, kebijakan akses tingkat baris.
bigquery.rowAccessPolicies.getIamPolicy Mendapatkan kebijakan akses baris izin IAM.
bigquery.rowAccessPolicies.setIamPolicy Menetapkan kebijakan akses baris izin IAM.
bigquery.rowAccessPolicies.update Membuat ulang kebijakan akses tingkat baris.
bigquery.routines.create Membuat rutinitas baru (fungsi dan prosedur yang tersimpan).
bigquery.routines.delete Menghapus rutinitas.
bigquery.routines.get Mendapatkan metadata dan definisi rutinitas.
bigquery.routines.list Mencantumkan rutinitas dan metadata pada rutinitas.
bigquery.routines.update

Memperbarui metadata dan definisi rutinitas.

bigquery.routines.updateTag

Memperbarui tag Katalog Data untuk rutinitas.

bigquery.savedqueries.create Membuat kueri tersimpan.
bigquery.savedqueries.delete Menghapus kueri tersimpan.
bigquery.savedqueries.get Mendapatkan metadata pada kueri tersimpan.
bigquery.savedqueries.list Mencantumkan kueri tersimpan.
bigquery.savedqueries.update Memperbarui kueri tersimpan.
bigquery.tables.create Membuat tabel baru.
bigquery.tables.createIndex Membuat indeks penelusuran pada tabel.
bigquery.tables.createSnapshot Membuat snapshot tabel yang baru.
bigquery.tables.createTagBinding Buat binding tag resource pada tabel.
bigquery.tables.delete Menghapus tabel.
bigquery.tables.deleteIndex Menghapus indeks penelusuran pada tabel.
bigquery.tables.deleteSnapshot Menghapus snapshot tabel.
bigquery.tables.deleteTagBinding Menghapus binding tag resource pada tabel.
bigquery.tables.export Mengekspor data tabel dari BigQuery.
bigquery.tables.get Mendapatkan metadata tabel.
Untuk mendapatkan data tabel, Anda memerlukan bigquery.tables.getData.
bigquery.tables.getData Mendapatkan data tabel. Izin ini diperlukan untuk membuat kueri data tabel.
Untuk mendapatkan metadata tabel, Anda memerlukan bigquery.tables.get.
bigquery.tables.getIamPolicy Membaca tabel kebijakan IAM.
bigquery.tables.list Mencantumkan tabel dan metadata pada tabel.
bigquery.tables.listEffectiveTags Mencantumkan binding tag yang efektif dengan Cloud Resource Manager API. Dicek saat tanda --effective digunakan.
bigquery.tables.listTagBindings Mencantumkan binding tag dengan Cloud Resource Manager API.
bigquery.tables.replicateData Mereplikasikan data tabel. Izin ini diperlukan untuk membuat replika tampilan terwujud.
bigquery.tables.restoreSnapshot Memulihkan snapshot tabel.
bigquery.tables.setCategory Menetapkan tag kebijakan dalam skema tabel.
bigquery.tables.setIamPolicy Mengubah tabel kebijakan IAM.
bigquery.tables.update

Memperbarui metadata tabel.
Untuk memperbarui data tabel, Anda memerlukan bigquery.tables.updateData.

bigquery.tables.updateData

Memperbarui data tabel.
Untuk memperbarui metadata tabel, Anda memerlukan bigquery.tables.update.

bigquery.tables.updateTag Memperbarui tag Data Catalog untuk tabel.
bigquery.transfers.get Mendapatkan metadata transfer.
bigquery.transfers.update Membuat, memperbarui, dan menghapus transfer.

1 Untuk setiap tugas yang dibuat, Anda secara otomatis memiliki izin yang setara dengan izin bigquery.jobs.get dan bigquery.jobs.update untuk tugas tersebut.

Izin untuk tugas ML BigQuery

Tabel berikut menjelaskan izin yang diperlukan untuk tugas umum BigQuery ML.

Izin Deskripsi
bigquery.jobs.create
bigquery.models.create
bigquery.models.getData
bigquery.models.updateData
Membuat model baru menggunakan pernyataan CREATE MODEL
bigquery.jobs.create
bigquery.models.create
bigquery.models.getData
bigquery.models.updateData
bigquery.models.updateMetadata
Mengganti model yang ada menggunakan pernyataan CREATE OR REPLACE MODEL
bigquery.models.delete Menghapus model menggunakan models.delete API
bigquery.jobs.create
bigquery.models.delete
Menghapus model menggunakan pernyataan DROP MODEL
bigquery.models.getMetadata Mendapatkan metadata model menggunakan models.get API
bigquery.models.list Mencantumkan model dan metadata pada model menggunakan models.list API
bigquery.models.updateMetadata Memperbarui metadata model menggunakan models.delete API. Jika ingin menyetel atau memperbarui akhir masa berlaku yang bukan nol untuk Model, izin bigquery.models.delete juga diperlukan
bigquery.jobs.create
bigquery.models.getData
Melakukan evaluasi, prediksi, serta pemeriksaan model dan fitur menggunakan fungsi seperti ML.EVALUATE, ML.PREDICT, ML.TRAINING_INFO, dan ML.WEIGHTS.
bigquery.jobs.create
bigquery.models.export
Mengekspor model
bigquery.models.updateTag Memperbarui tag Data Catalog untuk model.

Langkah selanjutnya