Roles del sistema de control de acceso detallado

En esta página, se definen las características, las restricciones y el uso previsto de los tres roles del sistema predefinidos que proporciona el control de acceso detallado para cada base de datos. Cada rol del sistema tiene un conjunto diferente de privilegios, que no se pueden revocar.

public

  • Todos los usuarios del control de acceso detallado tienen membresía de IAM en public de forma predeterminada.

  • Todos los roles de base de datos heredan privilegios de este rol.

  • Inicialmente, public no tiene privilegios, pero puedes otorgarle privilegios. Si otorgas un privilegio a public, estará disponible para todos los roles de la base de datos, incluidos los que se creen después.

spanner_info_reader

  • Este rol tiene el privilegio SELECT en las vistas INFORMATION_SCHEMA para bases de datos de dialecto GoogleSQL y en las vistas information_schema para bases de datos de dialecto PostgreSQL.

  • No puedes otorgar ningún otro privilegio a spanner_info_reader.

  • Otorga membresía en este rol a cualquier rol de base de datos que necesite acceso de lectura sin filtrar a las vistas INFORMATION_SCHEMA (bases de datos de dialecto GoogleSQL) o a las vistas information_schema (bases de datos de dialecto PostgreSQL).

spanner_sys_reader

  • Este rol tiene el privilegio SELECT en las tablas SPANNER_SYS.

  • No puedes otorgar ningún otro privilegio a spanner_sys_reader.

  • Otorga la membresía en este rol a cualquier rol de base de datos que deba tener acceso de lectura al esquema SPANNER_SYS.

Restricciones en los roles del sistema

  • No puedes borrar un rol del sistema con una sentencia DROP ROLE.

  • Los roles del sistema no pueden ser miembros de otros roles de la base de datos. Es decir, la siguiente instrucción de GoogleSQL no es válida:

    GRANT ROLE pii_access TO ROLE spanner_info_reader;

  • No puedes otorgar membresía en el rol public a tus roles de base de datos. Por ejemplo, la siguiente sentencia de GoogleSQL tampoco es válida:

    GRANT ROLE public TO ROLE pii_access;

    Sin embargo, puedes otorgar membresías en los roles spanner_info_reader y spanner_sys_reader. Por ejemplo, las siguientes son sentencias válidas.

    GoogleSQL

    GRANT ROLE spanner_info_reader TO ROLE pii_access;
    GRANT ROLE spanner_sys_reader TO ROLE pii_access;
    

    PostgreSQL

    GRANT spanner_info_reader TO pii_access;
    GRANT spanner_sys_reader TO pii_access;
    

Más información

Para obtener más información, consulte: