Gestion des utilisateurs

Administration Oracle : Utilisateurs

Pour revenir à la page d'administration Oracle : ICI.

Article lu   fois.

L'auteur

Profil ProSite personnel

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

Gestion des utilisateurs

1. Création des utilisateurs

Nous allons voir dans cet article comment créer et configurer un utilisateur de base de données ou un compte avec lequel vous pourrez vous connecter et effectuer des actions sur la base de données en fonctions des droits qui vous serons alloués.

Il est aussi bon de savoir que contrairement à d'autres bases de données, quand vous créez un utilisateur sur une base de données Oracle celui-ci ne dispose d'aucun droit, pour cela reportez vous à la section "Administration des rôles et privilèges".

Voici les différentes étapes qui seront nécessaire à la création d'un utilisateur Oracle :

  • Choisir un nom d'utilisateur
  • Choisir une méthode d'authentification
  • Choisir les TABLESPACEs que l'utilisateur pourra utiliser
  • Définir les quotas sur chaques TABLESPACEs
  • Définir les TABLESPACEs par défaut de l'utilisateur
  • Créer l'utilisateur
  • Assigner les rôles et privilèges à l'utilisateur

1.1. Introduction

1.1.1. Définition d'un schéma

Un schéma est une collection (ou un ensemble) nommé d'objets tels que des tables, vues, clusters, procédure et packages associés à un utilisateur précis. Quand un utilisateur de base de données est crée, son schéma est automatiquement crée. Un utilisateur ne pourra alors être associé qu'à un seul schéma et réciproquement.

1.1.2. Définition d'un user

Un utilisateur de base de données va correspondre à un login qui aura reçu certains privilèges. Cet utilisateur sera stocké dans le dictionnaire de données et disposera d'un espace de stockage pour ses objets qui seront alors stockés dans son schéma.

En Oracle on pourra assimiler un utilisateur avec son schéma.

1.2. Choix du nom de l'utilisateur

La première chose à faire pour créer un nouvel utilisateur va être de définir un login. Afin d'éviter d'avoir trop de problèmes lors de l'ajout de nouveaux utilisateurs, il est fortement recommandé de metttre une stratégie de nommage en place.

Par exemple tout les noms d'utilisateur devront être composé des 6 premières lettres de leur nom, d'un "_" et de la première lettre de leur prénom.

Par exemple :
Albert Durand donnera comme login durand_a.

Il convient ensuite de connaitre les limitations et règles de nommage à respecter:

  • Taille maximale 30 caractères.
  • Ne devra contenir que des lettres de [a-z] et des chiffres [0-9]. Tout les caractères accentués ou autres sont à éviter. Vous pourrez également utiliser les symboles #, $, _.
  • Le login devra commencer par une lettre. Si vous désirez utiliser des logins composé uniquement de chiffres vous devrez alors entourer votre login entre des ".

Note : Il faudra faire attention lors de l'utilisation des " sur un login car Oracle deviendra alors sensible à la casse.

"DURAND_D" ne sera pas identique à "durand_d".

1.3. Choisir la méthode d'authentification de l'utilisateur

Afin d'authentifier un utilisateur et de définir les actions que celui-ci sera en mesure d'effectuer sur la base de données, le serveur Oracle doit pouvoir vérifier les accès de l'utilisateur lorsque celui-ci se connecte.

Il existe différents type d'authentification :

  • Authentification par la base de données.
  • Authentification par le système d'exploitation.
  • Authentification par le réseau.

1.3.1. Par la base de données

Ce mode, le plus courant, est le mode par défaut. En clair l'utilisateur est authentifié avec le mots de passe stockés dans la base de données. Cela signifie que la base de données devra être ouverte pour q'un utilisateur puisse se connecter.

Pour créer un utilisateur authentifié par la base de données, vous devrez utiliser la clause IDENTIFIED BY <password>.

Le mot de passe devra dans les cas par défaut commencer par une lettre, avoir une longueur maximale de 30 caractères et ne pourra etre composé que de chiffres, lettre de l'alphabet, et des symboles suivants : #, _, $ (bien que Oracle ne préconise pas l'utilisation de # et $)

Toutefois il est possible d'outrepasser ces conventions en entourant le mot de passe de ". Ce qui nous permettra de faire débuter notre mots de passe par un chiffre et d'utiliser des caractères accentués. Il est bon de savoir que Oracle préconise l'utilisation de caractères mono-bytes même si la base de données supporte les caractères multi-bytes.

Voici un exemple de création simple d'un utilisateur authentifié par la base de données :

 
Sélectionnez

				CREATE USER scott IDENTIFIED BY tiger;
				

Cette commande va donc créer un utilisateur SCOTT dont le mot de passe sera tiger. Pour se connecter il devra utiliser la commande suivante (après lui avoir attribué les droits nécessaires)

 
Sélectionnez

				CONNECT scott/tiger@<chaîne d'hôte>;
				

1.3.2. Par le système d'exploitation

Ce mode permettra à Oracle de se baser sur l'authentification de l'utilisateur par un système tierce ou par le système d'exploitation. L'avantage majeur de cette solution réside dans le fait que l'utilisateur n'aura alors besoin de s'authentifier qu'une seule fois sur son système d'exploitation.

Cependant cette solution apporte aussi son lot de faille de sécurité car si l'utilisateur oublie de se déconnecter de sa machine, il sera alors très simple de se connecter à la base sans avoir à fournir de mot de passe. Oracle ne recommande pas l'utilisation de ce mode d'authentification.

Pour créer un utilisateur authentifié de manière extérieure, vous devrez utilisez la clause IDENTIFIED EXTERNALLY.

Attention cette commande va nécessiter la configuration de quelques paramètres Oracle avant de pouvoir fonctionner correctement.

Nous allons prendre pour les exemples suivants :

  • Un utilisateur local helyos
  • Un utilisateur helyos du domaine galaxy

Nous allons donc voir comment configurer le serveur pour autoriser l'authentification de ces utilisateurs par le système d'exploitation.
Puis nous verrons comment configurer le client.

1.3.2.1. Configuration sur le serveur

La 1ère étape sera de configurer la valeur du paramètre OS_AUTHENT_PREFIX (dans le fichier init.ora). Ce paramètre servira à Oracle pour être en mesure de déterminer les utilisateurs devant être authentifiés par une application tierce.


Il est vivement conseiller de laisser la valeur par défaut OPS$

Valeur de OS_AUTHENT_PREFIX Login de l'utilisateur Connexion distante possible
OS_ OS_DURAND_D Non
Pas de préfixe DURAND_D Non
OPS$ (valeur par défaut) ou vide OPS$DURAND_D Oui

La 2ème étape sera de créer un utilisateur OS local ou de domaine. Pour ce point veuillez consulter la documentation de votre système d'exploitation.

La 3ème étape va dépendre du type d'utilisateur système que vous voulez autoriser.

Sur Windows, si l'utilisateur ne fais pas partie d'un domaine, vous allez devoir rajouter une valeur dans votre base de registre.
Dans HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEid (ou id correspond à l'instance qui devra authentifier les utilisateurs à l'aide du système).

Rajouter la clé OSAUTH_PREFIX_DOMAIN (de type valeur de chaîne extensible) et lui donner la valeur TRUE.

La 4ème étape consistera à vérifier la valeur du paramètre SQLNET.AUTHENTICATION_SERVICES dans le fichier sqlnet.ora. Celui-ci devra contenir la valeur NTS.

La 5ème étape consistera à créer explicitement le nouvel utilisateur de la base de données.

On lance SQL*Plus

 
Sélectionnez

				SQLPLUS /nolog
				

Puis on effectue les actions suivantes si l'utilisateur est un utilisateur OS local :

 
Sélectionnez

-- On se connecte en tant que DBA
CONNECT system/<mot de passe>
-- Si l'utilisateur est un utilisateur local on lance cette commande
CREATE USER ops$helyos IDENTIFIED EXTERNALLY;
-- On lui donne ensuite les droits par défaut 
GRANT connect, resource TO ops$helyos;
				

Si l'utilisateur est un utilisateur OS d'un domaine :

 
Sélectionnez

-- On se connecte en tant que DBA
CONNECT system/<mot de passe>
-- Si l'utilisateur est un utilisateur local on lance cette commande
CREATE USER "OPS$GALAXY\HELYOS" IDENTIFIED EXTERNALLY;
-- On lui donne ensuite les droits par défaut 
GRANT connect, resource TO "OPS$GALAXY\HELYOS";
				

Attention dans le deuxième cas il sera très important de mettre le nouveau nom d'utilisateur en majuscule car nous utilisons des guillemets et Oracle devient alors sensible à la casse. Si vous ne saisissez pas le login en majuscule vous devriez avoir l'erreur ORA-01017.

De plus sous Unix, il sera très important de préfixer le $ par un \ pour éviter que celui-ci ne soit interprété comme étant une variable d'environnement.

Une fois ces commandes effectuées le nouvel utilisateur sera en mesure de se connecter sur la base de données en utilisant la commande à partir du serveur.

 
Sélectionnez

				SQLPLUS /
				

1.3.2.2. Configuration sur le client

Comme la majeure partie du temps l'utilisateur lambda n'a pas accès directement au serveur. Donc voici les actions à effectuer pour que celui-ci puisse se connecter à distance sur le serveur tout en étant authentifié par son OS.

La première chose à faire va être de mettre à TRUE la valeur du paramètre REMOTE_OS_AUTHENT dans le fichier init.ora du serveur. Ce paramètre va permettre à des connexions distantes de pouvoir se connecter sur le serveur. Si vous oubliez de mettre à TRUE ce paramètre vous obtiendrez alors les erreurs suivantes :

 
Sélectionnez

ORA-01004: default username feature not supported; logon denied    
ORA-01988: remote os logon is not allowed    

Ensuite le reste de la configuration est très simple puisqu'il vous faudra juste avoir un compte local ou un compte de domaine sur la machine.
Vérifier la valeur du paramètre SQLNET.AUTHENTICATION_SERVICES dans le fichier sqlnet.ora. Celui-ci devra contenir la valeur NTS.

Configurer le client Net8 pour pouvoir accéder à la base de données

Se connecter en utilisant la commande :

 
Sélectionnez

				SQLPLUS /@<chaîne de connection>
				

1.4. Choisir les TABLESPACEs que l'utilisateur pourra utiliser

Il va maintenant falloir choisir le domaine d'action du nouvel utilisateur.

En effet, pour des raisons de sécurités évidentes, nous allons restreindre le champ d'action de l'utilisateur en choisissant les tablespaces que celui-ci sera en mesure d'utiliser.

En premier lieu il est très fortement déconseillé d'autoriser un utilisateur à utiliser le tablespace SYSTEM, qui doit impérativement rester dédié au dictionnaire de données.

Il va donc falloir identifier tous les tablespaces nécessaire à l'utilisateur, que ce soit des tablespaces de données, d'index, ou temporaire. Il n'y a pas de syntaxe particulière pour cette étape.

1.5. Définir les QUOTAs de l'utilisateur

Une fois les tablespaces identifiés, l'étape suivante va consister à définir l'espace alloué à l'utilisateur sur chacun des tablespaces.

Voici les différentes options disponibles pour les quotas :

  • Une taille en K (KiloBytes) ou en M (MegaBytes)
  • Unlimited

Par défaut le nouvel utilisateur dispose d'un quota null sur tous les tablespaces.

Voici un exemple d'assignation de quotas sur différents TABLESPACES :

 
Sélectionnez

...
QUOTA 5M ON TBS_USERS QUOTA UNLIMITED ON TMP_USERS...
...
				

1.6. Choisir les TABLESPACEs par défaut de l'utilisateur

Cette étape est absolument indispensable, elle va permettre de définir le tablespace de données et le tablespace temporaire de l'utilisateur. Cette étape est indispensable pour éviter toute écriture dans le tablespace SYSTEM (qui est assigné si aucun tablespace par défaut n'est défini).

Vous devrez définir ces deux tablespaces avec les options DEFAULT TABLESPACE pour le tablespace de données et TEMPORARY TABLESPACE pour le tablespace temporaire.

Voici un exemple d'utilisation :

 
Sélectionnez

...
DEFAULT TABLESPACE tbs_user TEMPORARY TABLESPACE tmp_user
...
				

1.7. Syntaxe complète de l'ordre CREATE USER

Voici la structure complète d'un ordre CREATE USER :

Image non disponible

Voici une explication de tous les mots clé.

utilisateur :
Login du futur utilisateur (voir paragraphe 1.2)

IDENTIFIED BY mot de passe :
Active l'authentification par la base de données avec le mot de passe spécifié.

IDENTIFIED EXTERNALLY :
Active l'authentification par le système d'exploitation

IDENTIFIED GLOBALLY AS 'nom externe' :
Active l'authentification par un LDAP externe.

DEFAULT TABLESPACE nom du tablespace :
Permet d'attribuer un TABLESPACE de données par défaut à l'utilisateur.

TEMPORATY TABLESPACE nom du tablespace :
Permet d'attribuer un TABLESPACE temporaire par défaut à l'utilisateur.

QUOTA options ON nom du tablespace :
Permet de définir le quota d'espace attribué à l'utilisateur sur un TABLESPACE précis.

PROFILE nom du profil :
Permet d'attribuer un profil limitant les ressources système de l'utilisateur.

PASSWORD EXPIRE :
Permet de faire expirer le mot de passe de l'utilisateur pour que celui-ci le change lors de la première connexion.

ACCOUNT LOCK / UNLOCK :
Permet d'activer ou de désactiver un compte utilisateur.

1.8. Exemples

Voici quelques exemples de création d'utilisateurs Oracle :

 
Sélectionnez

CREATE USER Helyos 
    IDENTIFIED BY mypass1 
    DEFAULT TABLESPACE tbs_users 
    QUOTA 10M ON tbs_users 
    TEMPORARY TABLESPACE tmp_users
    QUOTA 5M ON tmp_users
    QUOTA 5M ON tools 
    PROFILE app_user 
    PASSWORD EXPIRE;

L'utilisateur helyos aura donc le mot de passe mypass1. Son TABLESPACE par défaut sera tbs_users avec un quota de 10Mo, son tablespace temporaire sera le TABLESPACE tmp_users avec un quota de 5M. Il aura aussi la possibilité d'utiliser le TABLESPACE tools avec un quota de 5Mo.
Il devra changer son mot de passe lors de la connexion et se verra attribuer le profil app_user.

 
Sélectionnez

CREATE USER "OPS$GALAXY\HELYOS"
    IDENTIFIED BY mypass1 
    DEFAULT TABLESPACE tbs_users 
    QUOTA 10M ON tbs_users 
    TEMPORARY TABLESPACE tmp_users
    QUOTA 5M ON tmp_users
    QUOTA 5M ON tools 
    PROFILE app_user 
    PASSWORD EXPIRE;

L'utilisateur aura les mêmes attributs que celui de l'exemple précédent mais celui-ci sera authentifié par le système d'exploitation. De plus il est important de savoir que seul l'utilisateur HELYOS du domaine GALAXY pourra se connecter avec ce nouvel utilisateur, et que l'utilisateur local HELYOS ne pourra pas utiliser ce nouveau compte.

2. Modifications d'un utilisateur

2.1. Modification de son mot de passe

Si vous souhaitez changer le mot de passe d'un utilisateur voici la commande que vous devrez utiliser.

 
Sélectionnez

ALTER USER < login de l'utilisateur > IDENTIFIED BY < nouveau mot de passe >
		

Cette commande permettra de modifier le mot de passe d'un utilisateur. Si vous avez utilisé la fonction de vérification de mots de passe fournie par Oracle (script UTLPWDMG.SQL) ou que vous avez crée la votre, vous allez devoir utiliser une option supplémentaire : l'option REPLACE avec l'ancien mot de passe afin que celui-ci puisse être passé à la fonction de vérification de mot de passe.

Exemple :

 
Sélectionnez

		ALTER USER < login de l'utilisateur > IDENTIFIED BY < nouveau mot de passe > REPLACE < ancien mot de passe > 
		

Pour les DBAs :

Vous pouvez parfois, en tant que DBA, être confronté au type de problème suivant :

Devoir utiliser le compte d'un autre utilisateur mais sans changer son mot de passe. (Par exemple cet utilisateur dispose d'une procédure qui ne pourra être lancée que par cet utilisateur car la condition a été codée dans la procédure).

Voici une méthode qui va vous permettre de prendre la place de cet utilisateur sans changer son mot de passe.

 
Sélectionnez

-- On se connecte en DBA
sqlplus system/<mot de passe>@< chaine de connexion >
		
-- On fait un export text des informations de l'utilisateur dont on souhaite prendre la place
SPOOL c:\saveuser.sql
SELECT 'ALTER USER '||username ||' IDENTIFIED BY VALUES '''||password||''' ;'
FROM dba_users
WHERE username='< login du user >';
SPOOL OFF

-- On change son mot de pass
ALTER USER < login du user > IDENTIFIED BY tata;

-- On se connecte en tant que l'autre utilisateur
CONNECT < login du user >/tata

-- On fait nos actions
...


-- On execute l'ordre SQL contenu dans saveuser.sql
ALTER USER < login du user > IDENTIFIED BY VALUES '< mot de passe crypté >' ;

Cette méthode vous permet de prendre la place d'un utilisateur temporairement sans connaitre son mot de passe, et sans que cela soit visible par l'utilisateur. L'option IDENTIFIED BY VALUES est une des nombreuses commandes cachées d'Oracle.

2.2. Modification des quotas

La syntaxe de modification des quotas d'un utilisateur n'est pas différente de la syntaxe utilisée lors de la création de l'utilisateur.

Cependant il est important de noter que si un utilisateur disposait de 1Mo de quotas sur un TABLESPACE et qu'il en avait utilisé la moitié avec des tables, et bien si vous lui modifiez son quota à 0Mo sur ce TABLESPACE cela n'impliquera pas que ses tables soient vidées ou supprimées, mais cela sinifiera que ses tables ne pourront pas s'allouer d'extents supplémentaires.

Exemple :

 
Sélectionnez

			ALTER USER scott QUOTA 15M ON tbs_users QUOTA 0M ON tools;
			

2.3. Modification des TABLESPACES par défaut

La syntaxe à utiliser n'est pas différente de la syntaxe de création. Cette commande vous permettra de modifier les TABLESPACES par défaut de l'utilisateur. Cela ne déplacera pas les objets des anciens TABLESPACES.

Exemple :

 
Sélectionnez

ALTER USER scott DEFAULT TABLESPACE tbs_users2 TEMPORARY TABLESPACE tmp2;

2.4. Modification du status d'un utilisateur

Pour des raisons de sécurité, il peut parfois être utile de vérouiller le compte d'un utilisateur pour éviter que celui-ci soit utilisé de manière frauduleuse. Cette méthode peut aussi être utilisée pour organiser des objets dans un schéma sans que l'on puisse utiliser l'utilisateur en question.

Voici un exemple d'activation et de verrouillage d'un compte utilisateur :

 
Sélectionnez

-- Verrouillage du compte
ALTER USER scott ACCOUNT LOCK;

-- Activation du compte
ALTER USER scott ACCOUNT UNLOCK;

2.5. Syntaxe complète de l'ordre ALTER USER

Voici la structure complète d'un ordre ALTER USER :

Image non disponible

Voici une explication de tous les mots clé.

utilisateur :
Login du futur utilisateur

IDENTIFIED BY mot de passe :
Active l'authentification par la base de données avec le mot de passe spécifié.

IDENTIFIED EXTERNALLY :
Active l'authentification par le système d'exploitation

IDENTIFIED GLOBALLY AS 'nom externe' :
Active l'authentification par un LDAP externe.

DEFAULT TABLESPACE nom du tablespace :
Permet d'attribuer un TABLESPACE de données par défaut à l'utilisateur.

TEMPORATY TABLESPACE nom du tablespace :
Permet d'attribuer un TABLESPACE temporaire par défaut à l'utilisateur.

QUOTA options ON nom du tablespace :
Permet de définir le quota d'espace attribué à l'utilisateur sur un TABLESPACE précis.

PROFILE nom du profil :
Permet d'attribuer un profil limitant les ressources système de l'utilisateur.

PASSWORD EXPIRE :
Permet de faire expirer le mot de passe de l'utilisateur pour que celui-ci le change lors de la première connexion.

ACCOUNT LOCK / UNLOCK :
Permet d'activer ou de désactiver un compte utilisateur.

DEFAULT ROLE :
Ces options vont permettre de définir lors de la modification d'un utilisateur son ou ses rôles par défaut. Ces rôles seront activés lors de la connexion de l'utilisateur.

Nous ne traiterons pas ici la clause proxy.

3. Suppressions d'un utilisateur

Nous allons maintenant voir comment supprimer un utilisateur et son schéma.

Il est important de noter qu'un utilisateur actuellement connecté à la base ne pourra pas être supprimé.

Par exemple :

 
Sélectionnez

SQL> DROP USER scott CASCADE;
DROP USER scott CASCADE
*
ERREUR à la ligne 1 :
ORA-01940: impossible supprimer un utilisateur qui est connecté					
			

3.1. Supprimer un utilisateur avec un schéma vide

Pour cette méthode nous utiliserons juste la commande DROP USER.

Cette méthode est la méthode par défaut. Il faut juste vérifier que le schéma de l'utilisateur soit vide lors de l'exécution de cette commande. Sinon il en résultera l'erreur suivante :

 
Sélectionnez

SQL> DROP USER scott;
DROP USER scott
*
ERREUR à la ligne 1 :
ORA-01922: CASCADE à spécifier pour supprimer 'SCOTT'				
				

Cette erreur est due au fait que Oracle ne supprimera pas les objets à l'intérieur du schéma de l'utilisateur et qu'il vous faudra utiliser l'option CASCADE du chapitre suivant.

Voici un exemple de suppression d'un utilisateur ayant un schéma vide :

 
Sélectionnez

SQL> DROP USER test;

Utilisateur supprimé.			
				

3.2. Supprimer un utilisateur avec son schéma

Lorsque vous souhaitez supprimer un utilisateur et tous les objets de son schéma, vous devez alors utiliser l'option CASCADE.

Cette option va automatiquement effacer tout les objets contenus dans le schéma de l'utilisateur.
Si le schéma contient des tables, Oracle effacera alors automatiquement toute les contraintes d'intégrités des tables et toutes les contraintes d'intégrités dans les schémas d'autres utilisateurs qui faisaient références aux contraintes UNIQUE et PRIMARY KEY du schéma qui est en cours de suppression.

Oracle supprimera aussi tous les index liés aux colonnes des tables, ainsi que tout les triggers, les types de données (avec l'option FORCE).

Oracle invalidera mais ne supprimera pas les objets contenus dans d'autres schéma mais qui faisaient références au schéma supprimé.

Par contre, Oracle ne supprimera pas les rôles créés par l'utilisateur.

Voici un exemple de suppression d'un utilisateur et de son schéma :

 
Sélectionnez

SQL> DROP USER scott CASCADE;

Utilisateur supprimé.			
				

3.2. Syntaxe complète de l'ordre DROP USER

Voici la structure complète d'un ordre DROP USER :

Image non disponible

Voici une explication de tous les mots clé.

utilisateur :
Login de l'utilisateur à supprimer.

CASCADE :
Permet de supprimer le contenu du schéma de l'utilisateur qui sera supprimé.

4. Informations sur les utilisateurs

Nous allons ici voir les différentes vues qui seront utile pour obtenir des informations sur les utilisateurs que nous avons créés.

Les vues qui nous seront utiles sont les vues DBA_USERS et DBA_TS_QUOTAS (voire les vues USER_USERS qui contiendra les informations de l'utilisateur courant et USER_TS_QUOTAS qui contiendra les informations sur les quotas de l'utilisateur courant).

4.1. Descriptif de la vue DBA_USERS

Colonne Type Description
USERNAME VARCHAR2(30) NOT NULL Login de l'utilisateur
USER_ID NUMBER NOT NULL ID de l'utilisateur
PASSWORD VARCHAR2(30) Mot de passe encrypté
ACCOUNT_STATUS VARCHAR2(32) NOT NULL Statut du compte: OPEN : ouvert EXPIRED : Doit changer son mot de passe EXPIRED(GRACE) : Doit changer son mot de passe (en période de grace) LOCKED(TIMED) : Vérouillé pour un certain temps LOCKED : Vérouillé de manière définitive EXPIRED & LOCKED(TIMED) : Doit changer son mot de passe et vérouillé pour un certain temps EXPIRED(GRACE) & LOCKED(TIMED) : Doit changer son mot de passe (en période de grace) et vérouillé pour un certain temps EXPIRED & LOCKED : Vérouillé et doit changer son mot de passe EXPIRED(GRACE) & LOCKED : Doit changer son mot de passe (en période de grace) et vérouillé
LOCK_DATE DATE Date à laquelle le compte a été vérouillé si le status est LOCKED
EXPIRY_DATE DATE Date du prochain changement de mot de passe
DEFAULT_TABLESPACE VARCHAR2(30) NOT NULL TABLESPACE par défaut pour les données
TEMPORARY_TABLESPACE VARCHAR2(30) NOT NULL TABLESPACE par défaut pour les données temporaires
CREATED DATE NOT NULL Date de création de l'utilisateur
PROFILE VARCHAR2(30) NOT NULL Nom du profil assigné à l'utilisateur
INITIAL_RSRC_CONSUMER_GROUP VARCHAR2(30) Nom du groupe de consomation des ressources
EXTERNAL_NAME VARCHAR2(4000) Nom exterieur (pour option IDENTIFIED GLOBALLY)

4.2. Descriptif de la vue DBA_TS_QUOTAS

Colonne Type Description
TABLESPACE_NAME VARCHAR2(30) NOT NULL Nom du TABLESPACE
USERNAME VARCHAR2(30) NOT NULL Nom de l'utilisateur à qui ce quota est assigné
BYTES NUMBER Nombre de Bytes alloué actuellement à l'utilisateur sur le TABLESPACE
MAX_BYTES NUMBER Quota maximal en bytes de l'utilisateur sur ce TABLESPACE (contiendra -1 si il n'y a pas de limite)
BLOCKS NUMBER NOT NULL Nombre de blocs alloué actuellement à l'utilisateur sur le TABLESPACE
MAX_BLOCKS NUMBER Quota maximal en blocs de l'utilisateur sur ce TABLESPACE (contiendra -1 si il n'y a pas de limite)

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

Le guide Oracle par Orafrance, Helyos et SheikYerbouti