PostgreSQL
La base de données la plus sophistiquée au monde.

Ouverture de session

Navigation

Contactez-nous

Administration du site :
"equipe chez postgresqlfr point org"

Contact presse :
"fr chez postgresql point org"

Contact association :
"bureau chez postgresqlfr point org"

Questions PostgreSQL :
 IRC :
  serveur irc.freenode.net
  canal #postgresqlfr

Recherche

Accéder aux archives

« Octobre 2008  
Lun Mar Mer Jeu Ven Sam Dim
  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  

Syndication

Flux XML

Sondage

Quelle est la version de PostgreSQL la plus répandue sur vos serveurs ?
8.3
10%
8.2
42%
8.1
40%
8.0
2%
7.4
6%
7.3 ou antérieure
0%
Nombre de votes: 48

Creation d'utlisateur par declencheur

Technique - général | Creation d'utlisateur par declencheur

Par ducker88 le 19/07/2006 - 10:59

Bonjour a tous,

Dans ma base de données actuelle j'ai une table 'utilisateur' avec pour champ, un nom d'utilisateur et un mot de passe et d'autres coordonnées. Afin de mieux securisé les droits sur celle-ci j'aimerai qu'a chaque fois que je crée un element dans cette table un rôle de connexion soit crée avec le mot de passe associé.

Est t'il possible de faire cela a l'aide d'un trigger ? Si oui pourriez vous m'indiquer la marche a suivre ?

Merci de vos reponses.

Options d'affichage des commentaires

Sélectionnez la méthode d'affichage des commentaires que vous préférez, puis cliquez sur "Sauvegarder les paramètres" pour activer vos changements.

Question

sparky/ = 20 Juillet, 2006 - 14:34

Bonjour,

Pour les triggers il faut regarder le plpgsql et la fonction perform.

Cependant, je pense que si tu pouvais expliquer exactement ton problème il y aurait une soluce plus simple : on ne crée pas un rôle chaque fois qu'une table reçoit un enregistrement.


Bonjour, En fait ce que je

ducker88/ = 20 Juillet, 2006 - 16:24

Bonjour,

En fait ce que je voudrais faire c'est pouvoir limiter l'acces a ma base d'apres ma table utilisateur.
Par exemple je voudrais que 'jean' ne puisse acceder qu'en lecture au differentes tables, par contre 'paul', doit pouvoir creer des nouveaux elements dans chaques tables. Je n'aurai que ces 2 utilisateurs cela serai simple mais j'en ai une quantité indefini. Il me semblait que creer un role par utilisateur etait la methode la plus judicieuse, mais si il a plus simple je suis preneur, peu etre lier ma table utilisateur a la table des roles de postgres, mais comment faire ?

Merci pour vos reponses.

V. Lemaire


Je pense que le plus simple,

sparky/ = 25 Juillet, 2006 - 11:47

Je pense que le plus simple, c'est de créer des rôles qui auront certains accès et puis les accorder aux utilisateurs, les rôles servent à regrouper des privilèges, en les accordant à des utilisateurs, tu sais quels seront leur droit. voir http://docs.postgresqlfr.org/8.1/user-manag.html

ce n'est pas un rĂ´le par utilisateur mais plusieurs utilisateurs par rĂ´les :-)

Attention :soit tu utilises la sécurité de postgresql (role et utilisateur) soit tu utilises une sécurité avec un utilisateur générique et une table utilisateur, et là tu programmes beaucoup.

la commande en plpgsql serait
perform grant role to utilisateur;


je veux utilisé la securité

ducker88/ = 26 Juillet, 2006 - 14:32

je veux utilisé la securité postgresql, mais comment gerer les utilisateurs de ma table par rapport a mes roles sachant que chacun d'eux a un mot de passe unique ?

Le second probleme est que mes utlisateurs ont d'autres specificité dans ma table. C'est pour cette raison que je voulais créer un role par utilisateur


Dans ce cas, ne crée pas un

sparky/ = 26 Juillet, 2006 - 16:41

Dans ce cas, ne crée pas un rôle par utilisateur, tu peux faire

perform grant select,insert,update on XXXXX to UTILISATEUR

ou alors

perform revoke ...

Les rĂ´les et les grants n'ont aucun impact sur les mots de passe utilisateur, l'utilisation des mots de passe se configure dans pg_hba.conf ;-) voir http://docs.postgresqlfr.org/8.1/client-authentication.html


Je pense que je vais creer un

ducker88/ = 27 Juillet, 2006 - 09:02

Je pense que je vais creer un seul role et je gererai mes droits directement dans ma prog.


© PostgreSQLFr, tous droits rĂ©servĂ©s.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.