PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 16/02/2010 15:47:51

eMerzh
Membre

Authentification web et tracking...

Bonjour à tous,
Voilà je suis actuellement occupé à développer une application web avec symfony (en php) et postgresql.
le postgres utilise une 60aine de table et pas mal de trigger et de fonction stockée afin de protégé l'intégrité des données.

Nous souhaitons offrir plusieurs type d'authentifications à nos utilisateurs comme un simple login/passwd ou openid ou autre.

Mais nous souhaitons également faire un tracking de l'historique des modifications dans pratiquement chaque table (disons 90% des 60 tables).

Pour celà, nous étions parti sur des triggers qui, à chaque modifications insérerait une ou plusieurs lignes dans une table des modifs.

Mais nous nous trouvons face à un problème: comment savoir qui est l'utilisateur qui à fait la modif ?

Nous nous connections évidement à chaque fois avec le même utilisateur postgresql pour tous les utilisateurs de notre application.

Je viens vers vous savoir si personne avait une piste, une idée, une solution....

Les possible pistes que je vois sont :
- Utiliser un identifiant pg par utilisateur de l'appli. Mais comment géré les différentes authentifications? comment faire pour faire le login ( déco puis reco?) et niveau lourdeurs d'admin c'est pas top  si?
- faire un "set" d'une variable au login et/ou à chaque chargement de page pour déterminer l'id de l'utilisateur.  mais comment être sur qu'il n'y à pas de collisions, es-ce propre, ...


Merci beaucoup pour votre aide et vos avis..

Hors ligne

#2 16/02/2010 21:51:32

gleu
Administrateur

Re : Authentification web et tracking...

Vous pouvez utiliser un paramètre personnalisé, que votre outil configurera à chaque connexion en utilisant comme valeur le nom de l'utilisateur connecté. Ce n'est pas très compliqué, et il faut bien penser à définir cette nouvelle variable dans le fichier postgresql.conf.


Guillaume.

Hors ligne

Pied de page des forums