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



Documents pareils
Gestion des utilisateurs et de leurs droits

Bases de données et sites WEB

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.

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

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

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

TP Administration Oracle

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

Olivier Mondet

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

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

Le Langage De Description De Données(LDD)

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

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

Cours: Administration d'une Base de Données

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

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

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

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

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

Administration des Bases de Données Oracle

TP11 - Administration/Tuning

TP3 : Creation de tables 1 seance

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

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

SQL Historique

Auto-évaluation Oracle: cours de base

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

Master Exploration Informatique des données DataWareHouse

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

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

OUTIL DE TRAVAIL COLLABORATIF

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

CREATION WEB DYNAMIQUE

Bases de Données Avancées

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

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

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

Systèmes de Gestion de Bases de Données

Création et Gestion des tables

Le Langage SQL version Oracle

Synchronisation Mysql (Replication)

SQL sous SqlServer OLIVIER D. DEHECQ Olivier 0

COURS 5 Mettre son site en ligne! Exporter son site avec WordPress Duplicator Installer un logiciel FTP Faire le suivi des visites de son site avec

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

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

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

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

acheter en ligne l Esko Store Comment sur

PHP et les Bases de données - Généralités

Les bases de données

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

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

Administration des bases de données

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

Sommaire. Etablir une connexion avec une base de données distante sur PostGreSQL

FILE MANAGEMENT. TABLESPACES TEMPORAIRES Temporaire par défaut autre que system

Architecture de la plateforme SBC

Administration des bases de données sous Oracle. 10g. Fabien De Marchi, Jean-Marc Petit. Université de Lyon. November 22, /96

Langage SQL : créer et interroger une base

Historisation des données

WDpStats Procédure d installation

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

Lieberman Software Corporation

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

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)

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

MySQL / SQL EXEMPLES

Intégrité des données

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées

Guide d installation de SugarCRM Open Source version 4.5.1

Once the installation is complete, you can delete the temporary Zip files..

PPE GESTION PARC INFORMATIQUE

OpenPaaS Le réseau social d'entreprise

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

Installation UpdatEngine serveur (CentOs apache2 / MySQL)

L installation a quelque peu changée depuis les derniers tutos, voici une actualisation.

SQL Server administration SERVEUR DE BASES DE DONNEES OLIVIER D.

PREPARATION AU PTI SGBD

Fascicule des Travaux Pratiques Oracle

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

OFPPT/DRPS/ISGI LAAYOUNE FILIERE : TECHNIQUES DE DEVELOPPEMENT INFORMATIQUE TDI2 MODULE : SYSTEME DE GESTION DE BASE DE DONNES I

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.

Comment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux

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

GLPI OCS Inventory. 1. Prérequis Installer un serveur LAMP : apt-get install apache2 php5 libapache2-mod-php5 apt-get install mysql-server php5-mysql

Support de cours. Introduction à SQL et MySQL. 2003, Sébastien Namèche

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

Installation des moteurs SQL Pour Micro-SESAME

Installation d'un serveur FTP géré par une base de données MySQL

1. Qu'est qu'un tablespace?

TD4 - Supervision et métrologie des réseaux. 1 Supervision des applications et services réseaux et des ressources locales

Gestion de base de données

INTRODUCTION. Mysql-server est un serveur de bases de données. Cest un logiciel libre.

Cours de SQL SERVER 2005 SQL SERVER 2005

Qui est Sybase ianywhere?

Transcription:

Cours Bases de données 2ème année IUT Cours 2 : Contrôle des accès Anne Vilnat http://www.limsi.fr/individu/anne/cours

Plan 1 Les privilèges Définitions 2 Rôles Définition de création d attribution de suppression 3 Profils 4 Utilisateurs

Les privilèges Définitions 1 Privilèges objet : comment attribuer aux utilisateurs de la base le droit de faire des actions sur des objets de la base. Par exemple : autoriser un utilisateur à consulter des tables, permettre à un utilisateur de faire des mises à jour, des références à des tables, 2 Privilèges système : comment permettre à un utilisateur d agir sur les définitions des objets de la base. Par exemple : autoriser un utilisateur à créer des tables, des vues, des index

Attribuer un privilège objet GRANT <liste de privilèges objet> < ALL > ON objet TO <liste d utilisateurs> < PUBLIC > [WITH GRANT OPTION] GRANT SELECT, UPDATE ON Individu TO userfilm Privilèges objet : ALTER, DELETE, INDEX, INSERT, REFERENCES, SELECT, UPDATE,... ALL : les 7 principaux objet : table, vue,.. WITH GRANT OPTION : donne le droit de transmettre à d autres

Attribuer un privilège objet (2) Pour INSERT, REFERENCES ou UPDATE, on peut limiter les attributs concernés : GRANT INSERT REFERENCES UPDATE <liste attributs> ON <nom table> <nom vue> TO <liste d utilisateurs> < PUBLIC [WITH GRANT OPTION] GRANT UPDATE nom, prenom ON Individu TO userfilm

Attribuer un privilège objet : Exemple Jean a créé la table Individu et donne les droits en lecture à Paul : GRANT SELECT ON INDIVIDU TO Paul WITH GRANT OPTION

Supprimer un privilège objet REVOKE <liste de privilèges objet> < ALL > ON objet FROM <liste d utilisateurs> < PUBLIC > [CASCADE CONSTRAINTS][FORCE] CASCADE CONSTRAINTS : pour les contraintes référentielles

Attribuer/Supprimer un privilège système pour attribuer un privilège GRANT <liste de privilèges système> TO <liste d utilisateurs> < PUBLIC > [WITH ADMIN OPTION] GRANT CREATE VIEW TO Paul Privileges système : CREATE TABLE, CREATE VIEW, ALTER TABLE, DROP TABLE,.. WITH ADMIN OPTION : donne le droit de transmettre à d autres pour supprimer un privilège REVOKE <liste de privilèges système> FROM <liste d utilisateurs> < PUBLIC

Les rôles Définition Un rôle est un ensemble de privilèges système et/ou objet identifiés par un nom. Un rôle peut être affecté : à un utilisateur pour lui attribuer des privilèges à un rôle pour lui ajouter des privilèges Un rôle permet d englober un ensemble cohérent de droits qui seront donnés...

Créer un rôle CREATE ROLE <nom de rôle> [ NOT IDENTIFIED IDENTIFIED BY <mot de passe> EXTERNALLY [GLOBALLY] CREATE ROLE roledeveloppeur GRANT CREATE TABLE, CREATE PROCEDURE TO roledeveloppeur IDENTIFIED permet de protéger le rôle par un mot de passe Par défaut : NOT IDENTIFIED

Ajouter des privilèges ou un rôle à un rôle GRANT <liste de privilèges système ou rôle> TO <liste de rôles> [WITH ADMIN OPTION] GRANT <liste de privilèges objet> ALL ON objet TO <liste de rôle> [WITH GRANT OPTION]

Attribuer un rôle à un utilisateur GRANT <liste de rôle> TO <liste d utilisateurs> [WITH ADMIN OPTION] Exemple GRANT roledeveloppeur TO Paul

Supprimer un rôle ou un rôle à un utilisateur Supprimer un rôle DROP ROLE <rôle> Supprimer un privilège système ou un rôle d un rôle REVOKE <liste de privilèges système ou rôle> ADMIN OPTION FROM <liste de rôles> Supprimer un privilège objet d un rôle REVOKE <liste de privilèges objet> ALL GRANT OPTION ON <liste d objets> TO <liste de rôles> [CASCADE CONSTRAINTS] Retirer un rôle à un utilisateur REVOKE <liste de rôles> FROM <liste d utilisateurs> PUBLIC

Les profils Définition Un profil est un ensemble de limites concernant l utilisation des ressources de la base de données. Un profil peut être attribué à un utilisateur lors de la création de l utilisateur. CREATE PROFILE LIMIT [SESSIONS PER USER entier UNLIMITED DEFAULT] [CPU PER SESSION entier UNLIMITED DEFAULT] [CONNECT TIME entier UNLIMITED DEFAULT]... Pour modifier : ALTER

Les utilisateurs Définition Tout utilisateur a un nom et un mot de passe. Il est propriétaire de tous les objets qu il a créés.. CREATE USER <nom d utilisateur> IDENTIFIED BY m de p EXTERNALLY GLOBALLY AS nom externe [DEFAULT TABLESPACE nom tablespace] [TEMPORARY TABLESPACE nom tablespace] [QUOTA entier K M UNLIMITED ON nom tablespace] [PROFILE nom de profil] [DEFAULT ROLE liste roles ALLEXCEPT liste roles NONE ] [PASSWORD EXPIRE] [ACCOUNT LOCK UNLOCK];...

En conclusion... Quand on crée un utilisateur... on lui donne un nom et un mot de passe (à changer éventuellement) on décide des ressources qu il pourra utiliser: combien de sessions il pourra ouvrir, combien de temps CPU il pourra consommer,... son profil on décide : ce qu il pourra faire sur les objets existants s il pourra créer de nouveaux objets son rôle