Bonjour,
J'ai un petit problème que je n'arrive pas à résoudre concernant un problème de gestion de droits.
Un utilisateur paul a été créé et possède les rôles CONNECT RESOURCE.
Un utilisateur pierre a été créé et possède les rôles CONNECT RESOURCE et CREATE ROLE.
Ce dernier a créé une table de la manière suivante :
L'utilisateur pierre attribue le droit de lecture à paul sur la table tb_localites de la manière suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 CREATE TABLE tb_localites ( pk_loc NUMBER CONSTRAINT ct_pk_loc PRIMARY KEY, npa_loc VARCHAR2(10) CONSTRAINT ct_nn_npa_loc NOT NULL, nom_loc VARCHAR2(25) CONSTRAINT ct_nn_nom_loc NOT NULL, CONSTRAINT ct_un_npa_nom_loc UNIQUE (npa_loc, nom_loc) );
L'utilisateur paul a accès sans problèmes aux données par la requête suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part GRANT SELECT ON tb_localites TO paul;
Par contre, si l'utilisateur pierre passe par un rôle de la manière suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM pierre.tb_localites;
Et que paul essaie d'accéder aux données de la manière suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 CREATE ROLE superviseur; GRANT SELECT ON tb_localites TO superviseur; GRANT superviseur TO paul;
Il n'est pas possible d'accéder à la table, ci dessous le message d'erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT * FROM pierre.tb_localites;
Je pense que je dois faire une erreur de débutant mais cela fait plusieurs heures que je cherche et je ne trouve pas la solution.ORA-00942: table or view does not exist
00942. 00000 - "table or view does not exist"
*Cause:
*Action:
J'ai pourtant souvent utilisé cette approche sans problème... me semble-t-il !
Quelqu'un saurait il ou est l'erreur dans mon approche ?
Merci pour vos réponses et bon week-end !
Partager