Lakehouse IAM 角色

Lakehouse for Apache Iceberg 定义了多个 Identity and Access Management (IAM) 角色,用于管理资源。每个预定义角色都包含一组允许主账号执行特定操作的 IAM 权限。 您可以使用 IAM 政策为主账号指定一个或多个 IAM 角色。

IAM 还提供创建自定义 IAM 角色的功能。您可以创建自定义 IAM 角色,并为该角色分配一项或多项权限。然后,您可以将新创建的角色授予正文。使用自定义角色可创建访问权限控制模型,该模型将直接映射到您的需求以及可用的预定义角色。

本页面重点介绍与 Lakehouse 运行时目录相关的 IAM 角色。

准备工作

  • 阅读 IAM 文档。

Lakehouse 角色

IAM Lakehouse 角色是一项或多项权限的集合。您为主账号授予角色,以允许他们对项目中的 Lakehouse 资源执行操作。例如,BigLake Viewer 角色具有 biglake.*.getbiglake.*.list 权限,这些权限允许用户获取和列出项目中的 Lakehouse 资源。

下表列出了所有 Lakehouse 角色以及与每个角色关联的权限:

Role Permissions

(roles/biglake.admin)

Provides full access to all BigLake resources.

biglake.*

  • biglake.catalogs.create
  • biglake.catalogs.delete
  • biglake.catalogs.get
  • biglake.catalogs.getIamPolicy
  • biglake.catalogs.list
  • biglake.catalogs.setIamPolicy
  • biglake.catalogs.update
  • biglake.databases.create
  • biglake.databases.delete
  • biglake.databases.get
  • biglake.databases.list
  • biglake.databases.update
  • biglake.locks.check
  • biglake.locks.create
  • biglake.locks.delete
  • biglake.locks.list
  • biglake.namespaces.create
  • biglake.namespaces.delete
  • biglake.namespaces.get
  • biglake.namespaces.getIamPolicy
  • biglake.namespaces.list
  • biglake.namespaces.setIamPolicy
  • biglake.namespaces.update
  • biglake.tables.create
  • biglake.tables.createPartitions
  • biglake.tables.delete
  • biglake.tables.deletePartitions
  • biglake.tables.get
  • biglake.tables.getData
  • biglake.tables.getIamPolicy
  • biglake.tables.list
  • biglake.tables.listPartitions
  • biglake.tables.lock
  • biglake.tables.setIamPolicy
  • biglake.tables.update
  • biglake.tables.updateData
  • biglake.tables.updatePartitions

resourcemanager.projects.get

resourcemanager.projects.list

(roles/biglake.editor)

Provides read and write access to all BigLake resources.

biglake.catalogs.create

biglake.catalogs.delete

biglake.catalogs.get

biglake.catalogs.getIamPolicy

biglake.catalogs.list

biglake.catalogs.update

biglake.namespaces.create

biglake.namespaces.delete

biglake.namespaces.get

biglake.namespaces.getIamPolicy

biglake.namespaces.list

biglake.namespaces.update

biglake.tables.create

biglake.tables.createPartitions

biglake.tables.delete

biglake.tables.deletePartitions

biglake.tables.get

biglake.tables.getData

biglake.tables.getIamPolicy

biglake.tables.list

biglake.tables.listPartitions

biglake.tables.update

biglake.tables.updateData

biglake.tables.updatePartitions

resourcemanager.projects.get

resourcemanager.projects.list

(roles/biglake.viewer)

Provides read-only access to all BigLake resources.

biglake.catalogs.get

biglake.catalogs.getIamPolicy

biglake.catalogs.list

biglake.databases.get

biglake.databases.list

biglake.locks.list

biglake.namespaces.get

biglake.namespaces.getIamPolicy

biglake.namespaces.list

biglake.tables.get

biglake.tables.getData

biglake.tables.getIamPolicy

biglake.tables.list

biglake.tables.listPartitions

resourcemanager.projects.get

resourcemanager.projects.list

(roles/biglake.metadataViewer)

Provides read-only metadata access to all BigLake resources.

biglake.catalogs.get

biglake.catalogs.getIamPolicy

biglake.catalogs.list

biglake.namespaces.get

biglake.namespaces.getIamPolicy

biglake.namespaces.list

biglake.tables.get

biglake.tables.getIamPolicy

biglake.tables.list

biglake.tables.listPartitions

resourcemanager.projects.get

resourcemanager.projects.list

后续步骤