Para administrar el control de acceso de Lakehouse para Apache Iceberg , debes agregar usuarios a un Google Cloud proyecto y asignar las funciones adecuadas. De forma predeterminada, los proyectos otorgan acceso solo al creador original. Los usuarios adicionales no pueden acceder a los recursos hasta que se los agregue como miembros del proyecto o se los vincule a recursos específicos.
¿Qué es IAM?
Google Cloud ofrece Identity and Access Management (IAM), que te permite brindar acceso más detallado a recursos específicos y evita el acceso no deseado a otros recursos. Google Cloud IAM te permite adoptar el principio de seguridad de privilegio mínimo, de manera que solo otorgas el acceso necesario a tus recursos dentro de * Lakehouse*.
IAM también te permite controlar quién (una identidad) tiene qué permisos (funciones) para qué recursos mediante la configuración de políticas de IAM.
Las políticas de IAM otorgan funciones específicas a un miembro del proyecto, lo que le otorga ciertos permisos a la identidad. Por ejemplo, para un recurso determinado, como un proyecto, puedes asignar la función roles/biglake.admin a una Cuenta de Google y esa cuenta puede controlar los recursos de Lakehouse en el proyecto, pero no puede administrar otros recursos. También puedes usar IAM para administrar las funciones básicas otorgadas a los miembros del equipo del proyecto.
Opciones de control de acceso para usuarios
Para permitir que los usuarios creen y administren tus recursos de Lakehouse, puedes agregarlos como miembros del equipo a tu proyecto o a recursos específicos, y otorgarles permisos mediante funciones de IAM.
Un miembro del equipo puede ser un usuario individual con una Cuenta de Google válida, un Grupo de Google, una cuenta de servicio o un dominio de Google Workspace. Cuando agregas un miembro del equipo a un proyecto o a un recurso, debes especificar qué funciones le otorgas. IAM proporciona tres tipos de funciones: predefinidas, básicas y personalizadas.
Para ver una lista de las capacidades de cada función de Lakehouse y los métodos de API a los que una función específica otorga permiso, consulta Funciones de IAM de Lakehouse.
Para otros tipos de miembros, como cuentas de servicio y grupos, consulta la Policy binding reference.
Cuentas de servicio
Cuando llamas a las APIs de Lakehouse para realizar acciones en un proyecto
en el que se encuentra tu servicio, Lakehouse realiza estas acciones
en tu nombre mediante una cuenta de servicio de agente de servicio por catálogo service
account.
El catálogo de tiempo de ejecución de Lakehouse usa estas cuentas de servicio y se les otorga la función roles/biglake.serviceAgent en tu proyecto.
Políticas de IAM para los recursos
Puedes otorgar acceso a los recursos de Lakehouse si adjuntas las políticas de IAM directamente a esos recursos, como un servicio de Lakehouse. Una política de IAM te permite administrar funciones de IAM en esos recursos en lugar de administrar funciones a nivel de proyecto, o además de hacerlo. Esto te brinda flexibilidad para aplicar el principio de privilegio mínimo, que significa otorgar acceso solo a los recursos específicos que los colaboradores necesitan para hacer su trabajo.
Los recursos también heredan las políticas de sus recursos superiores. Si estableces una política a nivel de proyecto, todos sus recursos secundarios la heredan. La política vigente para un recurso es la unión de la política establecida en ese recurso y la política heredada de una jerarquía superior. Para obtener más información, consulta la jerarquía de políticas de IAM.
Puedes obtener y configurar políticas de IAM con la Google Cloud consola, la API de Identity and Access Management o Google Cloud CLI.
- Para la Google Cloud consola, consulta Control de acceso con la Google Cloud consola.
- Para la API, consulta Control de acceso a través de la API.
- Para Google Cloud CLI, consulta Control de acceso con Google Cloud CLI.
¿Qué sigue?
- Obtén más información sobre las funciones de IAM de Lakehouse roles.
- Aprende a configurar políticas a nivel de proyecto.