Les rôles
Il n’existe pas de notion de groupes d’utilisateur sous Oracle, mais la notion de rôle, qui permet de nommer un groupe de privilèges. On peut affecter un rôle à un ou n utilisateurs, voir à un rôle.
Il existe un certain nombre de rôles prédéfinis :
Rôle | Privileges associés à ce rôle |
CONNECT | ALTER SESSION, CREATE CLUSTER, CREATE DATABASE LINK, CREATE SEQUENCE, CREATE SESSION, CREATE SYNONYM, CREATE TABLE, CREATE VIEW |
RESOURCE | CREATE CLUSTER, CREATE PROCEDURE, CREATE SEQUENCE, CREATE TABLE, CREATE TRIGGER |
DBA | All system privileges WITH ADMIN OPTION |
EXP_FULL_DATABASE | SELECT ANY TABLE, BACKUP ANY TABLE, INSERT, DELETE, AND UPDATE ON THE TABLES SYS.INCVID, SYS.INCFIL, AND SYS.INCEXP |
IMP_FULL_DATABASE | BECOME USER |
et des roles définis pour les applicatifs
Ainsi on peut créer un rôle qui donne des droits de consultation sur les tables d'un schéma :
-- creation du role
SQL> create role consult_finance;
-- affectation des privileges au role
SQL> grant select on budget to consult_finance;
SQL> grant select on fournisseur to consult_finance;
SQL> grant select on client to consult_finance;
-- cession du role aux utilisateurs
SQL> grant consult_finance to user_finance_1;
SQL> grant consult_finance to user_finance_2;
|