Précédent   Forum des professionnels en informatique > Bases de données > Firebird > SQL
SQL Forum d'entraide sur le SQL pour Firebird
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/02/2005, 13h54   #1
Membre du Club
 
Inscription : mai 2003
Messages : 140
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 140
Points : 66
Points : 66
Par défaut Modifier l'utilisateur dans une PS ?

Bonjour,

Au cours d'une procédure stockée je souhaite effectuer une tache en tant qu'administrateur.
Connaissez vous le moyen de changer d'utilisateur au cours d'une procédure stockée ?

merci.
__________________
Les deux mots les plus brefs et les plus anciens, oui et non, sont ceux qui exigent le plus de réflexion. "Pythagore"
Sitting Bull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2005, 14h09   #2
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
On ne peux pas changer d'utilisateur dans une PS, la notion d'utilisateur est attachée à la connexion.

Quel est cette tache que vous souhaitez faire en tant qu'admin que vous ne pouvez faire avec le user normal ???

Pourquoi ne donnez vous pas les droits necessaire à votre PS ? et au USER le droit d'éxécuter cette PS ?
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2005, 14h22   #3
Membre du Club
 
Inscription : mai 2003
Messages : 140
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 140
Points : 66
Points : 66
Je souhaite que l'utilisateur A puisse supprimer une procédure créer par un utilisateur B ou C ou etc....
En parlant de droit, voulez vous dire quand mettant les droits suivants:
Code :
GRANT EXECUTE ON PROCEDURE MY_PROC TO PUBLIC
tous les utilisateurs pourront supprimer cette procédure ?
__________________
Les deux mots les plus brefs et les plus anciens, oui et non, sont ceux qui exigent le plus de réflexion. "Pythagore"
Sitting Bull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2005, 14h38   #4
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Non celà donne juste de droit d'exécution. Donc tout le monde a le droit d'executer MY_PROC.
Ensuite deuxième remarque vous ne pouvez supprimer ou créer une PS depuis une PS. A moins de le faire soit même dans les tables systemes (mais là attention si vous faites n'importe quoi vous risquez gros.) Dans cette optique, il faudrait donc donnez les droits à votre PS de modifier certaines tables systèmes et donner le droit d'execution de votre PS au public.
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2005, 14h54   #5
Membre du Club
 
Inscription : mai 2003
Messages : 140
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 140
Points : 66
Points : 66
Non, en fait je souhaite juste pouvoir supprimer ma PS par une simple requete.
Cependant étant donné que le créateur de MY_PROC est A, B ne peut pas la supprimer, et c'est la que je rencontre mon problème.
Dans l'ordre des choses l'utilisateur A doit pouvoir créer une procédure accessible à tous le monde et l'utilisateur B doit pouvoir la supprimer.
Chose qui parait extrément simple, or je n'arrête pas de rencontrer des problèmes.
J'en suis rendu a faire un script qui s'occupe de créer cette procédure en tant qu'administrateur, et un autre script qui s'occupe de la supprimer toujours en administrateur (solution non satisfaisant ?).
__________________
Les deux mots les plus brefs et les plus anciens, oui et non, sont ceux qui exigent le plus de réflexion. "Pythagore"
Sitting Bull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2005, 15h28   #6
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Pour la création vous pouvez le faire en temps que A
mais pour sa suppression il faut être soit A ou SYSDBA. Donc si vous êtes A et que vous voulez supprimer une PS appartenant à B, ce n'est pas possible.

Pourquoi créez vous les PS dynamiquement ?
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2005, 15h39   #7
Membre du Club
 
Inscription : mai 2003
Messages : 140
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 140
Points : 66
Points : 66
Tout simplement car elle change selon les situations.
__________________
Les deux mots les plus brefs et les plus anciens, oui et non, sont ceux qui exigent le plus de réflexion. "Pythagore"
Sitting Bull est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2005, 18h01   #8
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Citation:
Envoyé par Sitting Bull
Tout simplement car elle change selon les situations.
ca je m'en doute

Mais pourquoi ne pas en faire un par situation ?
Ou si vous ne pouvez pas ennumérer toutes les situations pourquoi faire une PS et pas tout simplement du SQL ?
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h57.


 
 
 
 
Partenaires

Hébergement Web