Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
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 07/03/2007, 09h42   #1
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
Par défaut droits pour ALTER TABLE...sans solution

Bonjour,
j'ai une fonction qui me lance un calcul tout bête, enfin pas tant que ça mais rien d'extraordinaire.
Cependant, dans ce cas bien précis afin d'améliorer les temps de réponse, je souhaite faire ceci :
Code :
1
2
3
4
 
ALTER TABLE ma_table DISABLE TRIGGER ALL;
UPDATE ma_table à_partir_de mon_calcul;
ALTER TABLE ma_table ENABLE TRIGGER ALL;
ça se passe plutot pas mal...sauf que...ça se passe bien quand c'est moi ("DBA") qui le lance.

mes chers utilisateurs ont le message suivant :
Citation:
PSQLDatabaseError: PostgreSQL Error Code: (1)
ERREUR: doit ?tre le propri?taire de la relation t_period
CONTEXT: instruction SQL <<ALTER TABLE t_period DISABLE TRIGGER ALL>>
donc petit problème de droit.

est-il possible d'exécuter une instruction avec des privilèges supérieurs à l'instant T . je rêve d'un :
Code :
ALTER TABLE ma_table DISABLE TRIGGER ALL WITH mon_privilège_qui_va_bien
merci d'avance
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/03/2007, 10h56   #2
Membre chevronné
 
Avatar de grabriel
 
Inscription : septembre 2006
Messages : 935
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 935
Points : 626
Points : 626
Salut,

Tes utilisateurs ont quels droits sur t_period??
Si tu leur attribue des droits seulement sur les triggers??? ou que tu les mettes propriétaire et que tu enlèves les droits que tu veux pas qu'ils aient....??????
grabriel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/03/2007, 12h23   #3
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
en fait, il semble que pour executer le ALTER, il faille être owner ou superuser...
ce qui n'est donc pas possible pour mes utilisateurs.

la dépersonnalisation est-elle possible sous PGSQL?

j'ai honteusement créer le même topic dans langage SQL, fil de la conversation :
http://www.developpez.net/forums/sho...37#post1829837
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/03/2007, 12h30   #4
Membre chevronné
 
Avatar de grabriel
 
Inscription : septembre 2006
Messages : 935
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 935
Points : 626
Points : 626
En faite je pensais à ce que TU leur attribue les droits sur les triggers, sous pgadminIII (c'est le plus simple y'a juste a cliquer) avec Postgres 8.x tu peux spécifier que certains droits à des personnes et donc donner à tes utilisateurs le droit de modifier la table mais pas supprimer, d'utiliser les triggers mais de ne pas insérer etc...
grabriel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/03/2007, 12h49   #5
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
j'ai bien compris....sauf que les droits pour faire un ALTER ne sont pas dans cette fameuse liste sous pgAdmin.
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/03/2007, 13h12   #6
Membre chevronné
 
Avatar de grabriel
 
Inscription : septembre 2006
Messages : 935
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 935
Points : 626
Points : 626
Arghhhhh!!!

Autant pour moi!!!!! désolé faudrai que je change de lunettes!
grabriel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/03/2007, 11h51   #7
Invité régulier
 
Inscription : avril 2004
Messages : 9
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 9
Points : 9
Points : 9
utilise plutot GRANT ALTER TABLE TO ton_utilisateur ON t_period : cela permet d'autoriser l'utilisteur ton_utilisateur à faire des modifs sur la table t_period qui a comme owner si j'ai bien saisi le DBA (toi). sinon je ne vois pas comment tu pourrais acceder à une table qui n'ai pas à toi.

bonne continuation
dieu_du_net est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/03/2007, 11h59   #8
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
euh...elle vient d'où cette syntaxe??
sous PGSQL, il a pas l'air d'en vouloir...
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/03/2007, 17h54   #9
Invité régulier
 
Inscription : avril 2004
Messages : 9
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 9
Points : 9
Points : 9
cette commande marche pour moi postgres 8.2
Code :
GRANT SELECT, UPDATE, INSERT ON TABLE t_period TO ton_user
excuses moi pour la syntaxe.

bonne continuation
dieu_du_net est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/03/2007, 17h59   #10
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
je suis en 8.1 mais c'est pas le problème.
Moi aussi
Code :
GRANT SELECT, UPDATE, INSERT ON TABLE t_period TO ton_user
fonctionne sauf qu'on parlait d'un
Code :
GRANT ALTER TABLE t_period TO ton_user
ce qui n'est pas la même chose et n'est pas inclus dans la séquence précédente...
une autre idée?
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2007, 10h25   #11
Invité régulier
 
Inscription : avril 2004
Messages : 9
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 9
Points : 9
Points : 9
Et en faisant
Code :
GRANT ALL ON perid_t TO user;
est ce que tes commandes fonctionnent pour ton utilisateur user ??
dieu_du_net est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2007, 10h29   #12
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
non plus !!!

Bon, cette fois, c'est sur...ce n'est pas possible..il faut être superuser.
on a fait un paquet de tentative...on a bossé sur l'IRC de postgresql...

et finalement, on a choisi une autre solution..

merci à tous..

A+
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h44.


 
 
 
 
Partenaires

Hébergement Web