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 :

Pb: Quels privileges pour table partitionnée ?


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    193
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 193
    Par défaut Pb: Quels privileges pour table partitionnée ?
    Bonjour à tous,


    Voila, je travaille avec oracle 9i(test) et 10g (appl) sous XP.

    J'ai developpé des forms avec 10g. et je dois donner des privileges à un utilisateur qui doit administrer quelques tables. Il doit manipuler des tables partitionnées.

    Parmis les instructions qu'il doit faire sont :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    
    DELETE FROM maTable WHERE Date_1 between dat1 et date2;
    ALTER TABLE maTable TRUNCUTE PARTITION maTable_Part_jjmmaa;
    
    Je ne veux pas faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE maTable Drop partition maTable_Part_jjmmaa;


    Quels sont les privileges à donner sans lui permettre de modifier les tables ? (faire uniquement un truncute partition sur le ALTER)

    peut_on faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    GRANT DELETE ON maTable  TO monRole;
    GRANT ... TRUNCUTE PARTITION ON maTable  TO monRole;
    (juste une idée pas conventionnelle, je sais ).


    Merci beaucoup de votre aide

  2. #2
    Expert confirmé
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 822
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Pour faire un truncate d'une table d'un autre user, il faut être granté 'DROP ANY TABLE'. Pour donner un privilège plus restreint, alors la solution est de faire une procédure stockée qui exécute le truncate, et de faire un grant execute sur cette procedure. L'utilisateur appellera alors cette procédure.
    Cordialement,
    Franck.

  3. #3
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    193
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 193
    Par défaut
    Merci pour votre reponse,

    Au fait, il n'y a pas de probleme au niveau de l'execution de la procedure stocker, car elle contient quand meme le TRUNCUTE !? Ou bien je n'ai pas bien saisi la solution

    Je veux que mon USER execute les commandes, sur les objets d'un autre schema, les suivantes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DELETE FROM maTable WHERE Date_1 between dat1 et date2;
    ALTER TABLE maTable TRUNCUTE PARTITION maTable_Part_jjmmaa;
    Sans pour autant lui donner un pour ne pas pouvoir modifier la structure des tables. Est ce possible ????

    desolé pour mon insistance et ignorance

  4. #4
    Expert confirmé
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 822
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par krilas Voir le message
    Au fait, il n'y a pas de probleme au niveau de l'execution de la procedure stocker, car elle contient quand meme le TRUNCUTE !? Ou bien je n'ai pas bien saisi la solution
    La procédure stockée, elle est créée par le user à qui appartient les tables. Donc elle a le droit de faire un truncate (dans un execute immediate par exemple).

    Et ce user fait un grant execute à une autre utilisateur.

  5. #5
    Membre confirmé
    Inscrit en
    Août 2008
    Messages
    193
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 193
    Par défaut
    Merci bcp pachot

    Je vais concevoir votre solution

    Merci encore

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

Discussions similaires

  1. [2008R2] Trouver quel mois précède quel mois pour table de calendrier relatif
    Par Gatomarbre dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 02/05/2014, 17h30
  2. Problème EXP pour table partitionnée
    Par marvelromy dans le forum Import/Export
    Réponses: 2
    Dernier message: 25/06/2008, 17h07
  3. Quel schéma pour manipuler une table BD depuis un objet ?
    Par caesarvanou dans le forum Design Patterns
    Réponses: 2
    Dernier message: 19/12/2007, 09h29
  4. quel privilege pour lire v$parameter
    Par farenheiit dans le forum Administration
    Réponses: 3
    Dernier message: 06/06/2007, 15h28
  5. Quel type de table choisir pour la création d'un forum
    Par Xunil dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 19/11/2006, 12h40

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