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 :

[RULE][PRIVILEGES] : FK - schéma différent


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2002
    Messages
    549
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 549
    Par défaut [RULE][PRIVILEGES] : FK - schéma différent
    Bonjour à tous,

    Oracle 9i standard Edition

    Je vous résume mon pb du jour

    J'ai un schéma 1, l'utilisateur a les rôles CONNECT et RESSOURCE
    J'ai créé un rôle appelé RULE_REPLICATION pour que cet utilisateur puisse faire des SELECT sur des tables d'un autre schéma que l'on appelera schéma 2

    j'ai créé les synonymes publics des tables du schéma 2

    A ce stade, l'utilisateur 1 peut faire un select de n'importe quelle table du schéma 2.

    Maintenant, je souhaiterai que l'utilisateur 1 puisse créer des tables dans son schéma en ajoutant des contraintes de type FK en référençant des tables du schéma 2;

    Lorsque je tente la manip' je me mange une ORA-00942

    Table ou vue inexistante . Vous ne disposez pas de priviléges suffisants pour effectuer l'opération
    J'ai essayé la même manip' connecter en tant que SYS, même erreur.

    J'ai essayé d'ajouter le privilége ALTER ANY TABLE au rule RULE_REPLICATION, même pb.

    Ma question : quels sont les roles/priviléges que je dois ajouter pour que la manip" fonctionne ?
    Attention, l'utilisateur 1 ne doit pas avoir plus de droits que le SELECT TABLE sur le schéma 2.

    Merci d'avance

  2. #2
    Membre éclairé

    Inscrit en
    Septembre 2003
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 425
    Par défaut
    c'est le droit REFERENCES qu'il te faut :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Revoking the REFERENCES Schema Object Privilege
     
    If the grantee of the REFERENCES object privilege has used the privilege to create a foreign key constraint (that currently exists), then the grantor can only revoke the privilege by specifying the CASCADE CONSTRAINTS option in the REVOKE statement:
     
    REVOKE REFERENCES ON Dept_tab FROM jward CASCADE CONSTRAINTS;
     
    When the CASCADE CONSTRAINTS option is specified, any foreign key constraints currently defined that use the revoked REFERENCES privilege are dropped.
    Cependant, je crois me souvenir qu'il ne peut pasa être attribuer via un role, mais je trouve rien dans dans doc

  3. #3
    Membre éclairé
    Inscrit en
    Novembre 2002
    Messages
    549
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 549
    Par défaut
    Citation Envoyé par sygale
    c'est le droit REFERENCES qu'il te faut :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Revoking the REFERENCES Schema Object Privilege
     
    If the grantee of the REFERENCES object privilege has used the privilege to create a foreign key constraint (that currently exists), then the grantor can only revoke the privilege by specifying the CASCADE CONSTRAINTS option in the REVOKE statement:
     
    REVOKE REFERENCES ON Dept_tab FROM jward CASCADE CONSTRAINTS;
     
    When the CASCADE CONSTRAINTS option is specified, any foreign key constraints currently defined that use the revoked REFERENCES privilege are dropped.
    Cependant, je crois me souvenir qu'il ne peut pasa être attribuer via un role, mais je trouve rien dans dans doc
    Salut sygale et merci de ta réponse
    je viens de trouver en même temps que tu postais
    http://forums.oracle.com/forums/mess...ssageID=957969

    en effet, on ne peut pas passer par un role directement. Il faut directement affecter le privilége REFERENCES sur l'objet à l'utilisateur

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

Discussions similaires

  1. Utiliser un schéma différent de public sous postgreSQL
    Par lhapaipai dans le forum Doctrine2
    Réponses: 1
    Dernier message: 25/08/2011, 19h45
  2. Vue sur deux schémas différents
    Par arezki76 dans le forum Oracle
    Réponses: 3
    Dernier message: 20/01/2011, 17h06
  3. Requête sur 2 schémas différents
    Par Tartenpion dans le forum SQL
    Réponses: 2
    Dernier message: 14/09/2008, 10h03
  4. Import datapump 10g entre schémas différents
    Par grome dans le forum Administration
    Réponses: 4
    Dernier message: 30/05/2008, 12h07
  5. créer un schéma différent de dbo
    Par dolph dans le forum Langage SQL
    Réponses: 1
    Dernier message: 19/01/2007, 14h42

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