使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

IAM 简介

本文档介绍了 BigQuery 的 Identity and Access Management (IAM) 角色和权限。

如需大致了解 Google Cloud 中的访问权限管理,请参阅 IAM 概览。如需详细了解 BigQuery ML 中的角色和权限,请参阅使用 IAM 进行访问权限控制

概览

如果主帐号(用户、群组或服务帐号)调用 Google Cloud API,该主帐号必须具有适当的 IAM 权限才能使用资源。要向主帐号授予所需的权限,请向主帐号授予 IAM 角色。

本文档介绍了您可以授予主帐号以访问 BigQuery 资源的 BigQuery IAM 角色。

IAM 角色类型

您可以在 IAM 中管理以下类型的角色:

  • 预定义角色:针对特定服务提供精细访问权限,并由 Google Cloud 管理。预定义角色旨在为常见使用场景和访问权限控制模式提供支持。
  • 自定义角色根据用户指定的权限列表提供访问权限。

如需确定角色中是否包含一项或多项权限,您可以使用以下方法之一:

向用户分配多个角色类型时,授予的权限是每个角色所拥有权限的并集。

如需详细了解如何使用 IAM 访问资源,请参阅 IAM 文档中的授予、更改和撤消对资源的访问权限

如需了解如何创建自定义角色,请参阅 IAM 文档中的创建和管理自定义角色

BigQuery 权限和预定义的 IAM 角色

权限不会直接分配给用户、群组或服务帐号。相反,用户、群组或服务帐号会被授予预定义角色或自定义角色的访问权限,以便获得对资源执行操作所需的权限。

您可以在以下 BigQuery 资源级别授予访问权限:

  • 组织或 Google Cloud 项目级
  • 数据集级
  • 表或视图级

在组织或 Cloud 项目级应用的角色

如果在组织级和项目级分配角色,您需要提供运行 BigQuery 作业或访问项目的所有 BigQuery 资源所需的权限。

在数据集级应用的角色

您可以在数据集级分配角色,以提供对特定数据集的访问权限,而无需提供对项目资源的完整访问权限。在 IAM 政策层次结构中,BigQuery 数据集是项目的子资源。如需详细了解如何在数据集级分配角色,请参阅控制对数据集的访问权限

应用于数据集内单个资源的角色

您可以单独为数据集内特定类型的资源分配角色,而无需提供对数据集资源的完整访问权限。

角色可以应用于以下类型的单个资源:

  • 视图

角色无法应用于以下类型的单个资源:

  • 例程
  • 模型

如需详细了解如何在表或视图级分配角色,请参阅控制对表或视图的访问权限

BigQuery 权限

下表介绍了 BigQuery 中提供的权限。

权限 说明
bigquery.bireservations.get 读取 BI Engine 预留。
bigquery.bireservations.update 更新 BI Engine 预留。
bigquery.capacityCommitments.create 在项目中创建容量承诺。
bigquery.capacityCommitments.delete 删除容量承诺。
bigquery.capacityCommitments.get 检索容量承诺的相关详细信息。
bigquery.capacityCommitments.list 列出项目中的所有容量承诺。
bigquery.capacityCommitments.update 更新项目中的所有容量承诺。
bigquery.config.update 创建配置。
bigquery.config.get 获取有关配置的详细信息。
bigquery.connections.create 在项目中创建新连接。
bigquery.connections.delete 删除连接。
bigquery.connections.get 获取连接元数据。不包括凭据。
bigquery.connections.list 列出项目中的连接。
bigquery.connections.update 更新连接及其凭据。
bigquery.connections.updateTag

更新连接的标记。

bigquery.connections.use 使用连接配置连接到远程数据源。
bigquery.connections.delegate 委托连接以创建授权的外部表和远程函数。
bigquery.dataPolicies.create

创建新的数据政策。

bigquery.dataPolicies.delete

删除数据政策。

bigquery.dataPolicies.get

获取数据政策的相关元数据。

bigquery.dataPolicies.getIamPolicy

读取数据政策的 IAM 权限。

bigquery.dataPolicies.list

列出项目中的数据政策。

bigquery.dataPolicies.maskedGet

查看具有与数据政策关联的政策标记的列的遮盖数据。

bigquery.dataPolicies.setIamPolicy

设置数据政策的 IAM 权限。

bigquery.dataPolicies.update

更新数据政策的元数据。

bigquery.datasets.create 新建空数据集。
bigquery.datasets.createTagBinding 创建数据集的标记绑定。
bigquery.datasets.delete 删除数据集。
bigquery.datasets.deleteTagBinding 删除数据集上的标记绑定。
bigquery.datasets.get 获取数据集的相关元数据。
bigquery.datasets.getIamPolicy 读取数据集的 IAM 权限。
bigquery.datasets.link 创建关联数据集
bigquery.datasets.listTagBindings 列出数据集上的标记绑定。
bigquery.datasets.setIamPolicy 更改数据集的 IAM 权限。
bigquery.datasets.update 更新数据集的元数据。
bigquery.datasets.updateTag(Beta 版) 更新数据集的标记。
bigquery.jobs.create 在项目中运行作业(包括查询作业)。
bigquery.jobs.get 获取任何作业的数据和元数据。1
bigquery.jobs.list 列出所有作业,并检索任何用户所提交任何作业的相关元数据。 对于由其他用户提交的作业,详细信息和元数据会被遮盖。
bigquery.jobs.listAll 列出所有作业,并检索任何用户所提交任何作业的相关元数据。
bigquery.jobs.listExecutionMetadata(Beta 版) 列出任何用户所提交的任何作业的所有作业执行元数据(无敏感信息)。它只能在组织级层应用,并由管理界面使用。
bigquery.jobs.delete 删除作业的元数据。
bigquery.jobs.update 取消任何作业。1
bigquery.models.create 创建新模型。
bigquery.models.delete 删除模型。
bigquery.models.getData 获取模型数据。如需获取模型元数据,您需要拥有 bigquery.models.getMetadata 权限。
bigquery.models.getMetadata 获取模型元数据。如需获取模型数据,您需要拥有 bigquery.models.getData 权限。
bigquery.models.list 列出模型及其元数据。
bigquery.models.updateData 更新模型数据。如需更新模型元数据,您需要拥有 bigquery.models.updateMetadata 权限。
bigquery.models.updateMetadata 更新模型元数据。如需更新模型数据,您需要拥有 bigquery.models.updateData 权限。
bigquery.models.export 导出模型。
bigquery.readsessions.create 通过 BigQuery Storage Read API 创建新的读取会话。
bigquery.readsessions.getData 通过 Storage Read API 从读取会话读取数据。
bigquery.readsessions.update 通过 Storage Read API 更新读取会话。
bigquery.reservations.create 在项目中创建预留。
bigquery.reservations.delete 删除预留。
bigquery.reservations.get 检索预留的相关详细信息。
bigquery.reservations.list 列出项目中的所有预留。
bigquery.reservations.update 更新预留的属性。
bigquery.reservationAssignments.create

创建预留分配。所有者项目和分配对象资源需要此权限。
要迁移预留分配,您需要拥有新所有者项目和分配对象资源的 bigquery.reservationAssignments.create 权限。

bigquery.reservationAssignments.delete

删除预留分配。所有者项目和分配对象资源需要此权限。
要迁移预留分配,您需要拥有旧所有者项目和分配对象资源的 bigquery.reservationAssignments.delete 权限。

bigquery.reservationAssignments.list 列出项目中的所有预留分配。
bigquery.reservationAssignments.search 搜索指定项目、文件夹或组织的预留分配。
bigquery.rowAccessPolicies.create 为表创建新的行级层访问权限政策。
bigquery.rowAccessPolicies.delete 从表中删除行级层访问权限政策。
bigquery.rowAccessPolicies.getFilteredData 获取表中您希望只对行级层访问权限政策被授权者列表的主帐号可见的数据。我们建议仅对行级层访问权限政策授予此权限资源。
bigquery.rowAccessPolicies.list 列出表中的所有行级层访问权限政策。
bigquery.rowAccessPolicies.overrideTimeTravelRestrictions 访问现在具有或以前具有行级访问政策的表的历史数据
bigquery.rowAccessPolicies.getIamPolicy 获取行访问权限政策的 IAM 权限。
bigquery.rowAccessPolicies.setIamPolicy 设置行访问权限政策的 IAM 权限。
bigquery.rowAccessPolicies.update 重新创建行级层访问权限政策。
bigquery.routines.create 创建新例程(函数和存储过程)。
bigquery.routines.delete 删除例程。
bigquery.routines.get 获取例程定义和元数据。
bigquery.routines.list 列出例程及其元数据。
bigquery.routines.update

更新例程定义和元数据。

bigquery.routines.updateTag

更新例程的标记。

bigquery.savedqueries.create 创建已保存的查询。
bigquery.savedqueries.delete 删除已保存的查询。
bigquery.savedqueries.get 获取已保存查询的元数据。
bigquery.savedqueries.list 列出已保存的查询
bigquery.savedqueries.update 更新已保存的查询。
bigquery.tables.create 新建表。
bigquery.tables.createIndex 在表上创建搜索索引。
bigquery.tables.createSnapshot 创建新的表快照。
bigquery.tables.delete 删除表。
bigquery.tables.deleteIndex 删除表上的搜索索引。
bigquery.tables.deleteSnapshot 删除表快照。
bigquery.tables.export 从 BigQuery 导出表数据。
bigquery.tables.get 获取表元数据。
如需获取表数据,您需要拥有 bigquery.tables.getData 权限。
bigquery.tables.getData 获取表数据。查询表数据需要此权限。
如需获取表元数据,您需要拥有 bigquery.tables.get 权限。
bigquery.tables.getIamPolicy 读取表的 IAM 政策。
bigquery.tables.list 列出表及其元数据。
bigquery.tables.restoreSnapshot 恢复表快照。
bigquery.tables.setCategory 设置表架构中的政策标记。
bigquery.tables.setIamPolicy 更改表的 IAM 政策。
bigquery.tables.update

更新表元数据。
如需更新表数据,您需要拥有 bigquery.tables.updateData 权限。

bigquery.tables.updateData

更新表数据。
如需更新表元数据,您需要拥有 bigquery.tables.update 权限。

bigquery.tables.updateTag(Beta 版) 更新表的标记。
bigquery.transfers.get 获取转移作业元数据。
bigquery.transfers.update 创建、更新和删除传输。

1 对于您创建的任何作业,系统将会自动为您分配该作业的 bigquery.jobs.getbigquery.jobs.update 权限。

BigQuery 预定义的 IAM 角色

下表列出了预定义的 BigQuery IAM 角色以及每个角色包含的所有权限的列表。请注意,每个权限适用于特定资源类型。

角色 权限

(roles/bigquery.admin)

提供管理项目中所有资源的权限。获授此角色的用户可以管理项目中的所有数据,也可以取消其他用户正在项目中运行的作业。

您可以授予此角色的最低级层资源:

  • 数据集
  • 行访问权限政策
  • 视图

包含 18 项所有者权限

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.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.delete
  • bigquery.tables.deleteIndex
  • bigquery.tables.deleteSnapshot
  • bigquery.tables.export
  • bigquery.tables.get
  • bigquery.tables.getData
  • bigquery.tables.getIamPolicy
  • bigquery.tables.list
  • bigquery.tables.restoreSnapshot
  • bigquery.tables.setCategory
  • bigquery.tables.setIamPolicy
  • bigquery.tables.update
  • bigquery.tables.updateData
  • bigquery.tables.updateTag

bigquery.transfers.*

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

bigquerymigration.translation.translate

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.connectionAdmin)

包含 2 项所有者权限

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)

此角色在应用于表或视图时,可提供以下权限:

  • 读取和更新表或视图的数据和元数据。
  • 删除表或视图。

此角色无法应用于单个模型或例程。

此角色在应用于数据集时,可提供以下权限:

  • 读取数据集的元数据以及列出数据集中的表。
  • 创建、更新、获取和删除数据集的表。

此角色在应用于项目或组织级层时,还可提供创建新数据集的权限。

您可以授予此角色的最低级层资源:

  • 查看

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

bigquery.tables.update

bigquery.tables.updateData

bigquery.tables.updateTag

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.dataOwner)

此角色在应用于表或视图时,可提供以下权限:

  • 读取和更新表或视图的数据和元数据。
  • 共享表或视图。
  • 删除表或视图。

此角色无法应用于单个模型或例程。

此角色在应用于数据集时,可提供以下权限:

  • 读取、更新和删除数据集。
  • 创建、更新、获取和删除数据集的表。

此角色在应用于项目或组织级层时,还可提供创建新数据集的权限。

您可以授予此角色的最低级层资源:

  • 查看

包含 11 项所有者权限

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.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.delete
  • bigquery.tables.deleteIndex
  • bigquery.tables.deleteSnapshot
  • bigquery.tables.export
  • bigquery.tables.get
  • bigquery.tables.getData
  • bigquery.tables.getIamPolicy
  • bigquery.tables.list
  • bigquery.tables.restoreSnapshot
  • bigquery.tables.setCategory
  • bigquery.tables.setIamPolicy
  • bigquery.tables.update
  • bigquery.tables.updateData
  • bigquery.tables.updateTag

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.dataViewer)

此角色在应用于表或视图时,可提供以下权限:

  • 从表或视图中读取数据和元数据。

此角色无法应用于单个模型或例程。

此角色在应用于数据集时,可提供以下权限:

  • 读取数据集的元数据以及列出数据集中的表。
  • 从数据集的表中读取数据和元数据。

此角色在应用于项目或组织级层时,还可提供枚举项目中所有数据集的权限。但若要运行作业,还需要具备其他角色。

您可以授予此角色的最低级层资源:

  • 查看

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

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.filteredDataViewer)

可以查看由行访问权限政策定义的已过滤表数据

包含 1 项所有者权限

bigquery.rowAccessPolicies.getFilteredData

(roles/bigquery.jobUser)

提供在项目中运行作业(包括查询)的权限。

您可以授予此角色的最低级层资源:

  • 项目

bigquery.config.get

bigquery.jobs.create

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.metadataViewer)

此角色在应用于表或视图时,可提供以下权限:

  • 从表或视图中读取元数据。

此角色无法应用于单个模型或例程。

此角色在应用于数据集时,可提供以下权限:

  • 列出数据集中的表和视图。
  • 从数据集的表和视图中读取元数据。

此角色在应用于项目或组织级层时,可提供以下权限:

  • 列出项目中的所有数据集,以及读取所有数据集的元数据。
  • 列出项目中的所有表和视图,以及读取所有表和视图的元数据。

但若要运行作业,还需要具备其他角色。

您可以授予此角色的最低级层资源:

  • 查看

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

(roles/bigquery.readSessionUser)

拥有创建和使用读取会话的权限

bigquery.readsessions.*

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

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquery.resourceAdmin)

管理所有 BigQuery 资源。

包含 3 项所有者权限

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)

管理所有 BigQuery 资源,但不能做出购买决定。

包含 1 项所有者权限

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)

可查看所有 BigQuery 资源,但不能执行更改或做出购买决定。

包含 1 项所有者权限

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.user)

此角色应用于数据集时,让您可以读取数据集的元数据并列出数据集中的表。

应用于项目时,此角色还提供在项目内运行作业(包括查询)的能力。具有此角色的主帐号可以枚举自己的作业、取消自己的作业,还可以枚举项目中的数据集。此外,具有此角色的用户还可以在项目中创建新数据集;对于这些新数据集,系统会为创建者授予 BigQuery Data Owner 角色 (roles/bigquery.dataOwner)。

您可以授予此角色的最低级层资源:

  • 数据集

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

resourcemanager.projects.get

resourcemanager.projects.list

(roles/bigquerydatapolicy.maskedReader)

拥有对与数据政策关联的政策标记所标记的子资源(例如 BigQuery 列)的遮盖内容读取权限

包含 1 项所有者权限

bigquery.dataPolicies.maskedGet

BigQuery 自定义角色

如需为 BigQuery 创建自定义 IAM 角色,请按照 IAM 自定义角色文档中列出的步骤操作。

BigQuery 基本角色

如需了解 BigQuery 基本角色,请参阅 BigQuery 基本角色和权限

后续步骤