Sommaire

Utilisation des rôles

Un rôle est un groupe auquel on va attribuer les mêmes droits. Au lieu d’attribuer les droits individuellement à chaque utilisateur, on peut créer des groupes qui auront des droits et ensuite affecter les utilisateurs dans un groupe.

Cette notion de rôle n’existe pas à l’heure actuelle dans MySQL.

Syntaxe Oracle

CREATE ROLE <nom rôle>;

Exemple Oracle

CREATE ROLE CONTROLE_GESTION; 

Puis, il faut attribuer des droits au rôle que l’on vient de créer de la même façon que pour un utilisateur lambda.

GRANT ALL PRIVILEGES ON CLIENT TO CONTROLE_GESTION; 
GRANT ALL PRIVILEGES ON FOURNISSEUR TO CONTROLE_GESTION; 
GRANT ALL PRIVILEGES ON FACTURE TO CONTROLE_GESTION;

Pour SQL Server

GRANT UPDATE ON FOURNISSEUR TO CONTROLE_GESTION

Il faut ensuite attribuer ce rôle aux utilisateurs :

GRANT CONTROLE_GESTION TO ASMITH;  
GRANT CONTROLE_GESTION TO BMARTIN;  
etc ...
 
exec sp_addrolemember [CONTROLE_GESTION], ASMITH;

La notion de rôle est assez intéressante dans les sites avec beaucoup d’utilisateurs, elle permet de simplifier la gestion des différents profils.

Il faut bien définir en amont les différents rôles dans l’utilisation de la base de données et dans les applications existantes et ensuite classer les utilisateurs par rôle. À chaque nouvel arrivant, il suffit de créer son user et de lui attribuer un rôle.

Il existe également ...