Vous êtes sur la page 1sur 5

TP4 Administration

Matière : Schémas – Rôles et Privilèges d’accès Filière :


Administration de
Ingénierie des SI
bases de données

Exercice 1 : Création DBA et Utilisateurs

1. La BD étant démarré, connectez-vous en tant DBA system/system


2. Créer un nouvel administrateur de la base, nommé ‘adminEpi' et qui est
identifié par ‘dbaEPi’.
………create user adminEpi identified by dbaEpi ; grant dba to adminEpi ; ..

Etant connecté sur ce nouveau DBA adminEPi  :


3. créer un tablespace permanent avec les caractéristiques suivantes :
 Le nom du tablespace est : dataExpo
 Un datafile nommé Df1_Expo.dbf de taille 4 Méga sous : ‘.. \oradata\orcl'.
La Méthode d'extension est gérée par quota de 64K.
SQL> create tablespace dataExpo
datafile 'd:\app\chiheb\oradata\orcl\df1_expo.dbf' size 4M UNIFORM
SIZE 64K;

4. Ajouter au tablespace dataExpo, un deuxième fichier data nommé


‘Df2_Expo.dbf’ de taille 2 méga sous le même répertoire ci-dessus.
alter tablespace dataExpo
add datafile 'd:\app\chiheb\oradata\orcl\df2_expo.dbf' size 2m autoextend on ;

5. select grantee, privilege from dba_sys_privs where grantee in ('CONNECT',


'RESOURCE');

6. Créer un utilisateur avec les caractéristiques suivantes :


 Nom de l'user : Expo, mot de passe : Expo
 L’Affecter au tablespace : dataExpo,
 Son Quota est de 1méga sur le tablespace
 Lui affecter les Rôles de base connect et resource.
SQL> create user expo identified by expo default tablespace dataExpo
quota 1m on dataexpo ;

7. Créer les deux rôles "ordinary" et ‘Sample’. le premier rôle est constitué des
privilèges systèmes suivants: {create session, create table, create view, Create
sequence}.
create role ordinary ;
grant create session, create table, create view , create sequence to ordinary ;
create role sample ;
grant create session, create view to sample ;

Pr. Ch CH © 1/5
TP4 Administration
Matière : Schémas – Rôles et Privilèges d’accès Filière :
Administration de
Ingénierie des SI
bases de données

8. Ajouter les privilèges nécessaires à Expo , pour qu'il puisse créer un nouvel
user 'info/info' en lui affectant le rôle "sample"
connect admin/epi
grant create user to expo2 ;
connect expo2/expo2
create user info2 identified by info default tablespace
data_expo quota 1m on data_expo
connect admin/epi
grant sample to info

9. Afficher les privilèges systèmes alloués à l’user "Expo". Utiliser la vue système
dba_sys_privs : (grantee, privilege). Grantee désigne le nom de l’user auquel
est attribué le privilège (privilege).

10. changer le mot de passe de l’user info, verrouillez son compte. vérifier sue ce
dernier ne pourra plus se connecter à son compte même avec le nouveau mot
de passe. déverrouillez son compte et lui remettre son ancien mot de passe
SQL> alter user info identified by info2018 account lock;
SQL> alter user info account unlock;
sur info :

Pr. Ch CH © 2/5
TP4 Administration
Matière : Schémas – Rôles et Privilèges d’accès Filière :
Administration de
Ingénierie des SI
bases de données

Exercice 2 : Manipuler les schémas et les tables de données.

Nous souhaitons créer les tables ci- dessous sur le schéma ‘Expo’. Pour ce faire,
procéder par les étapes suivantes :

1. Connecter sur ‘Expo', créer les trois tables suivantes :

Technique( cod_tech, intitulé_tech)


Musée( cod_mus, nom_mus, ville)
Artiste( cod_art, nom_art, Pays)
Sur Expo :
SQL> create table Technique( cod_tech number, intitule_tech varchar(20));
SQL> create table Musee( cod_mus number, nom_mus varchar(15), ville
varchar(15));
SQL> create table Artiste( cod_art number, nom_art char(20), Pays varchar(20));

2. Etant connecté sur l’administrateur Admin :


a) créer les deux tables ci-dessous en faveur de l’utilisateur ‘Expo’ tout
en tenant compte des contrôles d’intégrités indiqués. Les deux tables
doivent figurer dans le schéma de cet user.
 Œuvre( cod_œuv, titre_œuv, cod_art#, cod_tech#)
Nommer les deux contraintes référentielles respectivement par fkArt et fkTech.
SQL> create table expo.Oeuvre( cod_oeuv number primary key, titre_oeuv char(15),
2 cod_art constraint fkArt references expo.Artiste(cod_art),
3 cod_tech constraint fkTech references expo.Technique(cod_tech) );

 Exposition( cod_œuv#, datedeb, datefin, prix, cod_mus#).


Nommer les deux Cte reflles respectivement par fkOeuvre et fkmusee.
SQL> create table expo.exposition (cod_oeuv constraint fkOeuv references
expo.oeuvre(cod_oeuv),
2 datedeb date , datefin date , prix number ,
3 cod_mus constraint fkmusee references expo.musee(cod_mus),
4 primary key (cod_oeuv, datedeb) );

b) Afficher les contraintes d’intégrités associées aux deux tables en


consultant la table ‘dba_constraints’ : Donner le nom de la contrainte, la
table associée, le propriétaire et leurs définitions (uniquement pour les C.I
check).
SQL> select constraint_name, constraint_type from dba_constraints
where table_name in ('EXPOSITION', 'OEUVRE');

Pr. Ch CH © 3/5
TP4 Administration
Matière : Schémas – Rôles et Privilèges d’accès Filière :
Administration de
Ingénierie des SI
bases de données

c) Insérer des lignes dans les trois tables Technique, Musée et Artiste :
 (1, ‘Ghara Dali’, ‘Tunisie’) dans Artiste
SQL> insert into expo.artiste values (1, ‘Ghara Dali’, ‘Tunisie’)
 (1, ‘Le Bardo’, ‘Bardo’) dans Musée
insert into expo.musee values (1, ‘Le Bardo’, ‘Bardo’)
 (1, ‘Peinture à Huile’) dans Technique
insert into expo.technique (1, ‘Peinture à Huile’)

3. Créer avec le minimum des privilèges, un utilisateur nommé Manip/manip


pouvant insérer, consulter des et modifier des œuvres et des expositions.
ajouter une oeuvre et une exposition en se connectant sur cet user.
 (1, ‘Chutte Momorency’, 1, 1) dans Œuvre.
 (1, ‘20/03/2018’, ‘31/03/2018’, 25.500,1) dans Exposition.
 Modifier la date début d’exposition par 22/03/2018.
 consulter toutes les expositions
 créer l’user manip/manip
 créer un role nommé roleManip
 ajouter à ce rôle les privilèges suivants :
- create session
- insert , select , update on œuvre
- insert, select , update on Exposition
Grant create session to roleManip ;
Grant insert , select , update on œuvre to roleManip
Grant …. – privilège sont ajoutés par objet
 affecter ce rôle à l’user 
 connexion sur l’user et effectuer le travail demandé.

Exercice 3 : Attribution des droits d’accès

L’utilisateur "Info" voulait disposer d’un schéma externe en liaison avec le schéma
interne "Expo". Ce schéma externe sera exploité par son application et est constitué
des vues et des synonymes qu’on vous demande de les concevoir. Ce schéma sera
constitué des objets suivants :

- Consultation (uniquement) des œuvres (table Œuvre) à travers un synonyme


de table nommée ArtWork créé dans son schéma pour cet objectif. (ajouter
uniquement le privilège objet select on Œuvre to Info.) , afficher les artwork.
 en tant que expo : grant select on œuvre to Info
 en tant que admin : grant create synonym to Info
 en tant que Info : create synonym ArtWork for Expo.Oeuvre
 select * from artWork ;
- Une vue nommée Musum (IdMus, nameMus, Town ) pour consultation
uniquement des musées. ( création d’une vue avec l’option with read only).
 en tanque admin: donner le privilege create view to Info

Pr. Ch CH © 4/5
TP4 Administration
Matière : Schémas – Rôles et Privilèges d’accès Filière :
Administration de
Ingénierie des SI
bases de données

 en tant que Expo , donner le privilege objet select on Musee to


Info
 en tant que Info, créer la vue Musum : create view Musum
(structure) as select cod_mus, nom_mus, ville from Expo.musee
 afficher le contenu de musum
- Events ( title_œuv, StartDate, Duration, NameMus, Price) pour consultation
 en tant que Expo, donner le privilege Select on sur la table
Exposition en faveur de l’user Info
 créer la vue Events en utilisant les tables et les vues : Artwork,
Musum etExposition.
 verifier l’impact de MAJ des tables sur cette vue.

Pr. Ch CH © 5/5

Vous aimerez peut-être aussi