asgard_is_relation_owner
z_asgard.asgard_is_relation_owner(nom_schema text, nom_relation text [, nom_role text DEFAULT current_user ])
La fonction asgard_is_relation_owner
détermine si un rôle est membre du propriétaire d'une table, vue ou autre relation (avec héritage de ses droits).
Schéma⚓
z_asgard
Arguments⚓
nom_schema
est une chaîne de caractères correspondant au nom du schéma contenant la relation.nom_relation
est une chaîne de caractères correspondant au nom de la relation.[optionnel]
nom_role
est le nom du rôle dont on veut vérifier les permissions. Si non renseigné, la fonction testera l'utilisateur courant.
Tous les arguments sont en écriture naturelle, sans les guillemets des identifiants PostgreSQL.
Résultat⚓
True
si le rôle est membre du propriétaire de la relation. False
sinon, incluant les cas où le rôle ou la relation n'existe pas.
Exemple :
Pour savoir si le rôle g_admin
est membre du propriétaire de la table layer_styles
de QGIS :
SELECT z_asgard.asgard_is_relation_owner('public', 'layer_styles', 'g_admin') ;
Même question avec l'utilisateur courant :
SELECT z_asgard.asgard_is_relation_owner('public', 'layer_styles') ;