Académique Documents
Professionnel Documents
Culture Documents
Un système sécurisé garantit la confidentialité des données qu'il contient. La sécurité englobe plusieurs
aspects :
- Limiter l'accès aux données et aux services
- Authentifier les utilisateurs
- Surveiller les activités suspectes
Appliquer le principe du moindre privilège
Protéger le dictionnaire de données
Révoquer les privilèges non nécessaires de PUBLIC
Limiter les répertoires accessibles par les utilisateurs
Limiter les utilisateurs dotés de privilèges d'administration
Limiter l'authentification à distance auprès de la base de données
Le dictionnaire de données oracle
- Organisé comme une base de données (ensemble de tables)
- La plupart de ses tables ne sont pas modifiables par les utilisateurs (seul l’administrateur de la base
système, a accès à ces dernières) .
Le contenu de ces tables est accessible par l’intermédiaire des vues. La vue DICTIONARY permet d’avoir une
liste complète des tables, vues et synonymes du dictionnaire
- Cette configuration empêche les utilisateurs dotés du privilège système ANY TABLE d'accéder aux tables
de base du dictionnaire de données.
- La valeur FALSE empêche également l'utilisateur SYS de se connecter sous un autre compte que SYSDBA.
- La valeur par défaut de ce paramètre est FALSE. S'il s'avère qu'il a la valeur TRU
- Révoquer les privilèges non nécessaires de PUBLIC
- Révoquez tous les privilèges et rôles non nécessaires du groupe d'utilisateurs PUBLIC du serveur de base
de données.
- De nombreux packages intégrés accordent le privilège EXECUTE à PUBLIC.
- Le privilège d'exécution sur les packages suivants doit toujours être révoqué de PUBLIC :
UTL_SMTP
UTL_TCP
UTL_HTTP
UTL_FILE
DBMS_OBFUSCATION_TOOLKIT
Exemple : SQL> REVOKE execute ON utl_file FROM PUBLIC;
2. Privilèges d’accès
Oracle offre une multitude de privilèges d’accès aux données pour :
- augmenter la sécurité des données
- mieux gérer les ressources
- mieux gérer les utilisateurs
- regrouper les privilèges (rôles)
On distingue deux familles de privilèges :
privilèges systèmes
privilèges objets
Commande GRANT
La commande d’octroi de privilèges objets est la suivante :
GRANT privilège_objet [ (colonne ,...) ] ,...
ON [schéma.]objet
TO {utilisateur | rôle |PUBLIC},...
[WITH GRANT OPTION]
Suppression de privilèges
Privilèges systèmes
REVOKE {privilège_système | rôle} , ...
FROM {utilisateur|rôle|PUBLIC},...
Privilèges objets
REVOKE privilège_objet ,...
ON [schéma.]objet
FROM {utilisateur|rôle|PUBLIC} ,...
[CASCADE CONSTRAINTS]
L’option CASCADE CONSTRAINTS supprime toutes les contraintes d’intégrité référentielles définies
sur les objets pour lesquels on retire les privilèges.
3. Les Rôles
- Un rôle est une agrégation de droits d’accès aux données et de privilèges système.
- Un rôle renforce la sécurité de données et réduit significativement la difficulté et le coût de son
administration.
- Un rôle peut être :
créé
modifié
supprimé
activé ou désactivé
- Oracle crée automatiquement des rôles qu’il attribue à SYS et SYSTEM.
- Ces rôles sont des privilèges système des anciennes versions :
CONNECT,
RESOURCE
DBA.
- L’importation et l’exportation de données ont été mises dans les rôles respectifs :
IMP_FULL_DATABASE
EXP_FULL_DATABASE