Nesta página, definimos as características, as restrições e o uso pretendido dos três papéis de sistema predefinidos que o controle de acesso granular oferece para cada banco de dados. Cada função do sistema tem conjunto diferente de privilégios, que não podem ser revogados.
public
Todos os usuários do controle de acesso detalhado têm a associação do IAM em
public
por padrão.Todos os papéis de banco de dados herdam privilégios dessa função.
Inicialmente,
public
não tem privilégios, mas você pode conceder privilégios a ele. Se você conceder um privilégio apublic
, ele vai ficar disponível para todos os papéis de banco de dados, incluindo aqueles criados posteriormente.
spanner_info_reader
Este papel tem o privilégio
SELECT
em visualizaçõesINFORMATION_SCHEMA
para bancos de dados do dialeto GoogleSQL e Visualizações deinformation_schema
para bancos de dados de dialeto PostgreSQL.Não será possível conceder outros privilégios a
spanner_info_reader
.Conceda a participação nesta função a qualquer papel do banco de dados que precise ter acesso de leitura não filtrado às visualizações
INFORMATION_SCHEMA
(bancos de dados do dialeto GoogleSQL) ou às visualizaçõesinformation_schema
(bancos de dados do dialeto PostgreSQL).
spanner_sys_reader
Este papel tem o privilégio
SELECT
emSPANNER_SYS
tabelas.Não será possível conceder outros privilégios a
spanner_sys_reader
.Conceda a associação neste papel a qualquer papel de banco de dados que precise ter acesso de leitura. ao esquema
SPANNER_SYS
.
Restrições em papéis do sistema
Não é possível excluir uma função do sistema usando uma instrução
DROP ROLE
.Os papéis do sistema não podem ser membros de outros papéis de banco de dados. Ou seja, a seguinte instrução do GoogleSQL é inválida:
GRANT ROLE pii_access TO ROLE spanner_info_reader;
Não é possível conceder a assinatura no seguinte país:
public
aos papéis de banco de dados. Por exemplo, o comando a seguir também é inválida:GRANT ROLE public TO ROLE pii_access;
No entanto, é possível conceder a participação nos papéis
spanner_info_reader
espanner_sys_reader
. Por exemplo, as declarações a seguir são 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;
Mais informações
Veja mais informações em: