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 :

privilèges sur un schema


Sujet :

Oracle

  1. #1
    Membre habitué
    Inscrit en
    Août 2006
    Messages
    181
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 181
    Points : 166
    Points
    166
    Par défaut privilèges sur un schema
    Bonjour,
    j'ai 2 schema U1 et U2 je veux que U1 possede tous les droits sur le shema U2.
    dans le shema U2 on peut rajouter des objet dynamiquement
    y at-il un moyen pour faire une affectation dynamique des privilèges sur tout le schema U2 ?

  2. #2
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 224
    Points : 19 566
    Points
    19 566
    Billets dans le blog
    25
    Par défaut
    Soit mettre des droits ANY, mais c'est la porte ouverte à tous les accès car on ne peut pas le donner sur un schéma en particulier, du moment que le schéma en question n'est pas le nôtre propre.

    Soit faire une moulinette qui donne le droit à la volés sur tous les objets du schéma en question. Moulinette à lancer via un scheduler quelconque (à la limite, celui d'Oracle)

    Exemple eh Shell script

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    #!/bin/ksh
     
    # Nom du script : Droits.ksh
    # Date          : 17.7.2006
    # Auteur        : Fabien Celaia 
    # Syntaxe       : Droits.ksh -S SERVICE -O Owner -U Utilisateur
    # Paramètres    :
    # Code retour   :  0 = ok
    #                 -1 = mauvaise syntaxe
    #
    # Modifications : Visa Date    Description
    #                 ---- ------- --------------------------------------
    #
     
     
    while getopts "S:O:U:h" opt
    do
            case $opt in
                    S) SERVICE=$OPTARG;;
                    O) OWNER=$OPTARG;;
                    U) UTILISATEUR=$OPTARG;;
                    h) echo "Syntaxe : ${SYNTAX}" ; exit ;;
            esac
    done
     
    # Test du nombre de paramètres minimum
    if [[ $# < 4 ]]
    then
            echo Pas asez de paramètre : $#
            echo "Syntaxe : ${SYNTAX}"
            exit -1
    fi
     
    sqlplus -s system/***@${SERVICE} << EOF
    set pagesize 0
    set linesize 1000
    spool $$.sql
     
    select 'GRANT ALL ON '||owner||'.'||object_name|| ' TO ${UTILISATEUR} ; '
    from dba_objects
    where owner='${OWNER}'
    and object_type in ('TABLE','VIEW') ;
     
    spool off
     
    @$$.sql
     
    exit ;
    EOF
    rm $$.sql
     
    exit 0

  3. #3
    Membre habitué
    Inscrit en
    Août 2006
    Messages
    181
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 181
    Points : 166
    Points
    166
    Par défaut
    Merci pour cette réponse.
    mon grand soucis c'est que il y a une application qui va créer des objets sur le schema U2 donc U1 n'aura pas de privilèges sur ces nouveaux objets. l'affectation des privilèges dois ce faire juste aprés la création pour cela je ne peux pas utiliser le scheduler. lje dois implementer une solutin sur la base puisque je ne peux pas modifier l'application !

  4. #4
    Membre habitué
    Inscrit en
    Août 2006
    Messages
    181
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 181
    Points : 166
    Points
    166
    Par défaut
    je n'ai pas trouvé de réel solution à ce pb donc si qq à une autres solution c'est la bienvenue
    Merci

  5. #5
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    donc pourquoi pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    grant select any table to u2;

  6. #6
    Membre habitué
    Inscrit en
    Août 2006
    Messages
    181
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 181
    Points : 166
    Points
    166
    Par défaut
    bonjour,
    pour les privilèges sytème il faut éviter vu qu'il ya d'autres Schema

  7. #7
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Vous pouvez essayer de créer un trigger sur l'événement CREATE et exécuter le GRANT concerné avec du SQL dynamique dans le corps du trigger.

    Voir: http://download-uk.oracle.com/docs/c...evt.htm#999437

  8. #8
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    un TRIGGER AFTER CREATE, excellente idée, je ne connaissais pas

  9. #9
    Membre habitué
    Inscrit en
    Août 2006
    Messages
    181
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 181
    Points : 166
    Points
    166
    Par défaut
    pifor> ça maaaaaaarche waw super génila ces trigger système je connaissais pas du tout

    Merci pifor

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

Discussions similaires

  1. requete via VBA sur different schema oracle
    Par FO dans le forum Access
    Réponses: 3
    Dernier message: 19/01/2006, 16h40
  2. [10g] Accorder des privilèges sur la vue v$sysstat
    Par heffer69 dans le forum Oracle
    Réponses: 3
    Dernier message: 20/07/2005, 18h22
  3. Réponses: 3
    Dernier message: 03/05/2005, 19h18
  4. [DB2] requete sur plusieurs schema
    Par xjnoel dans le forum DB2
    Réponses: 1
    Dernier message: 22/11/2004, 13h39
  5. Votre avis sur le schema Relax NG...
    Par Bj dans le forum Valider
    Réponses: 8
    Dernier message: 19/09/2003, 18h30

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