• Aucun résultat trouvé

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

N/A
N/A
Protected

Academic year: 2022

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

Copied!
17
0
0

Texte intégral

(1)

420-PK6-SL

Banques de données Avancées

Gestion des

Gestion des

UTILISATEURS

(2)

RÈGLES DE NOMENCLATURE Un UTILISATEUR Oracle est :

• Une connexion à Oracle

• Un nom de connexion "login"

• Un détenteur de droits et privilèges d'accès Le nom d'utilisateur doit :

• Contenir seulement des lettres, des chiffres et les # $ et __Contenir seulement des lettres, des chiffres et les # $ et __

Les $ et # sont beaucoup utilisés par Oracle alors il serait préférable de ne pas les utiliser.

• Débuter absolument par une lettre

Si on souhaite absolument un nom d'utilisateur contenant seulement des chiffres, il faudra le mettre entre

guillemets lors de la connexion.

Notez qu'un "login" entre guillemets est sensible à la casse.

• Contenir au maximum 32 caractères.

(3)

AUTENTICATION

Un UTILISATEUR Oracle peut être identifié par :

• Une connexion spécifique à Oracle (utilisateur/mot-de-passe)

• La validation par le "login" du poste de travail

• La validation par le "login" du réseau

Dans le premier cas, l'utilisateur sera créé en spécifiant un mot de passe dans la clause IDENTIFIED [BY].

passe dans la clause IDENTIFIED [BY].

Dans les deux autres cas, l'utilisateur sera créé en utilisant la clause IDENTIFIED EXTERNALLY.

Dans ces deux cas, plusieurs paramètres d'Oracle devront êtres configurés afin de permettre une telle connexion.

Oracle déconseille ces approches car il y a des failles mineures de sécurité qui s'y rattachent.

(4)

CONCEPTS

Sous ORACLE, une "DATABASE" est un concept tout à fait différent des autres moteurs (i.e. MySQL, MSSQL …).

Ce concept se réfère à toute l'installation d'oracle (i.e. tous les utilisateurs et tous les espaces de travail). Une "database" est créée à l'installation d'Oracle.

Sous ORACLE, un schéma est associé à un utilisateur plutôt qu'à une "database".

Ainsi, plutôt que d'avoir recours à use "database" pour changer de schéma, on utilisera plutôt l'instruction suivante :

ALTER SESSION SET CURRENT_SCHEMA = "utilisateur";

où "utilisateur" est l'utilisateur correspondant au schéma que nous voulons atteindre.

(5)

CONCEPTS (suite)

Ainsi, on parlera de "SESSION" où un utilisateur sera actif.

En se connectant avec un nom d'utilisateur et son mot de passe, on ouvre une session en utilisant le schéma de cet utilisateur.

Exemple:

L'utilisateur Jos se connecte et crée la table Clients.

L'utilisateur Jos se connecte et crée la table Clients.

L'utilisateur Fred se connecte ensuite et crée aussi une table Clients.

Si Jos effectue un SELECT sur la table Clients, se sera le contenu de sa table qui sera affiché.

(6)

CONCEPTS (suite)

Cependant si Jos désire lister le contenu de la table Clients de Fred (en supposant qu'il a les permissions), il aura alors deux façons de le faire :

• SELECT * FROM Fred.Clients;

Dans ce premier cas, Jos demeure l'utilisateur actif de la session mais peux accéder d'une façon temporaire à la table Clients de l'utilisateur Fred.

table Clients de l'utilisateur Fred.

• ALTER SESSION SET CURRENT_SCHEMA = "Fred";

SELECT * FROM Clients;

Dans ce cas, Jos décide d'utiliser le schéma de Fred comme schéma par défaut de la session (en s'éclipsant lui-même) et dès lors, toutes requêtes qu'il fera seront appliquées aux objets du schéma de Fred.

(7)

CONCEPTS (ESPACES DE TRAVAIL)

Une banque de données ORACLE est composée à l'origine de trois espaces logiques de travail appelés : SYSTEM, SYSAUX et TEMP.

Ces espaces de travail sont logiques en ce sens qu'ils

correspondent à des divisions de la mémoire pendant l'opération d'oracle. Ces espaces (et d'autres) sont le lieu d'existence des schémas des utilisateurs.

schémas des utilisateurs.

Afin de sauver les objets des schémas qui y seront définis, des datafiles ou fichiers physiques du système hôte d'exploitation seront associés à ces espaces-tables.

Oracle s'occupe de la concordance et du transfert des

informations de façon bidirectionnelle entre ces espaces logiques et ces espaces physiques.

(8)

ESPACE DE TRAVAIL

Comme Oracle associe les schémas aux utilisateurs, il faudra donc associer les utilisateurs aux espaces de travail.

Avant de créer un utilisateur, il faut donc s'assurer qu'un espace- tables existe afin de l'assigner à cet espace.

Oracle fournis des espaces de travail mais il est préférable de créer Oracle fournis des espaces de travail mais il est préférable de créer ses propres espaces de travail afin de bien gérer notre banque, sa performance et sa sécurité.

La commande CREATE TABLESPACE servira à créer un espace de travail.

(9)

ESPACE DE TRAVAIL

La commande CREATE TABLESPACE est décrite par le diagramme ci-dessous.

• La clause BIGFILE forcera Oracle à utiliser un seul fichier datafile de 128 To (blocs de 32k) ou 32 To (blocs de 8k).

• La clause SMALLFILE forcera Oracle à utiliser 1022 datafiles de 4 Millions d'octets chacun.

• Cette clause est optionnelle et seulement utilisée pour Cette clause est optionnelle et seulement utilisée pour outrepasser la valeur par défaut de l'installation d'Oracle.

Suit la définition d'espace permanent, temporaire et/ou "undo".

(10)

ESPACE DE TRAVAIL PERMANENT Suit ensuite le mot clé TABLESPACE

et le nom de l'espace à créer.

Optionnellement, une déclaration

DATAFILE peux suivre pour fixer les métriques de ces datafiles.

S'en suit une série de paramètres qui peuvent êtres configurés au choix du créateur.

(11)

ESPACE DE TRAVAIL TEMPORAIRE

Suit ensuite les mots clé TEMPORARY TABLESPACE et le nom de l'espace à créer.

Optionnellement, une déclaration TEMPFILE peux suivre pour fixer les métriques de ce fichier à usage temporaire.

S'en suit deux paramètres configurables optionnellement : S'en suit deux paramètres configurables optionnellement :

• les clauses groupes de la table

• la clause de gestion de l'étendue de l'espace utilisé

(12)

ESPACE DE TRAVAIL UNDO

Suit ensuite les mots clé UNDO TABLESPACE et le nom de l'espace à créer.

Optionnellement, une déclaration DATAFILE peux suivre pour fixer les métriques de ces datafiles.

S'en suit deux paramètres configurables optionnellement : S'en suit deux paramètres configurables optionnellement :

• la clause de gestion de l'étendue de l'espace utilisé

• les clauses de conservation de l'espace.

(13)

ESPACE DE TRAVAIL

Il existe donc deux principaux types d'espace-table :

• L'espace permanent

Dans cet espace, les objets de schéma, une fois créés sont sauvés dans des "fichiers-data" (i.e. Datafiles) et ont donc une existence permanente d'une connexion à une autre

• L'espace temporaireL'espace temporaire

Dans cet espace, tout objet créé s'effacera à la

déconnexion et n'existera pas lors de la prochaine connexion.

Un tel espace peux être enligne/hors-ligne et/ou en lecture seule.

Des "datafiles" et des "tempfiles" peuvent y être ajoutées.

(14)

EXEMPLE

Créons d'abord les espaces où nous voulons opérer…

CREATE TABLESPACE monEspace LOGGING

DATAFILE 'C:/Users/serveur/Documents/monEspace.dbf' SIZE 32m

AUTOEXTEND on

NEXT 32m MAXSIZE 2048m NEXT 32m MAXSIZE 2048m

EXTENT MANAGEMENT LOCAL;

CREATE TEMPORARY TABLESPACE tmpEspace

TEMPFILE 'C:/Users/serveur/Documents/tmpEspace.dbf' SIZE 32m

AUTOEXTEND on

NEXT 32m MAXSIZE 2048m

EXTENT MANAGEMENT LOCAL;

(15)

EXEMPLE Créons maintenant deux utilisateurs … CREATE USER Jos

IDENTIFIED BY Secret

DEFAULT TABLESPACE monEspace TEMPORARY TABLESPACE temp_mtr;

CREATE USER Fred

IDENTIFIED BY Secret

DEFAULT TABLESPACE monEspace TEMPORARY TABLESPACE temp_mtr;

(16)

EXEMPLE

Nous pourrions aussi gérer l'espace alloué pour les "undo" (i.e.

les transactions avortées) …

CREATE UNDO TABLESPACE oops

DATAFILE 'C:/Users/serveur/Documents/undo.dbf' SIZE 100M;

(17)

EXERCICE

Connectez-vous en DBA (i.e. Compte System)

Créez trois espaces tables (permanent/temporaire/undo)

Créez deux utilisateurs utilisant ces mêmes espaces

Connectez-vous en utilisant votre premier utilisateur

Créez une petite table quelconque

Placez-y des données (Quelques lignes)Placez-y des données (Quelques lignes)

Sans fermer votre connexion, ouvrez une seconde connexion en utilisant votre second utilisateur

Tentez de lister la table créée par le premier utilisateur Y êtes vous arrivé ?

Comment vous y êtes vous pris ?

Références

Documents relatifs

: Si vous choisissez cette option et que votre questionnaire n'utilise pas de code d'invitation pour contrôler l'accès des participants, alors un cookie sera sauvé dans le

Consulter votre montant disponible, vos dernières transactions et vos derniers relevés mensuels sans vous déplacer 24h/7j1. L’argent sera sur votre compte bancaire dans les deux

Affiche le nombre de lignes, de mots et de caractères (Word Count) contenus dans les fichiers passés en arguments. -l affiche uniquement le nombre de lignes (line) -w

Pour ouvrir une liste déroulante (dropdown list) appuyer sur la touche fonction correspondante (dans ce cas F3 qui correspond à « Épreuve ») ou la touche<flèche EN HAUT> ;

Une fois que la télécommande est configurée, vous pouvez appuyer en tout temps sur la touche MODE pour commander votre magnétoscope (câblosélecteur ou lecteur de DVD ) avec

Pour utiliser les CD ou les vidéocassettes iFIT.com, l’appareil elliptique doit être branché à votre lecteur de CD portable, à votre stéréo portable, à votre stéréo, à

Ne mettez jamais le tapis roulant en marche quand vous vous tenez sur la courroie.. Tenez-vous toujours aux rampes lors de l’em- ploi du

Ou bien, touchez et maintenez appuyé longuement pour faire s’afficher la liste de tous les caractères disponibles à partir de cette touche, puis faites glisser votre doigt