Copyright Oracle Corporation, All rights reserved. 19 Gestion des Privilèges
19-2 Copyright Oracle Corporation, All rights reserved. Objectifs Identification des privilèges systèmes et objets Attribution et révocation de privilèges Contrôle de l ’authentification par le système d ’exploitation ou le fichier mot de passe Identification des privilèges systèmes et objets Attribution et révocation de privilèges Contrôle de l ’authentification par le système d ’exploitation ou le fichier mot de passe
19-3 Copyright Oracle Corporation, All rights reserved. Gestion des Privilèges Deux types de privilèges: SYSTEM: permet aux utilisateurs d ’effectuer des opérations particulière dans la base de données OBJECT: permet aux utilisateurs d ’accéder à un objet particulier et de le manipuler Deux types de privilèges: SYSTEM: permet aux utilisateurs d ’effectuer des opérations particulière dans la base de données OBJECT: permet aux utilisateurs d ’accéder à un objet particulier et de le manipuler
19-4 Copyright Oracle Corporation, All rights reserved. Privilèges Système Il existe environs 80 privilèges systèmes. Le mot-clé ANY dans les privilèges signifie que les utilisateurs possèdent ce privilège dans tous les schémas. La commande GRANT ajoute un privilège à un utilisateur ou un groupe d ’utilisateurs. La commande REVOKE supprime les privilèges. Il existe environs 80 privilèges systèmes. Le mot-clé ANY dans les privilèges signifie que les utilisateurs possèdent ce privilège dans tous les schémas. La commande GRANT ajoute un privilège à un utilisateur ou un groupe d ’utilisateurs. La commande REVOKE supprime les privilèges.
19-5 Copyright Oracle Corporation, All rights reserved. Privilèges système: Exemples CatégoriesExemples INDEXCREATE ANY INDEX ALTER ANY INDEX DROP ANY INDEX TABLE CREATE TABLE CREATE ANY TABLE ALTER ANY TABLE DROP ANY TABLE SELECT ANY TABLE UPDATE ANY TABLE DELETE ANY TABLE SESSIONCREATE SESSION ALTER SESSION RESTRICTED SESSION TABLESPACECREATE TABLESPACE ALTER TABLESPACE DROP TABLESPACE UNLIMITED TABLESPACE
19-6 Copyright Oracle Corporation, All rights reserved. Attribution de Privilèges système GRANT CREATE SESSION, CREATE TABLE TO user1; GRANT CREATE SESSION TO scott WITH ADMIN OPTION; GRANT CREATE SESSION TO scott WITH ADMIN OPTION; WITH ADMIN OPTION : permet d ’accorder à son tour le privilège ou le rôle à d ’autres
19-7 Copyright Oracle Corporation, All rights reserved. Les Privilèges SYSDBA et SYSOPER CatégoriesExemples SYSOPER STARTUP SHUTDOWN ALTER DATABASE OPEN | MOUNT ALTER DATABASE BACKUP CONTROLFILE ALTER TABLESPACE BEGIN/END BACKUP RECOVER DATABASE ALTER DATABASE ARCHIVELOG RESTRICTED SESSION SYSDBASYSOPER privileges WITH ADMIN OPTION CREATE DATABASE RECOVER DATABASE UNTIL
19-8 Copyright Oracle Corporation, All rights reserved. Authentification du fichier de Mots de passe Création du fichier dans le fichier des paramètres : REMOTE_LOGIN_PASSWORDFILE. Initialisez REMOTE_LOGIN_ PASSWORD_FILE=EXCLUSIVE.. (none, utilisation de la sécurité OS; exclusive, utilisation du fichier de mot de passe uniquement pour cette base; share, utilisation du fichier de mot de passe avec d’autres bases) Accordez les privilèges SYSOPER et SYSDBA aux utilisateurs. Interrogez v$pwfile_users pour vérifier le contenu du fichier mots de passe Création du fichier dans le fichier des paramètres : REMOTE_LOGIN_PASSWORDFILE. Initialisez REMOTE_LOGIN_ PASSWORD_FILE=EXCLUSIVE.. (none, utilisation de la sécurité OS; exclusive, utilisation du fichier de mot de passe uniquement pour cette base; share, utilisation du fichier de mot de passe avec d’autres bases) Accordez les privilèges SYSOPER et SYSDBA aux utilisateurs. Interrogez v$pwfile_users pour vérifier le contenu du fichier mots de passe
19-9 Copyright Oracle Corporation, All rights reserved. Affichage des Privilèges Système DBA_SYS_PRIVS GRANTEEGRANTEE PRIVILEGEPRIVILEGE ADMIN OPTIONADMIN OPTION SESSION_PRIVS PRIVILEGEPRIVILEGE Niveau Database Niveau Session
19-10 Copyright Oracle Corporation, All rights reserved. Révocation des privilèges Système REVOKE CREATE TABLE FROM user1; REVOKE CREATE SESSION FROM scott;
19-11 Copyright Oracle Corporation, All rights reserved. USER 1 SCOTT Révocation des privilège système avec WITH ADMIN OPTION DBA GRANT REVOKE USER 1 SCOTT DBA Pas d ’effet de cascade lorsqu ’un privilège système est révoqué.
19-12 Copyright Oracle Corporation, All rights reserved. Privilèges Objet Priv. ObjetTablevuesSéquenceProcédure ALTER DELETE EXECUTE INDEX INSERT REFERENCES SELECT UPDATE Priv. ObjetTablevuesSéquenceProcédure ALTER DELETE EXECUTE INDEX INSERT REFERENCES SELECT UPDATE Ce tableau recense les privilèges objet qui peuvent être accordés sur chaque objet.
19-13 Copyright Oracle Corporation, All rights reserved. Attribution de privilèges Objet GRANT EXECUTE ON dbms_pipe TO public; GRANT UPDATE(ename,sal) ON emp TO user1 WITH GRANT OPTION;
19-14 Copyright Oracle Corporation, All rights reserved. DBA_TAB_PRIVS Affichage des Privilèges Objet DBA_COL_PRIVS (attributs) GRANTEE OWNER TABLE_NAME GRANTOR PRIVILEGE GRANTABLE GRANTEE OWNER TABLE_NAME COLUMN_NAME GRANTOR PRIVILEGE GRANTABLE
19-15 Copyright Oracle Corporation, All rights reserved. Révocation des Privilèges Objet REVOKE execute ON dbms_pipe FROM scott;
19-16 Copyright Oracle Corporation, All rights reserved. GRANT REVOKE Révocation des Privilèges avec WITH GRANT OPTION SCOTT USER 1 USER 2
19-17 Copyright Oracle Corporation, All rights reserved. RESULTAT Révocation des Privilèges avec WITH GRANT OPTION SCOTT USER 1 USER 2