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

Administration Oracle Discussion :

Création d'un utilisateur en ReadOnly [12c]


Sujet :

Administration Oracle

  1. #1
    Membre habitué
    Femme Profil pro
    Database
    Inscrit en
    Juin 2010
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Database

    Informations forums :
    Inscription : Juin 2010
    Messages : 125
    Points : 135
    Points
    135
    Par défaut Création d'un utilisateur en ReadOnly
    Bonjour,

    Ma question va peut-etre paraitre idiote, mais je me lance

    Je dois créer un utilisateur ayant un acces en lecture seul a ma base de donnees.

    Mais pour une raison que j'ignore, il n'a pas accès à toute les tables appartenant à l'utilisateur développeur.

    Plus précisement, mon utilisateur peut requêter une table créer à l'origine (il y a 10 ans), mais si j'en créer une nouvelle, nada! et je n'arrive pas à lui donner les droits dessus.

    Pourtant, lorsque je vérifie ces privilèges, il a bien un droit en lecture sur la-dite table.

    Bref, je pense que cela doit provenir de la création de la table mais pas sur.


    Please HELP!!!!

    Merci

    Lagnio - DBA très très debutante

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 138
    Points : 1 918
    Points
    1 918
    Par défaut
    Bonjour,

    A moins d'avoir accordé le privilège SELECT ANY TABLE directement ou au travers d'un rôle, il faut donner explicitement le droit de SELECT sur chaque nouvelle table.

    Quels sont les résultats des requêtes suivantes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select * from dba_sys_privs
    where privilege = 'SELECT ANY TABLE'
    and grantee = upper('&TON_USER_READONLY');
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    select * from dba_tab_privs
    where grantee = upper('&TON_USER_READONLY')
      and owner = upper('&TON_USER_DEV')
      and table_name = upper('&NOM_DE_LA_TABLE')
      and privilege = 'SELECT';
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select * from dba_role_privs
    where grantee = upper('&TON_USER_READONLY');

  3. #3
    Membre habitué
    Femme Profil pro
    Database
    Inscrit en
    Juin 2010
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Database

    Informations forums :
    Inscription : Juin 2010
    Messages : 125
    Points : 135
    Points
    135
    Par défaut
    Bonjour Vanagreg,

    Première requête:
    Grantee: GUEST
    Privilege: SELECT ANY TABLE
    Admin_option : NO
    Common : NO
    Inherited: NO

    La seconde requête ne retourne rien

    La troisième:

    Grantee: GUEST
    Grantee_role: READONLY
    Admin_option: NO
    Delegate_option: NO
    Default_role: YES
    Common: NO
    Inherited: NO

    Merci pour ton aide!

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 138
    Points : 1 918
    Points
    1 918
    Par défaut
    Ok donc il a le privilège SELECT ANY TABLE. Quelle est la table qu'il essaie d'interroger? Peux-tu copier-coller le résultat avec le message d'erreur?

  5. #5
    Membre habitué
    Femme Profil pro
    Database
    Inscrit en
    Juin 2010
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Database

    Informations forums :
    Inscription : Juin 2010
    Messages : 125
    Points : 135
    Points
    135
    Par défaut
    message d'erreur indique que la table n'existe pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ORA-00942: table or view does not exist
    00942. 00000 -  "table or view does not exist"
    *Cause:    
    *Action:
    Error at Line: 1 Column: 15

  6. #6
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Il faut vérifier les synonymes de la table, car la table n'est pas dans son schéma.
    Comment est interrogé cette table ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT * FROM SCHEMA.TABLE 
    ou juste
    SELECT * FROM TABLE
    More Code : More Bugs. Less Code : Less Bugs
    Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP

  7. #7
    Membre chevronné
    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Décembre 2019
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1 138
    Points : 1 918
    Points
    1 918
    Par défaut
    Préfixes-tu bien le nom de la table par le nom du user propriétaire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from user_dev.nom_table
    Sinon la table ou le user n'ont pas été créés en utilisant des guillemets?

  8. #8
    Membre habitué
    Femme Profil pro
    Database
    Inscrit en
    Juin 2010
    Messages
    125
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Database

    Informations forums :
    Inscription : Juin 2010
    Messages : 125
    Points : 135
    Points
    135
    Par défaut
    SUPER !! MERCI!!

    Ca fonctionne!! Il suffit de mettre le préfixe!

    Merci merci et remerci!!

    Trop contente!

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

Discussions similaires

  1. Création des comptes utilisateurs a partir d'un script et fichier texte
    Par hocine1978 dans le forum Administration système
    Réponses: 2
    Dernier message: 26/12/2006, 14h11
  2. probleme lors de la création d'un utilisateur sur un poste client.
    Par passion_info dans le forum Windows Serveur
    Réponses: 5
    Dernier message: 29/11/2006, 11h13
  3. Création d'interfaces utilisateurs
    Par vingrid6 dans le forum Access
    Réponses: 1
    Dernier message: 24/05/2006, 15h53
  4. []Création automatique d'utilisateurs
    Par SaeZ dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 27/10/2005, 13h38
  5. création de comptes utilisateur
    Par junty dans le forum Access
    Réponses: 10
    Dernier message: 17/10/2005, 09h35

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