Dataproc Metastore 定义了多个 Identity and Access Management (IAM) 角色。每个预定义角色都包含一组 IAM 权限,这些权限允许主帐号执行某些操作。您可以使用 IAM 政策为主帐号授予一个或多个 IAM 角色。
Identity and Access Management (IAM) 还提供创建自定义 IAM 角色的功能。您可以创建自定义 IAM 角色,并为该角色分配一项或多项权限。然后,您可以将新的角色授予主帐号。使用自定义角色可创建访问控制模型,该模型将直接映射到您的需求以及可用的预定义角色。
本页面重点介绍了与 Dataproc Metastore 相关的 IAM 角色。
开始前须知
- 阅读 IAM 文档。
Dataproc Metastore 角色
Identity and Access Management (IAM) Dataproc Metastore 角色是一项或多项权限的集合。您可以为主帐号授予角色,使其能够对项目中的 Dataproc Metastore 资源执行操作。例如,Dataproc Metastore User 角色包含 metastore.*.get
和 metastore.*.list
权限,使用户能够获取和列出项目中的 Dataproc Metastore 服务、元数据导入、备份和操作。
基本角色
下表列出了基本角色以及与每个角色关联的权限:
角色 ID | 权限 |
---|---|
roles/owner |
metastore.*.create |
roles/editor |
metastore.*.create |
roles/viewer |
metastore.*.get |
注意:
- “*”表示资源类型,如“服务”、“导入”、“备份”、“位置”或“操作”。
某些权限并未定义某些资源类型。例如,
create
、update
和delete
不是有效的“位置”权限。此外,与“操作”关联的唯一权限是get
、list
、cancel
和delete
。 owner
角色允许完全控制 Dataproc Metastore 资源和 IAM 政策管理。editor
角色允许完全控制 Dataproc Metastore 资源。viewer
角色可让用户获取和列出 Dataproc Metastore 资源和 IAM 政策详细信息。
您可以使用 IAM Project 角色在项目级分配基本角色。下面汇总了与 IAM 项目角色关联的权限:
项目角色 | 权限 |
---|---|
项目所有者 | 拥有所有 Project Editor 权限,外加管理项目的访问权限控制(获取/设置 IamPolicy)和设置项目结算的权限 |
项目编辑者 | 拥有所有“Project Viewer”权限,再加上可修改状态的操作(创建、删除、更新、使用)的所有项目权限 |
项目查看者 | 保留状态(获取、列表)的只读操作的所有项目权限 |
预定义角色
下表列出了 Dataproc Metastore 预定义(或精选)角色以及与每个角色关联的权限:
角色 ID | 权限 |
---|---|
roles/metastore.admin |
metastore.services.create |
roles/metastore.editor |
metastore.services.create |
roles/metastore.user |
metastore.services.get |
roles/metastore.metadataOperator |
metastore.services.get |
注意:
- 某些权限并未定义某些资源类型。例如,
create
、update
和delete
不是有效的“位置”权限。此外,与“操作”关联的唯一权限是get
、list
、cancel
和delete
。 metastore.admin
角色授予对所有 Dataproc Metastore 资源的完整访问权限,包括 IAM 政策管理。metastore.editor
角色授予对所有 Dataproc Metastore 资源的读取和写入权限。metastore.user
角色授予对所有 Dataproc Metastore 资源的读取权限。metastore.metadataOperator
、metastore.metadataOwner
和metastore.metadataEditor
角色授予对数据库元数据以及这些数据库下表的读取和修改权限。metastore.metadataViewer
和 `metastore.metadataUser 角色授予对数据库和这些数据库下表的元数据的读取权限。
元数据资源的预定义角色
下表列出了元数据资源预定义的 Dataproc(或精选)角色,以及与每个角色相关的详细信息:
预定义角色 | 说明 | 权限 | 主帐号分配给此角色后可以执行的操作 |
---|---|---|---|
Metadata Owner 角色 (metastore.metadataOwner ) |
授予对元数据资源及其 IAM 政策的完整访问权限。 | metastore.services.get |
在服务中:
|
Metadata Editor 角色 (metastore.metadataEditor ) |
向主帐号授予创建和修改元数据资源的权限。 | metastore.services.get
|
在服务中:
|
Metadata Viewer 角色 (metastore.metadataViewer ) |
授予主帐号查看元数据资源的权限。 | metastore.services.get |
在服务中:
|
Metadata User 角色 (metastore.metadataUser ) |
向主帐号授予使用 Dataproc Metastore 服务 gRPC 端点的权限。必须在服务级政策或更高级别中授予。 | metastore.services.get |
在服务中:
|
- “*”表示各种方法,如“创建”、“更新”、“删除”、“获取”或“列表”。
- 数据库和表权限用于启用了 gRPC 的 Dataproc Metastore 服务。在使用 Thrift 端点的服务时,它们不起作用。
后续步骤
- 了解如何创建自定义 IAM 角色。
- 了解如何授予和管理角色。
- 请参阅 Dataproc Metastore IAM 权限映射。