Esta página define as características, restrições e o uso pretendido das três funções predefinidas do sistema que o controle de acesso refinado oferece para cada banco de dados. Cada função do sistema tem um conjunto diferente de privilégios, que não pode ser revogado. Essas informações se aplicam a bancos de dados com dialeto GoogleSQL e PostgreSQL.
Função do sistema public
Todos os usuários do controle de acesso detalhado têm a associação do IAM em
publicpor padrão.Todos os papéis de banco de dados herdam privilégios dessa função.
Inicialmente,
publicnão tem privilégios, mas você pode conceder privilégios a ele. Se você conceder um privilégio apublic, ele estará disponível para todos os papéis do banco de dados, incluindo os criados depois.
Função do sistema spanner_info_reader
Essa função tem o privilégio
SELECTnas visualizaçõesINFORMATION_SCHEMApara bancos de dados com dialeto GoogleSQL einformation_schemapara bancos de dados com dialeto PostgreSQL.Não é possível conceder outros privilégios a
spanner_info_reader.Conceda a associação a esta 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).
Função do sistema spanner_sys_reader
Esse papel tem o privilégio
SELECTnas tabelasSPANNER_SYS.Não é possível conceder outros privilégios a
spanner_sys_reader.Conceda a associação a essa função a qualquer papel do 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.As funções do sistema não podem ser membros de outras funções do 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 associação ao papel
publicaos papéis do banco de dados. Por exemplo, a seguinte instrução do GoogleSQL também é inválida:GRANT ROLE public TO ROLE pii_access;No entanto, é possível conceder a associação nos papéis
spanner_info_readerespanner_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;
A seguir
- Saiba como configurar um controle de acesso minucioso.
- Saiba mais sobre o controle de acesso detalhado.