Roles de IAM de Lakehouse

Lakehouse para Apache Iceberg define varias funciones de Identity and Access Management (IAM) para administrar recursos. Cada rol predefinido contiene un conjunto de permisos de IAM que permiten a las entidades principales realizar ciertas acciones. Puedes usar una política de IAM para otorgar a una principal uno o más roles de IAM.

IAM también ofrece la capacidad de crear funciones personalizadas de IAM. Puedes crear funciones personalizadas de IAM y asignarles un permiso o más. Luego, puedes otorgar la nueva función a tus principales. Usa funciones personalizadas para crear un modelo de control de acceso que se asigne de manera directa a tus necesidades, junto con las funciones predefinidas disponibles.

Esta página se centra en las funciones de IAM relevantes para el catálogo de tiempo de ejecución de Lakehouse.

Antes de comenzar

Funciones de Lakehouse

Las funciones de IAM de Lakehouse son un conjunto de uno o más permisos. Otorgas funciones a las principales para permitirles realizar acciones en los recursos de Lakehouse en tu proyecto. Por ejemplo, la función Visualizador de BigLake contiene los permisos biglake.*.get y biglake.*.list, que permiten a un usuario obtener y enumerar recursos de Lakehouse en un proyecto.

En la siguiente tabla, se enumeran todas las funciones de Lakehouse y los permisos asociados a cada función:

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.register
  • 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

¿Qué sigue?