Cours 4 : Tables système, contrôle des accès et synonymes



Documents pareils
Gestion des utilisateurs et de leurs droits

CHAPITRE 4 POLITIQUES DE CONTRÔLES DES ACCÈS SOUS ORACLE ADMINISTRATION ET TUNING DE BASES DE DONNÉES 10/05/2015 RESPONSABLE DR K.

Bases de données et sites WEB

Chapitre III Architecture de Base de Données Oracle

420-PK6-SL Banques de données Avancées. UTILISATEURS (suite)

Partie II Cours 3 (suite) : Sécurité de bases de données

Administration des bases de données. Jean-Yves Antoine

INSIA Bases de données ORACLE Installation SQL*Plus SQL-Developer

Partie 0 : Gestion des tablespace et des utilisateurs... 3

I/ Présentation. On considère une BD CIRQUE dont le schema conceptuel : PERSONNEL _CIRQUE (NOM, ROLE) ;

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

Gestion des utilisateurs, des groupes et des rôles dans SQL Server 2008

Plan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD

Bases de Données relationnelles et leurs systèmes de Gestion

Auto-évaluation Oracle: cours de base

TP Administration Oracle

TP Contraintes - Triggers

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

Olivier Mondet

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

Cours Bases de données 2ème année IUT

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

INSIA SIGL Bases de données ARCHITECTURE ORACLE

Pour les débutants. langage de définition des données

Les déclencheurs. Version 1.0. Grégory CASANOVA

Programme détaillé. Administrateur de Base de Données Oracle - SQLServer - MySQL. Objectifs de la formation. Les métiers

Cours Bases de données 2ème année IUT

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Fascicule des Travaux Pratiques Oracle

Le Langage De Description De Données(LDD)

420-PK6-SL Banques de données Avancées UTILISATEURS

Secteur Tertiaire Informatique Filière étude - développement. Accueil. Apprentissage. Période en entreprise. Evaluation.

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

Notes de cours : bases de données distribuées et repliquées

Le langage SQL (première partie) c Olivier Caron

TUTORIEL D INSTALLATION D ORACLE ET DE SQL DEVELOPPER TUTORIEL D INSTALLATION D ORACLE...1 ET DE SQL DEVELOPPER...1

SQL Historique

1. Qu'est-ce que SQL? La maintenance des bases de données Les manipulations des bases de données... 5

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes

Cours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry

Modélisation et Gestion des bases de données avec mysql workbench

Historisation des données

Procédures Stockées WAVESOFT ws_sp_getidtable Exemple : ws_sp_getnextsouche Exemple :... 12

Création et Gestion des tables

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

CATALOGUE FORMATIONS DOMAINE Bases de données

Administration des Bases de Données Oracle

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

Gestion des droits d accès. Quelques exemples de vulnérabilité

Administration des bases de données relationnelles Part I

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

M2106 : Programmation et administration des bases de données

Bases de Données Réparties Concepts et Techniques. Matthieu Exbrayat ULP Strasbourg - Décembre 2007

Bases de données avancées

Cours: Administration d'une Base de Données

Oracle 10g Administration +

MySQL - Réplication. Fichiers de relais et de statut de la réplication. Mise en place de la réplication

Cours Bases de données 2ème année IUT

MySQL / SQL EXEMPLES

Compétences Business Objects

Le Langage SQL version Oracle

Cours de SQL SERVER 2005 SQL SERVER 2005

Base de données II Module 3b

Qui est Sybase ianywhere?

MODE OPERATOIRE CORIM PROGRESS / SECTION MEI. Exploitation Informatique

Rootkits sous Oracle

DEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public.

Langage SQL : créer et interroger une base

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Intégrité des données

Configurer la supervision pour une base MS SQL Server Viadéis Services

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.

Gestion de base de données

Bases de Données Avancées

Bases de données relationnelles

Bases de données et sites WEB Licence d informatique LI345

Introduction au Système de Gestion de Base de Données et aux Base de Données

Mysql. Les requêtes préparées Prepared statements

Master Exploration Informatique des données DataWareHouse

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données

Devoir Data WareHouse

OpenPaaS Le réseau social d'entreprise

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

Intégrité sémantique dans les bases de données relationnelles

TP11 - Administration/Tuning

Résumé S Q L. Auteur: Alexandre PATIN Edition: 22 février alexandre.patin@free.fr URL :

Quelques aspects du Relationnel-Objet du SGBD Oracle

Présentation du module Base de données spatio-temporelles

PPE GESTION PARC INFORMATIQUE

PHP 5. La base de données MySql. A. Belaïd 1

TP Bases de données réparties

SQL Server administration SERVEUR DE BASES DE DONNEES OLIVIER D.

BTS/CGO P10 SYSTEME INFORMATION Année

Laboratoires de bases de données. Laboratoire n 6. Programmation SQL. par Danièle BAYERS et Louis SWINNEN

Synchronisation Mysql (Replication)

TP3 : Creation de tables 1 seance

CHAPITRE 1 ARCHITECTURE

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)

Transcription:

Cours 4 : Tables système, contrôle des accès et synonymes

Tables système Les informations du dictionnaire de données (tables système) sont accessibles en consultation seule, au moyen de vues Quatre classes de vues sont disponibles en fonction du privilège de l utilisateur : La classe DBA La classe USER La classe ALL Les vues spécifiques 2013-2014 Bases de données 2 2

Classe DBA Les noms de ces vues sont préfixés par DBA_, V$ ou V_$ Elle ne sont accessibles qu aux utilisateurs qui ont le privilège SELECT_ANY_TABLE Les vues préfixées par V$ ou V_$ contiennent des informations sur les activités de la base et permettent un suivi de performance (vues dynamiques) 2013-2014 Bases de données 2 3

Classe USER Les noms de ces vues sont préfixées par USER_ Elles permettent un contrôle de tous les objets dont l utilisateur est propriétaire 2013-2014 Bases de données 2 4

Classe ALL Les noms de ces vues sont préfixées par ALL_ Elles donnent une vision plus large que la précédente en permettant à l utilisateur un contrôle de tous les objets qui lui sont accessibles 2013-2014 Bases de données 2 5

Vue spécifiques DICTIONARY ou DICT : la liste de toutes les tables, vues et synonymes constituant le dictionnaire de données d Oracle DICT_COLUMNS : description des tables et des vues du dictionnaire de données TABLE_PRIVILEGES : les privilèges accordés aux utilisateurs sur les objets de la base COLUMN_PRIVILEGES : les privilèges accordés aux utilisateurs sur les colonnes des tables CONSTRAINT_COLUMNS et CONSTRAINT_DEFS : les contraintes d intégrité définies sur les colonnes des tables 2013-2014 Bases de données 2 6

DBA ALL USER DBA_CATALOG ALL_IND_COLUMNS USER_COL_PRIVS DBA_USERS ALL_LABELS USER_CONSTRAINTS DBA_SNAPSHOTS ALL_ROWS USER_ERRORS ALL_SNAPSHOTS USER_IND_COLUMNS ALL_SOURCE USER_INDEXES (IND) ALL_SYNONYMS USER_OBJECTS (OBJ) ALL_TABLES USER_REFS ALL_TRIGGERS USER_SEQUENCES (SEQ) ALL_USERS USER_TAB_COLUMNS (TABS) ALL_VIEWS USER_TABLES USER_TAB_PRIVS USER_TRIGGER_COLS USER_TRIGGERS USER_VIEWS USER_SYNONYMS (SYN) 2013-2014 Bases de données 2 7

Contrôle des accès Sélectionner et répartir les droits des utilisateurs de la base de données : Gestion des accès à la base de données Gestion des accès aux données de la base Limitation des ressources accessibles Attribution des droits par défaut 2013-2014 Bases de données 2 8

Utilisateurs (USER) Tout objet a un utilisateur créateur qui possède tous les droits (consultation, modification et suppression) sur cet objet Les autres utilisateurs n ont aucun droit sur cet objet, à moins que le créateur ne le leur accorde explicitement 2013-2014 Bases de données 2 9

Un utilisateur est défini par : Un nom d utilisateur Un mot de passe Un ensemble de privilèges Un profil 2013-2014 Bases de données 2 10

Privilèges Droits attribués à un utilisateur d exécuter un ensemble donné d ordres SQL ou d accéder à certains objets de la base de données Un privilège peut être attribué soit directement à un utilisateur, soit à un rôle Deux niveaux de privilèges : Les privilèges système (environ 80 pour Oracle 8) Les privilèges objet 2013-2014 Bases de données 2 11

Rôles Regroupements de privilèges qui peuvent être attribué soit à un utilisateur soit à un autre rôle Un rôle peut contenir à la fois les deux types de privilèges Chaque rôle a un nom de rôle 2013-2014 Bases de données 2 12

Rôles prédéfinis sous Oracle CONNECT RESOURCE DBA EXP_FULL_DATABASE IMP_FULL_DATABASE 2013-2014 Bases de données 2 13

Gestion des rôles CREATE ROLE nom-rôle... ALTER ROLE nom-rôle... DROP ROLE nom-rôle... SET ROLE nom-rôle ALL NONE; 2013-2014 Bases de données 2 14

Profils Cette notion permet de contrôler l activité des utilisateurs en limitant les ressources auxquelles ils ont accès : Le temps CPU Le nombre maximal de blocs lus Le nombre de session par utilisateur La durée d une connexion La durée sans occupation autorisée Le nombre maximal d octets d espace privé 2013-2014 Bases de données 2 15

Gestion des profils CREATE PROFILE nom-de-profil LIMIT... ALTER PROFILE nom-de-profil... DROP PROFILE nom-de-profil [CASCADE] Table système : DBA_PROFILES 2013-2014 Bases de données 2 16

Gestion des utilisateurs CREATE USER nom-utilisateur IDENTIFIED (BY mot-de-passe EXTERNALLY)... ALTER USER nom-utilisateur IDENTIFIED (BY mot-de-passe EXTERNALLY)... DROP USER nom-utilisateur [CASCADE]; Table système : DBA_USERS 2013-2014 Bases de données 2 17

Attribution d un privilège système GRANT privilège-ou-rôle,... PUBLIC TO rôle,... nom-utilisateur [WITH ADMIN OPTION]; WITH ADMIN OPTION autorise celui qui a reçu le privilège ou le rôle à le transmettre à un autre utilisateur 2013-2014 Bases de données 2 18

Quelques privilèges système ALTER ANY INDEX ALTER ANY PROCEDURE ALTER ANY ROLE ALTER ANY SEQUENCE ALTER ANY TABLE ALTER ANY TRIGGER ALTER ANY PROFILE ALTER USER CREATE ANY TABLE CREATE ANY INDEX CREATE ANY PROCEDURE CREATE ANY SEQUENCE CREATE ANY SYNONYM CREATE ANY TRIGGER CREATE ANY VIEW CREATE PROCEDURE CREATE PROFILE CREATE ROLE CREATE PUBLIC SYNONYM CREATE SEQUENCE CREATE SESSION CREATE SYNONYM CREATE TABLE CREATE TRIGGER CREATE USER CREATE VIEW DELETE ANY TABLE DROP ANY INDEX DROP ANY PROCEDURE DROP ANY ROLE DROP ANY SEQUENCE DROP ANY SYNONYM DROP ANY TABLE DROP ANY TRIGGER DROP ANY VIEW DROP PROFILE DROP PUBLIC SYNONYM DROP USER GRANT ANY ROLE EXECUTE ANY PROCEDURE GRANT ANY PRIVILEGE INSERT ANY TABLE LOCK ANY TABLE SELECT ANY SEQUENCE SELECT ANY TABLE UPDATE ANY TABLE 2013-2014 Bases de données 2 19

Suppression d un privilège système REVOKE privilège-ou-rôle,... PUBLIC FROM rôle,... nom-utilisateur 2013-2014 Bases de données 2 20

Attribution d un privilège objet GRANT privilège-objet,... ON objet PUBLIC TO rôle,... nom-utilisateur [WITH GRANT OPTION]; WITH GRANT OPTION autorise celui qui a reçu le privilège à le transmettre à un autre utilisateur 2013-2014 Bases de données 2 21

Quelques privilèges objet SELECT [(attribut,... )] INSERT UPDATE [(attribut,... )] DELETE EXECUTE ALTER INDEX REFERENCES [(attribut,... )] READ ALL 2013-2014 Bases de données 2 22

Relations entre privilèges et objets Privilège Table Vue Séquence Procédure, Fonction, Package ALTER DELETE EXECUTE INDEX INSERT REFERENCES SELECT READ UPDATE 2013-2014 Bases de données 2 23

Suppression d un privilège objet REVOKE [privilège-objet,... ALL] ON objet PUBLIC FROM rôle,... nom-utilisateur [CASCADE CONSTRAINTS] [FORCE]; CASCADE CONSTRAINT : pour le privilège REFERENCES FORCE : pour le privilège EXECUTE 2013-2014 Bases de données 2 24

Dictionnaire des données ALL_COL_PRIVS ALL_COL_PRIVS_MADE ALL_COL_PRIVS_RECD ALL_TAB_PRIVS_MADE ALL_TAB_PRIVS_RECD DBA_COL_PRIVS DBA_ROLES DBA_ROLE_PRIVS... 2013-2014 Bases de données 2 25

Synonymes Pour créer un synonyme privé sur un objet dont on est le propriétaire, il faut avoir le privilège CREATE_SYNONYM Pour créer un synonyme privé sur un objet dont on n est pas le propriétaire, il faut avoir le privilège CREATE ANY SYNONYM Pour créer un synonyme public, il faut avoir le privilège CREATE PUBLIC SYNONYM On ne peut spécifier un schéma que pour un synonyme public 2013-2014 Bases de données 2 26

Syntaxe CREATE [PUBLIC] SYNONYM nom-synonyme FOR [schèma.]objet; 2013-2014 Bases de données 2 27

Exemple CREATE PUBLIC SYNONYM film FOR ens2004.film; 2013-2014 Bases de données 2 28