Connexion à Oracle

Pour se connecter on doit en général fournir un nom d'utilisateur, un mot de passe et éventuellement un nom de base.
Une base locale est identifiée sur un OS particulier, par une variable d’environnement généralement nommée ORACLE_SID.Il peut exister plusieurs bases locales sur une même machine. Sur NT, l’ ORACLE_SID par défaut à pour valeur ‘ORCL’.

Une base distante est identifiée par un alias (synonyme) SQL*Net. Suivant les cas ce nom peut être défini dans des fichiers de config SQL*Net locaux (TNSNAMES.ORA et LISTENER.ORA) ou par un serveur de noms centralisé de type ORACLE NAMES.

Syntaxe générale de connexion

commande_de_connexion nom_utilisateur/mot_de_passe@nom_base
Sous SQL*PLus on aura par exemple :
SQL> connect scott/tiger@TEST
Si aucune base n’est précisée c’est la base locale positionnée dans l’environnement qui est utilisée.

comptes par défaut

Il existe en général un compte de démo : SCOTT, mot de passe TIGER
et un compte DBA : SYSTEM , mot de passe MANAGER

Connexion automatique

Oracle offre une possibilité de se connecter sans fournir explicitement le mot de passe du compte. Ceci ne veut pas dire que le compte n’est pas protégé, mais que la protection est déporté au niveau de l’OS, ou en d’autres termes que le SGBD ‘fait confiance’ au système d’authentification de l’OS qui le porte. Pour que ceci soit possible il faut

1) que l’utilisateur, soit défini comme authentifié de manière externe,
2) que le nom du compte aie pour suffixe le nom du compte de l’OS et pour préfixe un préfixe générique défini dans le fichier de paramétrage de la base (init.ora) par la variable OS_AUTHENT_PREFIX. Par défaut OS_AUTHENT_PREFIX vaut ‘OPS$’.
3) que l’utilisateur se connecte à Oracle en ne fournissant ni nom ni mot de passe mais simplement le séparateur ‘/’.

exemple :

// creation du user par le DBA
SQL> CREATE USER OPS$DD IDENTIFIED EXTERNALLY
on pourra ensuite (moyennant que l'utilisateur aie tous les privilèges qu'il faut...) se connecter en automatique :
// connexion à l’OS
login: DD
pwd : *******
// connexion automatique dans le compte OS
$> sqlplus /
SQL> user OPS$DD connected...

Pour plus d'infos voir la gestion des utilisateurs

Droits minimums de connexion

droits de créer une session ou droit de connexion (CREATE SESSION) Utile pour des accès en consulation ou mises à jour, à certaine tables.

Si on ne lui affecte aucun droits supplémentaire il ne pourra même pas consulter une table (!) et encore moins en créer (!). voir droits d’accès aux objets.
Le rôle CONNECT est un ensemble de droits minimum prédéfini qui comme son nom ne l’indique pas dépassent largement le droit de simple connexion. Voir les rôles


(c) 2002- 2006 Didier Deléglise


modifié
le 20/11/2006

Ecrire a DD
ecris
moi


les forums techniques Oracle

mon BLOG Oracle,
en Francais
connaitre DD
l'autre vie
de DD

mon CV

trucs
et astuces

JOBs Oracle
du jour
Homepage "Tout sur Oracle"
Mon site :
Tout sur Oracle (et le web)
Copyright (C) 2002
Utilisation de ces documents