Control de acceso a Bigtable con IAM

En esta página, se describen las opciones de control de acceso en Bigtable.

Descripción general

Bigtable usa Identity and Access Management (IAM) para el control de acceso. Para controlar quién tiene qué acceso a qué recursos, establece políticas de IAM en los recursos.

Los recursos de Bigtable se organizan en una jerarquía. Un proyecto deGoogle Cloud es el elemento superior de una instancia de Bigtable, que es el elemento superior de sus clústeres y tablas. Una tabla es el elemento superior de sus vistas autorizadas, mientras que un clúster es el elemento superior de sus copias de seguridad. Puedes configurar el control de acceso en cada nivel.

Si tienes permisos en un nivel, automáticamente tendrás permisos en los niveles inferiores. Por ejemplo, si tienes acceso a nivel del proyecto, también lo tendrás a las instancias, los clústeres, las tablas, las vistas autorizadas y las vistas materializadas continuas de ese proyecto. Si se te otorga acceso a una vista autorizada o a una vista materializada continua, no tendrás acceso automáticamente a los recursos de nivel superior que sean recursos principales de la vista autorizada o de la vista materializada continua, como la tabla y la instancia. Este comportamiento se denomina herencia de políticas.

Para obtener más información sobre la jerarquía de IAM, consulta la herencia de políticas de IAM.

Estos son algunos ejemplos del uso del control de acceso a nivel del proyecto:

  • Permitir a cualquier usuario leer las tablas del proyecto, pero no escribir en ellas.
  • Permitir a cualquier usuario leer las tablas del proyecto y escribir en ellas, pero no administrar las instancias.
  • Permitir a cualquier usuario leer las tablas del proyecto, escribir en ellas y administrar las instancias.

Estos son algunos ejemplos del uso del control de acceso a nivel de la instancia:

  • Permitir que un usuario lea desde cualquier tabla en una sola instancia de un proyecto de varias instancias
  • Permitir que un usuario administre solo una instancia en un proyecto de varias instancias

Los siguientes son algunos ejemplos del uso del control de acceso a nivel de la tabla:

  • Permitir que un usuario escriba en una tabla, pero que no pueda leerla
  • Permitir que un usuario lea una tabla, pero que no pueda escribir en ella

Los siguientes son algunos ejemplos del uso del control de acceso a nivel de la copia de seguridad:

  • Impedir que un usuario borre una copia de seguridad
  • Impedir que un usuario restablezca la copia de seguridad

Los siguientes son algunos ejemplos del uso del control de acceso a nivel de la vista autorizada:

  • Permite que un usuario lea una vista autorizada, pero no la modifique.
  • Permite que un usuario vea datos de solo una de las múltiples vistas autorizadas de una tabla.

Los siguientes son algunos ejemplos del uso del control de acceso a nivel de la vista materializada continua:

  • Permitir que un usuario lea una vista materializada continua, pero no modifique la tabla subyacente

Para obtener más información sobre IAM y sus funciones, consulta la guía para desarrolladores de IAM. En particular, consulta Otorga, cambia y revoca el acceso.

En Bigtable, no puedes otorgar acceso a los siguientes tipos de principales:

Para obtener una lista de los permisos y las funciones compatibles con Bigtable, consulta las siguientes secciones.

Habilita la API de Bigtable

Para ver y asignar roles de IAM de Bigtable, debes habilitar la API de Bigtable en tu proyecto. Hasta que habilites la API, los roles de Bigtable no aparecerán en laGoogle Cloud consola.

Roles necesarios para habilitar las APIs

Para habilitar APIs, necesitas el permiso serviceusage.services.enable. Si creaste el proyecto, es probable que ya tengas este permiso a través del rol de propietario (roles/owner). De lo contrario, puedes obtener este permiso a través del rol de administrador de Service Usage (