En esta página se definen las características, las restricciones y el uso previsto de los tres roles de sistema predefinidos que proporciona el control de acceso pormenorizado para cada base de datos. Cada rol del sistema tiene un conjunto de privilegios diferente que no se puede revocar. Esta información se aplica tanto a las bases de datos con dialecto GoogleSQL como a las bases de datos con dialecto PostgreSQL.
public
función del sistema
Todos los usuarios con control de acceso pormenorizado tienen de forma predeterminada la pertenencia a gestión de identidades y accesos en
public
.Todos los roles de base de datos heredan privilegios de este rol.
Al principio,
public
no tiene ningún privilegio, pero puedes concedérselos. Si concede un privilegio apublic
, estará disponible para todos los roles de base de datos, incluidos los que se creen posteriormente.
spanner_info_reader
función del sistema
Este rol tiene el privilegio
SELECT
en las vistasINFORMATION_SCHEMA
de las bases de datos con dialecto GoogleSQL y en las vistasinformation_schema
de las bases de datos con dialecto PostgreSQL.No puedes conceder ningún otro privilegio a
spanner_info_reader
.Concede la pertenencia a este rol a cualquier rol de base de datos que necesite tener acceso de lectura sin filtrar a las vistas
INFORMATION_SCHEMA
(bases de datos con dialecto GoogleSQL) o a las vistasinformation_schema
(bases de datos con dialecto PostgreSQL).
spanner_sys_reader
función del sistema
Este rol tiene el privilegio
SELECT
en las tablasSPANNER_SYS
.No puedes conceder ningún otro privilegio a
spanner_sys_reader
.Concede la pertenencia a 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 eliminar un rol del sistema con una instrucción
DROP ROLE
.Los roles del sistema no pueden ser miembros de otros roles de 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 conceder la pertenencia al rol
public
a tus roles de base de datos. Por ejemplo, la siguiente instrucción de GoogleSQL también es no válida:GRANT ROLE public TO ROLE pii_access;
Sin embargo, puedes conceder la pertenencia a los roles
spanner_info_reader
yspanner_sys_reader
. Por ejemplo, las siguientes son instrucciones 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;
Siguientes pasos
- Consulta cómo configurar el control de acceso granular.
- Consulta Información sobre el control de acceso pormenorizado.