Accès à la vue

La vue utilisateur[1] gestion_schema_usr est accessible en lecture et en écriture à tous les rôles du serveur par l'intermédiaire du pseudo-rôle public. Cela ne signifie toutefois pas que tous les utilisateurs du serveur pourront visualiser et modifier à travers elle l’ensemble des informations contenues dans la table gestion_schema.

En premier lieu, la vue gestion_schema_usr ne reprend pas tous les champs de gestion_schema, mais seulement ceux qui ont vocation à être alimentés manuellement.

En second lieu, gestion_schema_usr est définie de manière à n’afficher que les lignes sur lesquelles l’utilisateur est légitime à intervenir :

  • les schémas existants[2] si et seulement s’il est membre de leur rôle producteur[3] ;

  • les schémas pré-définis[4] (non créés) si et seulement si l’utilisateur est lui-même habilité à créer des schémas ou s’il a explicitement endossé le rôle désigné comme futur producteur, par exemple par une commande SET ROLE %producteur, ce qui requiert bien entendu que l’utilisateur soit membre dudit rôle producteur.

Les membres de g_admin voient quoi qu’il arrive tous les enregistrements de la table de gestion.

À noter que, si un utilisateur lambda souhaite obtenir des informations sur les objets existants, les propriétaires et les droits, elles sont accessibles à tous via la vue z_asgard.gestion_schema_read_only, ainsi que dans les schémas pg_catalog et information_schema.