Projet

Général

Profil

Actions

Evolution #361

fermé

Pseudo-attribut "Gestion des schémas"

Ajouté par Leslie Lemaire il y a environ 4 ans. Mis à jour il y a environ 4 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Début:
05/10/2020
Echéance:
% réalisé:

100%

Temps estimé:
# ref:

Description

Case à cocher supplémentaire à faire apparaître dans le formulaire de l'onglet "Rôles", rubrique "Attributs", pour les rôles de groupe uniquement .
Elle doit être visible dans le formulaire simplifié avec la case Gestion des rôles, le reste peut aller dans le formulaire complet.

Nom : "Gestion des schémas".
La case apparaît cochées si et seulement si db_create et asgard_edi valent tous les deux true (cf. requête remontant les informations sur les rôles).

Lorsque z_asgard n'a pas de rôle éditeur ou n'est pas référencé (autrement dit SELECT editeur FROM z_asgard.gestion_schema_usr WHERE nom_schema = 'z_asgard' ; ne renvoie rien), la case (décochée) est grisée/désactivée. Une alternative sera de laisser la case activable et d'envoyer des messages d'erreurs pour expliquer à l'ADL ce qu'il doit faire pour que ça fonctionne, mais je ne suis pas sûre que ce soit plus simple que de l'expliquer proprement dans la documentation.

Lorsque l'ADL coche la case et appuie sur Appliquer, on envoie :

GRANT CREATE ON DATABASE #nom_de_la_base# TO #role_courant# ;
GRANT #editeur_schema_z_asgard# TO #role_courant# ;

Lorsque l'ADL décoche la case et appuie sur Appliquer, on envoie :

REVOKE CREATE ON DATABASE #nom_de_la_base# FROM #role_courant# ;
REVOKE #editeur_schema_z_asgard# FROM #role_courant# ;

NB. dans les deux cas, la deuxième requête ne doit pas être envoyée si #role_courant# = #editeur_schema_z_asgard#.

Actions

Formats disponibles : Atom PDF