O catálogo pg_default_acl armazena os privilégios iniciais a serem atribuídos a objetos recém-criados.
Tabela 52.17. Colunas de pg_default_acl
Coluna Tipo de dados Descrição |
|---|
Identificador da linha |
OID da função de banco de dados (role) associada a esta entrada |
OID do espaço de nomes associado a esta entrada, ou zero se nenhum |
O tipo de objeto para o qual esta entrada se destina:
|
Privilégios de acesso que este tipo de objeto deve ter na criação |
Cada entrada de pg_default_acl
mostra os privilégios iniciais a serem atribuídos a um objeto
pertencente ao usuário indicado.
No momento existem dois tipos de entrada: entradas “globais”
com defaclnamespace = zero, e entradas
“per-schema” que fazem referência a um esquema específico.
Se estiver presente uma entrada global, então ela
substitui os privilégios padrão normais
conectados para o tipo de objeto.
Uma entrada por esquema, se presente, representa os privilégios a
serem adicionados aos privilégios padrão
globais ou estabelecidos.
Note-se que, quando uma entrada ACL em outro catálogo é nula, ela é considerada como representando os privilégios padrão fixos para seu objeto, e não o que quer que esteja em pg_default_acl no momento. O catálogo pg_default_acl é consultado apenas durante a criação do objeto.
Exemplo 52.10. Exemplo do tradutor
Privilégios iniciais a serem atribuídos a objetos recém-criados
Uso do catálogo pg_default_acl para mostrar os privilégios iniciais a serem atribuídos a objetos recém-criados. Para isto é usado o esquema tutorial, que tem seus privilégios padrão alterados para permitir a usuária ana ter acesso de leitura, inserção, exclusão e atualização em todas as novas tabelas do esquema.
cristina=> ALTER DEFAULT PRIVILEGES IN SCHEMA tutorial
cristina-> GRANT SELECT, INSERT, DELETE, UPDATE ON TABLES TO ana;
ALTER DEFAULT PRIVILEGES
cristina=> SELECT oid,
cristina-> defaclrole::regrole::text,
cristina-> defaclnamespace::regnamespace::text,
cristina-> defaclobjtype,
cristina-> defaclacl
cristina-> FROM pg_default_acl\gx
-[ RECORD 1 ]---+--------------------
oid | 117209
defaclrole | cristina
defaclnamespace | tutorial
defaclobjtype | r
defaclacl | {ana=arwd/cristina}