Vous êtes sur la page 1sur 3

Institut Supérieur d’Informatique Année universitaire : 2021-2022

et de Mathématiques de Monastir Filière : LF2INF


Département d'Informatique Enseignante : Aljia BOUZIDI

Administration Base de Données


Oracle
Correction du TP N° 5
Exercice1
1. System32> sqlplus system/manager
2. Sql> desc dictionary ;
3. Select table_name from dictionary where table_name like upper (‘all_%’) ;
le resultat est un ensemble des vues contenant des objets accessibles par l’utilisateurs
courants.
Exemple : Si je veux afficher la liste des tables accessible par l’utilisateur courant :
Sql> Select table_name from all_tables)
4. Sql> Select table_name from dictionary where table_name like upper (‘user_%’) ;
le resultat est un ensemble des vues contenant des objets créés par l’utilisateurs
courants.
Exemple : Si je veux afficher la liste des tables créées par l’utilisateur courant :
Sql> Select table_name from user_tables)
5. Select table_name from dictionary where table_name like upper (‘DBA_%’) ;
le resultat est un ensemble des vues contenant tous les objets de la base.
Exemple : Si je veux afficher la liste des tables existantes dans la base :
Sql> Select table_name from dba_tables)

6. Sql> Select table_name from dictionary where table_name like upper (‘v$%’) ;
le resultat est un ensemble des vues contenant des informations sur les resources
systeèmes et resources oracle.
Exemple : Si je veux afficher des informations sur les composants de la sga :
Sql> Select * from v$sgainfo ;)

Exercice2
Afin d'augmenter la sécurité de la base de données il peut être très intéressant de mettre en
place une gestion des mots de passe comme le nombre maximal de tentatives de
connexion à la base, le temps de verrouillage d’un compte, etc...

Il peut parfois aussi être intéressant de limiter les ressources système allouées à un
utilisateur afin d'éviter une surcharge inutile du serveur.
Oracle nous propose une solution efficace et pratique pour mettre en place ce type d'action
: les PROFILS.

Un PROFIL est un ensemble de limitations système. Une fois qu'un PROFIL a été assigné à
un utilisateur celui-ci ne pourra plus dépasser les limitations imposées.
La première chose à vérifier et de savoir si vous disposez du privilège système CREATE
PROFILE.

Si c'est le cas il va falloir décider quelles limitations vous souhaitez mettre en place. Vous
avez deux types de limitations :

 Les limitations du mot de passe


 Les limitations des ressources système
1. Création d'un profile1 :
Sql> CREATE PROFILE profil1 LIMIT

FAILED_LOGIN_ATTEMPTS 5
PASSWORD_LOCK_TIME 1/24*60 ; (le compte restera Une minute bloqué)

2) création de profile2 :
Sql> CREATE PROFILE profil2 LIMIT

SESSIONS_PER_USER 2

CONNECT_TIME 45;

3)création des utilisateurs+4

a) Sql> CREATE USER user1 IDENTIFIED BY user1


PROFILE profil1;
b) Sql> CREATE USER user2 IDENTIFIED BY user2
PROFILE profil2;
c) Sql> CREATE USER user3 IDENTIFIED BY user3;
Remarque : Pour permet à un utilisateur de créer une session :
GRANT CREATE session TO user1;
Maintenant, on peut se connecter.
4. Sql> ALTER USER user1 PROFILE profil1 ;
5.
Sql> ALTER USER user2 PROFILE profil2 ;
Sql> ALTER USER user3 PROFILE profil2 ;
6.
Sql> ALTER PROFILE profil1 LIMIT
FAILED_LOGIN_ATTEMPTS 5
PASSWORD_LOCK_TIME 1;

Sql> ALTER PROFILE profil2 LIMIT

SESSIONS_PER_USER 4

CONNECT_TIME 60;

7.
Sql> DROP PROFILE profil1;
Remarque :
Il est impossible de supprimer un profile assigné à un utilisateur sans l’option cascade
User1 admet profil1

8.
Sql> ALTER USER user2 PROFILE profil1/default ;
9.
Sql> DROP PROFILE profil2;
-non
-car le profile « profil2 » est déjà attribué à user3.
l’option CASCADE demandera à Oracle de supprimer le profil et d'assigner le profil
DEFAULT à tous les utilisateurs qui possédaient le profil qui vient d'être supprimé.

Il existe 2 cas de figure possibles pour supprimer un profile. Le premier cas le plus simple
consiste à supprimer un profil qui n'a été assigné auccun user. Vous pourrez donc le
supprimer sans action supplémentaire. Cependant si ce profil a été assigné à un utilisateur
vous devrez alors utiliser l'option CASCADE qui demandera à Oracle de supprimer le profil
et d'assigner le profil DEFAULT à tous les utilisateurs qui possédaient le profil qui vient
d'être supprimé.
10.
Sql> DROP PROFILE profil2 CASCADE;
L’utilisateur 3 admet le profile default
11.

Sql> select username,profile from dba_users ;


Remarque : dba_users est une vue qui contient les informations sur les utilisateurs ;
dba_profiles est vue qui contient les information sur les profiles.
Il est important de noter qu'un utilisateur actuellement connecté à la base ne pourra pas être
supprimé.
Remarque :On ne peut pas aussi supprimer le profile « default » même qu’on a le privilège
drop profile
12.
a)
Sql> DROP user user1 CASCADE;
b)
Sql> DROP user user2 CASCADE;
c)
Sql> DROP user user3 CASCADE;

Vous aimerez peut-être aussi