IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Oracle Discussion :

SYSDBA : c'est quoi et où trouver les infos? [11gR2]


Sujet :

Oracle

  1. #1
    Membre Expert
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 2 005
    Par défaut SYSDBA : c'est quoi et où trouver les infos?
    Hello tout le monde,

    J'ai un souci avec le mot clé sysdba car je n'arrive pas à trouver dans le dictionnaire de données des infos dessus.

    Je résume ce que j'ai compris dans ce micmac :
    1) sysdba n'est pas un rôle car il est absent de la table dba_roles
    2) sysdba n'est pas un user car une fois connecté avec "sqlplus / as sysdba", si je fais "show user", le résultat est "SYS" qui lui est un user
    3) DBA est un rôle associé à SYS
    4) sysdba peut-être donné par GRANT et enlever par REVOKE à un user donc si ce n'est pas un rôle c'est alors un privilège système ou un ensemble de privilèges système

    A mon niveau, je crois comprendre que sysdba est un ensemble de privilège systèmes qui permet notamment de se connecter en étant authentifié par le système d'exploitation.

    Ma question est donc : dans quelle table du dictionnaire de données est-ce que je peux trouver une référence à sysdba? Et si c'est un ensemble de privilèges système, dans quelle table je peux voir la liste de ses privilèges?

  2. #2
    Expert confirmé
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 822
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    SYSDBA est un privilège système qui n'est pas enregistré dans le dictionnaire (on ne le voit pas dans DBA_SYS_PRIVS) mais:
    - par authentification OS (un user dans le groupe 'dba' sous linux ou 'ORA_DBA' sous Windows) sans nécessiter de password
    - ou par un user enregistré dans le orapwd auquel on a fait un grant SYSDBA
    On peut voir ces derniers dans v$pwfile_users
    Cordialement,
    Franck.

  3. #3
    Membre Expert
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 2 005
    Par défaut
    Hello Pachot,

    Puis-je dire que tu me troues le popotin (pour rester correct)?
    Tu dis que sysdba est un privilège système NON répertorié dans DICTIONNARY?

    Pourquoi Oracle a-t-il fait cela? Quel est l'intérêt?
    Est-ce que tu aurais un lien prouvant ce que tu dis, même si je te fais confiance, mais je suis tellement surpris que j'aimerais beaucoup avoir un lien vers le site d'Oracle par exemple.
    Et toi, où as-tu eu cette information?

    Je te remercie pour tes infos qui sont vraiment très intéressantes

  4. #4
    Expert confirmé
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 822
    Billets dans le blog
    1
    Par défaut
    C'est tout à fait normal qu'il faille des privilèges qui ne sont pas stockés dans le dictionnaire. Sinon comment vérifier que tu as le droit de démarrer une base? Le dictionnaire n'étant disponible que lorsqu'elle est ouverte. Ou simplement le droit de CREATE DATABASE ... qui crée le dictionnaire.

    Comme liens, il y a le glossaire: https://docs.oracle.com/database/121...ry.htm#i432534

    SYSDBA: A special database administration role that contains all system privileges with the ADMIN OPTN, and the SYSOPER system privilege. SYSDBA also permits CREATE DATABASE actions and time-based recovery.
    Et: https://docs.oracle.com/database/121...htm#ADMIN11047

  5. #5
    Membre Expert
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 2 005
    Par défaut
    OK c'est bon, il est marqué noir sur blanc "A special database administration role" donc c'est un rôle!
    Je suis maintenant fixé.

  6. #6
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Par défaut
    SYSDBA est un privilège système, répertorié comme tel dans SYSTEM_PRIVILEGE_MAP.
    Il est en effet spécial puisque ce sont des mécanismes extérieurs à la base de données qui vérifient qui en est titulaire.
    Comme l'a dit Franck, cette information (qui est SYSDBA) ne figure pas dans DBA_SYS_PRIVS, car les vues DBA reposent sur les tables du dictionnaire de données, ce qui exige que la base soit OPEN.
    Or la connexion SYSDBA sert notamment pour démarrer la base, donc on ne pourrait pas avoir l'information.

    Dans le cadre de l'authentification SYSDBA par fichier de mots de passe, c'est dans V$PWFILE_USERS, qui est une vue pointant vers le fichier de mots de passe, et donc indifférente à l'état d'ouverture de la base, que l'on trouvera l'information.

    Quoi qu'en dise le glossaire, SYSDBA n'est pas un rôle, contrairement à DBA par exemple.
    Le reste de la doc parle à juste de titre de privilège système, comme ici : https://docs.oracle.com/cd/B28359_01...310/dba006.htm

  7. #7
    Membre Expert
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 2 005
    Par défaut
    Merci Pomalaix, je suis allé voir dans SYSTEM_PRIVILEGE_MAP et c'est effectivement le privilège 83

    Voilà un problème de résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 18/01/2015, 18h06
  2. Réponses: 3
    Dernier message: 07/05/2014, 16h18
  3. Ou trouver les infos de "IPCONFIG/ALL"
    Par Speed41 dans le forum Windows
    Réponses: 2
    Dernier message: 16/04/2014, 23h30
  4. c'est quoi les fonctions UDF
    Par devalender dans le forum Débuter
    Réponses: 7
    Dernier message: 28/05/2004, 09h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo