Création des rôles

MéthodeNous allons maintenant créer les deux rôles de groupe

Ajouter le rôle de groupe ecrivainsXX :

  • clic droit sur Rôles de connexion / groupe

  • puis Ajouter un rôle de groupe...

Rappel : Un rôle de connexion ne se distingue d'un rôle de groupe que par l'activation de la possibilité 'connexion autorisé' (LOGIN en SQL)

Vérifier dans l'onglet SQL que vous avez (remplacer XX par votre numéro de stagiaire) :

CREATE ROLE ecrivainsXX WITH

NOLOGIN

NOSUPERUSER

NOCREATEDB

NOCREATEROLE

INHERIT

NOREPLICATION

CONNECTION LIMIT -1;

COMMENT ON ROLE ecrivains00 IS 'droits d''écriture dans le schema producteur de la base droit00';

IS 'droit d''ecriture dans le schema producteur';

On utilise ici très peu les options de commande CREATE ROLE que l'on pourra quand même relire au passage...

De même, créer le rôle lecteurXX :

CREATE ROLE lecteurXX WITH

NOLOGIN

NOSUPERUSER

NOCREATEDB

NOCREATEROLE

INHERIT

NOREPLICATION

CONNECTION LIMIT -1;

MéthodeRôles de connexion

Pour l'instant les rôles lecteurXX et ecrivainsXX sont identiques et n'accordent aucun droit spécifique.

Nous allons maintenant créer deux rôles de connexion :

  • garyXX qui appartiendra au groupe lecteurXX et ecrivainsXX,

  • michaelXX qui appartiendra au groupe lecteurXX (rappel : remplacer XX par le numéro qui vous a été attribué)

  • Faire clic droit sur rôle de connexion / groupe

  • puis créer un rôle en activant dans l'onglet droits 'connexion autorisé'

  • Lui donner un mot de passe dans l'onglet Définition (ex : garyXX) (La saisie d'un mot de passe est obligatoire pour définir un rôle de connexion).

  • Laisser les autres paramètres par défaut dans l'onglet Droits (hérite des droits des rôles parents activé).

  • Indiquez dans l'onglet appartenance du rôle qu'il est membre de ecrivainsXX et de lecteurXX

La syntaxe SQL dans l'onglet SQL doit être :

CREATE ROLE gary00 WITH

LOGIN

NOSUPERUSER

NOCREATEDB

NOCREATEROLE

INHERIT

NOREPLICATION

CONNECTION LIMIT -1

PASSWORD 'xxxxxx';

GRANT ecrivains00, lecteur00 TO gary00;

COMMENT ON ROLE gary00 IS 'gary Scherman est le fondateur du projet QGIS !';

De même créer le rôle de connexion michaelXX (Michael Stonebraker est le fondateur du projet PostgreSQL) et indiquer qu'il est membre du groupe lecteurXX.