1-Gestion Des Utilisateurs

Télécharger au format pptx, pdf ou txt
Télécharger au format pptx, pdf ou txt
Vous êtes sur la page 1sur 14

1

Systèmes de Gestion des Bases de


Données
-Gestion des utilisateurs-

Dr. Hanen BRAHMI


Maître Assistante en INFORMATIQUE
2

Le Tablespace (1)

Database

Sys_Tab#1
Customer Laptops
Sys_Tab#2
Account Servers
Operation Printers Sys_Tab#3
Credit Repair Sys_Tab#4

 Point de vue sécurité: est-il conseillé d’appliquer une même stratégie de sauvegarde
pour toutes ces données?
 Suivant cette organisation de ces données, la sauvegarde se fera soit par BD (et donc la
même pour toutes les tables), soit par table individuellement.
3

Le Tablespace (2)

Database

Sys_Tab#1
Customer Laptops
Sys_Tab#2
Account Servers
Operation Printers Sys_Tab#3
Credit Repair Sys_Tab#4

Exploitation Equipment System

 Pour assurer une certaine flexibilité d’administration des données, pour maximiser la
sécurité des données, pour optimiser la performance du serveur BD  La notion des
TABLESPACES.
4

Le Tablespace (3)

Un tablespace est une unité de stockage logique d’objets base de données
 Donc de point de vue STOCKAGE, les objets d’une BD sont stockés dans des
tablespaces.
 Cette organisation d’une BD sous forme de tablespaces permet une administration
flexible, puisque plusieurs opérations peuvent se faire au niveau des tablespaces, et
non de la totalité de la base :
- Sauvegarde/restauration, Mise en offline/online, Mise en read write/read only etc.
 On peut assigner une table à un tablespace
CREATE TABLE tab_name(col1 type1, col2 type2…)
TABLESPACE tblsp_name;
5

Le Schéma

 Un schéma est un ensemble d’objets créés par un utilisateur (tables,


vues, indexes, synonymes, séquences, déclencheurs, procédures,
fonctions, packages PL/SQL)
 Par exemple, le schéma de l’utilisateur SCOTT = l’ensemble des objets
BD créés par SCOTT
 Il n’existe pas de relation entre schéma et tablespace. Les objets d’un
schéma peuvent être créés sur différentes tablespaces, et vice versa.
6

Dictionnaire de données

 Ensemble de tables et de vues incluant des informations sur les objets


des bases de données.
 Commencent par les préfixes:
 USER_ concernent les objets possédées par l’utilisateur.
ALL_TABLES ?
 ALL_ concernent les objets accessibles
USER_TABLES ? par l’utilisateur.
DBA_TABLES ?
 DBA_ concernent TOUS les objets de la base. Accessible par
l’administrateur.
 La vue DICTIONARY inclut des informations sur les vues statiques et
dynamiques du dictionnaire de données.
7

Dictionnaire de données

Nom de la Description
vue
%_TABLES Toutes les informations des tables de la base de données.

%_USERS Toutes les informations concernant les utilisateurs de la base de données.

%_VIEWS Toutes les informations des vues de la base de données.

%_SEQUENCES Toutes les informations concernant les séquences de la base de données.

%_TAB_COLUMNS Toutes les informations concernant les colonnes des tables de la base de
données.

%_INDEXES Toutes les informations concernant les index de la base de données.

%_OBJECTS Toutes les informations des objets –tous types confondus- de la base de
données.
8

Les synonymes

 Un synonyme est un alias d’un objet base de données (tables, vues,


indexes, synonymes, séquences, déclencheurs, procédures,
fonctions…)
 Si on crée le synonyme employee sur la table scott.emp, alors
manipuler employee, revient à manipuler scott.emp :
SELECT * FROM employee équivaut à SELECT * FROM scott.emp

 Il existe deux types de synonymes :


 Synonyme privé : accessible uniquement à partir du schéma dans
lequel il a été créé
CREATE SYNONYM nom_syn FOR schema.objet

 Synonyme public : accessible à partir de tout schéma


9

Gestion des utilisateurs (1)

 La syntaxe de création d’un utilisateur est la suivante :


CREATE USER nom_ut IDENTIFIED BY mdp
[DEFAULT TABLESPACE nom_TS]
[PASSWORD EXPIRE]
[ACCOUNT {LOCK|UNLOCK}]
 Exemple :
CREATE USER dev_esen IDENTIFIED BY jh#f@
DEFAULT TABLESPACE developer_ts
QUOTA 50M ON developer_ts
PASSWORD EXPIRE
ACCOUNT LOCK;
10

Gestion des utilisateurs (2)

 La syntaxe de modification d’un utilisateur est la suivante :


ALTER USER nom_ut
[IDENTIFIED BY mdp]
[DEFAULT TABLESPACE nom_def_TS]
[PASSWORD EXPIRE]
[ACCOUNT {LOCK|UNLOCK}]
 Exemple :
ALTER USER dev_esen
QUOTA 100M ON developer_ts
ACCOUNT UNLOCK;
 Pour supprimer un utilisateur :
DROP USER nom_ut [CASCADE]
11

Gestion des utilisateurs (3)

 Il existe deux types de privilèges qu’on peut assigner aux utilisateurs


 Les privilèges systèmes (reliés au langage de définition et de contrôle
de données)
 Assigner un privilège CREATE, ALTER, DROP, GRANT, REVOKE à un
utilisateur spécifié
 Les privilèges objet (reliés au langage de manipulation de données)
 Assigner un privilège SELECT, INSERT, UPDATE, DELETE, EXECUTE
sur un objet spécifié à un utilisateur spécifié
12

Gestion des utilisateurs (4)

 Les privilèges systèmes :


 Exemple : CREATE SESSION, CREATE TABLE, CREATE VIEW, ALTER USER…
 SYNTAXE d’attribution :
GRANT priv1[,priv2…] TO {user1[,user2…]|PUBLIC}
 SYNTAXE de retrait:
REVOKE priv1[,priv2…] FROM {user1[,user2…]|PUBLIC};
13

Gestion des utilisateurs (5)

 Les privilèges objet:


 Exemple : INSERT, UPDATE(cols), SELECT,EXECUTE etc.
 SYNTAXE d’attribution :
GRANT {priv1[(col1[,col2,…])][,priv2…]|ALL PRIVILEGES} ON
[schema.]obj TO {user1[,user2,…]|PUBLIC}
 SYNTAXE de retrait:
REVOKE {priv1[,priv2…]|ALL PRIVILEGES} ON [schema.]obj
FROM {user1[,user2…]|PUBLIC}
14

Bibliographie

[1] Christian Soutou. SQL pour Oracle. Éditions Eyrolles, 3è


édition, 2008.

[2] Aurélie Vuaroqueaux. Notions de base du PL/SQL.


Laboratoire supinfo des technologies Oracle, 2003.

[3] Georges Gardarin. Bases de Données. Eyrolles, 6è


édition, 2005

Vous aimerez peut-être aussi