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

51.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 51.28. Colonnes de pg_init_privs

NomTypeRéférencesDescription
objoidoidToute colonne OIDL'OID de l'objet spécifié
classoidoidpg_class.oidL'OID du catalogue spécifique où se trouve l'objet
objsubidint4  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.
privtypechar  Un code définissant le type de droit initial pour cet objet ; voir le texte.
initprivsaclitem[]  Les droits d'accès initiaux ; voir Section 5.7 pour les détails