Para administrar el control de acceso de un lakehouse sin límites, se deben agregar usuarios a un proyecto de Google Cloud y asignar los roles adecuados. 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 otorgar acceso más detallado a recursos específicos de Google Cloud y evita el acceso no deseado a otros recursos. IAM te permite adoptar el principio de seguridad de privilegio mínimo, de manera que solo otorgues el acceso necesario a tus recursos dentro de Lakehouse.
IAM también te permite controlar quién (una identidad) tiene qué permisos (roles) para qué recursos a través de la configuración de políticas de IAM.
Las políticas de IAM otorgan roles específicos a un miembro del proyecto, lo que le otorga a la identidad ciertos permisos. Por ejemplo, para un recurso determinado, como
un proyecto, puedes asignar el rol 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 los roles básicos que se otorgan 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 con roles 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 recurso, debes especificar qué funciones le otorgas. IAM proporciona tres tipos de roles: roles predefinidos, roles básicos y roles personalizados.
Para ver una lista de las capacidades de cada rol de Lakehouse y los métodos de la API a los que un rol específico otorga permiso, consulta Roles de IAM de Lakehouse sin bordes.
Para otros tipos de miembros, como cuentas de servicio y grupos, consulta la referencia de vinculación de políticas.
Cuentas de servicio
Cuando llamas a las APIs de Lakehouse para realizar ciertas acciones en un proyecto en el que se encuentra tu servicio, Lakehouse realiza estas acciones en tu nombre con una cuenta de servicio del agente de servicio por catálogo. Algunos ejemplos incluyen el acceso a buckets de Cloud Storage para la venta de credenciales y la recuperación de datos secretos de Secret Manager para el acceso a datos multinube.
Políticas de IAM para los recursos
Puedes otorgar acceso a los recursos de Lakehouse adjuntando políticas de IAM directamente a esos recursos, como un servicio de Lakehouse. Una política de IAM te permite administrar roles de IAM en esos recursos en lugar de administrar roles a nivel del proyecto, o además de hacerlo. Esto te brinda flexibilidad para aplicar el principio de privilegio mínimo, que consiste en 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 consola de Google Cloud , la API de Identity and Access Management o Google Cloud CLI.
- Para la consola de Google Cloud , consulta Control de acceso con la consola deGoogle Cloud .
- Para la API, consulta Control de acceso a través de la API.
- Para obtener información sobre Google Cloud CLI, consulta Control de acceso con Google Cloud CLI.
¿Qué sigue?
- Obtén más información sobre los roles de IAM de Lakehouse.
- Aprende a configurar políticas a nivel de proyecto.