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

基本角色和权限

概览

BigQuery 支持 IAM 基本角色进行项目级层访问。

适用于项目的基本角色

默认情况下,授予对项目的访问权限也会授予对该项目所含数据集的访问权限。可以按每个数据集覆盖默认访问权限。下表介绍了授予基本 IAM 角色成员的访问权限。

基本角色 技能
Viewer
  • 可以在项目中启动作业。所需的其他数据集角色取决于作业类型。
  • 可以列出和获取所有作业,以及更新用户在项目中启动的作业
  • 如果您在包含任何 Viewer 角色的项目中创建数据集,BigQuery 会为这些用户授予对新数据集的 bigquery.dataViewer 预定义角色。
Editor
  • 拥有 Viewer 角色的权限以及下述权限:
    • 可以在项目中创建新数据集
    • 如果您在包含任何 Editor 角色的项目中创建数据集,BigQuery 会向这些用户授予对新数据集的 bigquery.dataEditor 预定义角色。
Owner
  • 拥有 Editor 角色的权限以及下述权限:
    • 可以撤消或更改所有项目角色
    • 可以列出项目中的所有数据集
    • 可以删除项目中的任何数据集
    • 可以列出和获取项目中运行的所有作业,包括由其他项目用户运行的作业
    • 如果您创建了数据集,则对于新数据集,BigQuery 会向所有项目 Owner 授予 bigquery.dataOwner 预定义角色。

      例外:当用户运行查询时,系统会创建一个匿名数据集,以用于存储缓存的结果表。只有运行查询的用户才能获得匿名数据集的 OWNER 访问权限。

您可以通过 Google Cloud Console 授予或撤消项目的基本角色。创建项目时,会向创建该项目的用户授予 Owner 角色。

当 BigQuery 从分配了基本角色的身份(用户、群组或服务帐号)接收调用时,BigQuery 会将该基本角色解释为特殊群组的成员。特殊群组成员资格授予分配给 BigQuery IAM 角色的身份权限。下图展示了每个基本角色的特殊组和角色:

基本角色 已分配的群组 BigQuery IAM 角色
roles/viewer access.specialGroup: projectReaders roles/bigquery.dataViewer
roles/editor access.specialGroup: projectWriters roles/bigquery.dataEditor
roles/owner access.specialGroup: projectOwners roles/bigquery.dataOwner

特殊群组访问权限仅在创建时授予。如稍后需移除或更改权限,您可以修改数据集 IAM 政策或对象访问控制列表 (ACL)。

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

适用于数据集的基本角色

以下基本角色适用于数据集级别。

数据集角色 技能
READER
  • 可以读取、查询、复制或导出数据集中的表。可以读取数据集中的例程
    • 可以对数据集调用 get
    • 可以对数据集中的表调用 getlist
    • 可以对数据集中的例程调用 getlist
    • 可以对数据集中表的表数据调用 list
  • 映射到 bigquery.dataViewer 预定义角色
WRITER
  • 拥有 READER 角色的权限以及下述权限:
    • 可以在数据集中修改或附加数据
  • 映射到 bigquery.dataEditor 预定义角色
OWNER
  • 拥有 WRITER 角色的权限以及下述权限:
    • 可以对数据集调用 update
    • 可以对数据集调用 delete
  • 映射到 bigquery.dataOwner 预定义角色

注意:数据集必须至少包含一个具有 OWNER 角色的实体。具有 OWNER 角色的用户不能移除自己的 OWNER 角色。

如需详细了解如何在数据集级层分配角色,请参阅控制对数据集的访问权限

当您创建新数据集时,BigQuery 会为以下实体添加默认数据集访问权限。您在创建数据集时指定的角色会覆盖默认值。

实体 数据集角色
所有对项目具有 Viewer 访问权限的用户 READER
所有对项目具有 Editor 访问权限的用户 WRITER
所有用户具有对项目的 Owner 访问权限,
和数据集创建者

OWNER

例外:当用户运行查询时,系统会创建一个匿名数据集,以用于存储缓存的结果表。只有运行查询的用户才能获得匿名数据集的 OWNER 访问权限。