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 :

Attribuer un Schema à un USER


Sujet :

Administration Oracle

  1. #1
    Candidat au Club
    Inscrit en
    Mars 2008
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 2
    Par défaut Attribuer un Schema à un USER
    Bonjour,

    Etant novice sur Oracle j'ai déjà pas mal recherché sur le web mais n'ai rien trouvé qui pouvait répondre à ma question.

    Voici donc ma problèmatique :

    J'ai une base dans laquelle j'ai plusieurs schémas.
    Je veux donner l'accès à un schéma en lecture à un utilisateur.
    J'ai donc créé un rôle auquel j'ai attribué le droit de SELECT sur chacune des tables du schema.
    J'ai ensuite créé l'utilisateur auquel j'ai attribué le rôle.

    Désormais, je voudrais que cet utilisateur, lorsqu'il se connecte arrive directement dans ce schéma.

    Merci de votre aide.

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 73
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alter session set current_schema=TOTO
    à la connexion de ton user .

  4. #4
    Candidat au Club
    Inscrit en
    Mars 2008
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 2
    Par défaut
    Merci pour cette réponse.
    Et effectivement cela fonctionne.

    Cependant cette solution n'est pas persistante.
    Serait-il possible de faire en sorte qu'à la connexion l'utilisateur soit déjà placé dessus ?

  5. #5
    Membre Expert Avatar de scheu
    Inscrit en
    Juin 2007
    Messages
    1 506
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1 506
    Par défaut
    Il faut créer un trigger à la connexion, qui vérifie que quand le user est TOTO, son schéma soit celui de TATA. Code (à vérifier car non testé) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    CREATE OR REPLACE TRIGGER SYS.TRIGGER_LOGON_TOTO
    AFTER LOGON
    ON DATABASE
    begin
        if (sys_context('userenv','session_user') = 'TOTO')
    	then
          execute immediate 'alter session set current_schema = TATA';
        end if;
    exception
      when others then
        return;
    end;
    La théorie, c'est quand on sait tout mais que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi.
    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi !

    Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    Il me semblait qu'un schéma et un user étaient directement liés, dans le sens où un schéma correspond à l'ensemble des objets détenus par un USER.

    Comment peut on dans ce cas définir un autre schéma à un USER? y'a là qqch qui m'échappe

  7. #7
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    un user a un schéma, mais un user n'est pas un schéma pour autant. Un user c'est une identité permettant de se connecter à la base alors que le schéma est un containers d'objet. Ainsi, un user même si il peut se connecter à la base ne voit pas forcément les objets contenu dans un autre schéma que le sien pour se faire, outre l'attribution des droits, il doit utiliser les objets en les appelant SCHEMA.OBJET si l'objet est dans un autre schéma. Changer le schéma courant évite de préfixer le nom des objets ce que permet également les synonymes.

    Pour faire simple :
    le user c'est celui qui se connecte
    le schéma c'est celui qui est propriétaire des objets
    un user a forcément un schéma associé

    Pour faire encore plus simple (quitte à faire grincer les dents des plus pointilleux ) :
    schéma = user locké

    J'espère que j'ai été clair

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 750
    Par défaut
    oui mais dans ce cas il faut que le USER en question est les droits sur tous les objets du schéma qui lui appartient à un autre USER ...non???

  9. #9
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    bien entendu

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

Discussions similaires

  1. difference entre schema et user
    Par haykelFST dans le forum Administration
    Réponses: 16
    Dernier message: 10/05/2011, 11h46
  2. Attribuer des droits à un User.
    Par Caillou63 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 31/07/2008, 17h53
  3. attribue XML schema
    Par tahtah dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 29/11/2007, 12h45
  4. Export de schema et users
    Par lecharcutierdelinux dans le forum Administration
    Réponses: 4
    Dernier message: 24/05/2007, 10h06
  5. limiter l'acces a un user a tout une base/schema en 1 fois
    Par jahjah42 dans le forum PostgreSQL
    Réponses: 23
    Dernier message: 18/09/2006, 08h57

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