PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 16.6 » Internes » Catalogues système » pg_init_privs

53.28. pg_init_privs #

Le catalogue pg_init_privs enregistre des informations sur les droits initiaux des objets dans le système. Il existe une entrée pour chaque objet de la base qui n'a pas sa configuration initiale des droits.

Les objets peuvent avoir des droits initiaux, soit en ayant ces droits configurés quand le système est initialisé (par initdb) soit quand l'objet est créé lors d'un CREATE EXTENSION et que le script de l'extension configure les droits initiaux en utilisant la commande GRANT. Notez que le système gère automatiquement l'enregistrement des droits lors de l'exécution du script de l'extension et que les auteurs d'extension ont juste besoin d'utiliser les commandes GRANT et REVOKE dans leur scripts pour que les droits soient enregistrés. La colonne privtype indique si le droit initial a été configuré par initdb ou par une commande CREATE EXTENSION.

Les objects qui ont des droits initiaux configurés par initdb auront des entrées où privtype vaut 'i' alors que les objets qui ont des droits initiaux configurés par CREATE EXTENSION auront des entrées dont privtype vaut 'e'.

Tableau 53.28. Colonnes de pg_init_privs

Type

Description

objoid oid (référence toute colonne OID)

L'OID de l'objet spécifié

classoid oid (référence pg_class.oid)

L'OID du catalogue spécifique où se trouve l'objet

objsubid int4

Pour une colonne de table, c'est le numéro de la colonne (objoid et classoid font référence à la table elle-même). Pour tous les autres types d'objet, cette colonne vaut zéro.

privtype char

Un code définissant le type de droit initial pour cet objet ; voir le texte.

initprivs aclitem[]

Les droits d'accès initiaux ; voir Section 5.7 pour les détails