Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 30/05/2011 10:04:42
- GloReX
- Membre
Droit dans les procédures stockées
Bonjour,
Je souhaiterai avoir un éclaircissement sur la gestion des droits dans les procédure/fonction stockée...
J'ai un utilisateur A qui exécute la fonction "superproc()"
J'ai défini le droit suivant sur la fonction.
GRANT EXECUTE ON FUNCTION schema.superproc() TO A;
L'utilisateur A a pour droit sur la table:
GRANT SELECT, INSERT ON TABLE schema.tabledata TO A;
Le serveur inscrit dans le log :
2011-05-29 01:00:57 CEST ERREUR: droit refusé pour la relation tabledata
Cela semble expliquer qu'il faut j'ajoute le droit DELETE sur la table schema.tabledata à l'utilisateur A... le problème est que je ne veux pas, pour raison de sécurité, que l'utilisateur A puisse supprimer des données de cette table. Y a-t-il une solution pour contourner ce problème...
Merci
Hors ligne
#2 30/05/2011 10:41:59
- gleu
- Administrateur
Re : Droit dans les procédures stockées
Si votre procédure stockée utilise DELETE, en effet, il vous manque ce droit pour cet utilisateur. L'alternative est de créer la procédure stockée en tant qu'un utilisateur qui a ce droit et en déclarant la procédure comme SECURITY DEFINER. Dans ce cas, la procédure n'est pas exécuté en tant que l'utilisateur A mais en tant que le propriétaire de la procédure.
Guillaume.
Hors ligne
#3 30/05/2011 14:04:55
- GloReX
- Membre
Re : Droit dans les procédures stockées
Ok, ça fonctionne très bien.
Petite question:
Le faite de mettre l'option SECURITY DEFINER permet d'exécuter la fonction avec les droits du propriétaire, cependant est-ce que la règle définie par le GRANT EXECUTE est elle shunté ?
Hors ligne
#4 30/05/2011 15:03:02
- Marc Cousin
- Membre
Re : Droit dans les procédures stockées
Non. Il faut avoir le droit d'exécuter (grant execute) la fonction pour ensuite bénéficier du security definer.
Marc.
Hors ligne
#5 31/05/2011 16:05:30
- GloReX
- Membre
Re : Droit dans les procédures stockées
Nikel, merci pour la confirmation
Hors ligne
Pages : 1