asgard_synthese_role_obj
z_asgard.asgard_synthese_role_obj(obj_oid oid, obj_type text, n_role regrole)
La fonction asgard_synthese_role_obj
renvoie une table contenant une liste de commandes GRANT
et REVOKE
permettant de recréer les droits d’un rôle donné sur un objet de type table, table étrangère, partition de table, vue, vue matérialisée, séquence, routine (fonctions, dont agrégats, et procédures) ou type (dont domaines).
Si le rôle considéré est le producteur[1] du schéma, supposé détenir tous les droits sur celui-ci, ce sont les privilèges révoqués qui sont listés et non les privilèges disponibles. Des commandes GRANT
restent possibles en cas de révocation d’un privilège sur une table (ou équivalent) puis d’octroi de ce même privilège sur un champ.
Schéma⚓
z_asgard
Arguments⚓
obj_oid
est l’identifiant PostgreSQL de l’objet à considérer (pour une table, par exemple, peut être obtenu via 'nom_table'::regclass::oid) ;obj_type
est une chaîne de caractères indiquant le type de l’objet ;n_role
est un nom de rôle valide, casté enregrole
(ex : '"jon.snow"'::regrole).
Valeurs autorisées pour obj_type
:
table | partitioned table | view | materialized view | foreign table | sequence |
function | aggregate | procedure | routine | type | domain |