Méthode d'authentification/identification
Auteur Sujet

Post 
Bonjour,

Je suis à la recherche d'un portail PHP de "publication" pour une association. Postnuke me semble être une des solutions qui correspond à mon besoin par ses caractéristiques et l'activité de sa communauté mais je dois répondre au point suivant.

L'association dispose déjà d'un mécanisme d'authentification (page de login qui s'appui sur une base d'utilisateurs). Je n'ai pas accès directement à la base des utilisateurs mais la page de login existante (qui intéragit avec la base) peut me renvoyer les informations comme quoi le login de l'utilisateur est valide (ainsi que les informations relative à l'identité de l'utilisateur).

Compte tenu de ce point , je suis à la recherche d'information sur la façon dont est réalisé le login et le maintien de session sous postnuke.
Est-il possible à votre connaissance d'utiliser une système d'authentification autre que celui intégré? Avez-vous des exemples de mise en oeuvre ou des pistes?

Je suis preneur de toute idée à ce sujet comme vous vous en doûtez déjà :)

Merci
Julien
Données personnelles

Post 
hello !
le mieu serait si c'est possible d'inclure la liste des utilisateurs et leurs mot de passe dans la base de donnée postnuke. Mais si vraiment tu ne peux pas y avoir accès, ca sera plus compliqué car il faudra modifier le code pour l'authentification... et comme à chaque personne peux être associé des droits, ... la tâche me semble relativement complexe.

A toi de voir selon tes capacités !

a bientôt !


Gilles  ><>°
Données personnelles Accueil

Post 
Un module sert à ce genre de chose (identification externe) mais jamais utilisé...

AuthLDAP (Par exemple pour des intégrations au niveau Intranet avec les profils utilisateurs du réseau, un truc du genre).

A étudier !




Chestnut !
Administrateur
Aucun Support par message privé...
Même en cas de pensée suicidaire !
Règles à suivre
Données personnelles Accueil

Post 
Merci!

>Gilles
Le plus simple serait effectivement de recopier les données d'une base vers l'autre.Je vais me renseigner pour savoir s'il est envisageable d'intégrer les données de la base existante vers une base postnuke.
Mais je crains que se soit difficile. La base "mère" est partagée avec d'autres applications et je pense que l'on va me dire que cette solution présente des risques pour l'intégrité des données (connecteur entre les 2 bases?) et pour la sécurité des données (fiabilité de postnuke?).

S'il y a une solution, il faudra sans doûte que je l'envisage en adaptant le code d'authentification.
Dans cette optique, sais tu s'il existe une documentation sur ces mécanisemes?

>Chestnut
Toujours dans cette optique, je pense que le module LDAP peut être un exemple intéressant. Dans mon cas, le mécanisme d'identification n'est pas basé sur LDAP pour la récupération des données mais il doit certainement y avoir des similitudes au niveau de la transmission des infos. Je vais creuser ce point là.
Merci
Données personnelles

Post 
Bonjour,

Après vérification, pas d'authentification LDAP ni de puplication possible de la base des utilisateurs.

Par contre, le site qui réalise l'authentification renvoit 3 informations: un login ($login), un email et authentification=ok (pour schématiser).

Du coup, je pensais utiliser ces données pour:
  • 1: créer un table SQL "init_user" qui stocke le login renvoyé $login et un mot de passe génèré automatiquement lors de la 1ère connexion (en clair),
  • 2: remplir la base d'utilisateur du portail "pn_user" avec le même login et un hâché du mot de passe,
  • 3: à chaque connexion, une session php est crée et récupère les variables login et mot de passe dans la base init_user. L'idée est ensuite de permettre à Postnuke d'utiliser ces variables pour identifier les utilisateurs via son propre mécanisme/annuaire en comparant avec les données de la base pn_user.

Que pensez vous de cette idée, est-ce réalisable?

Compte tenu des infos renvoyées par le site d'autehntification, il y a peut être un moyen plus simple d'effectuer l'identification sur Postnuke, mais je ne vois pas...Si quelqu'un à une autre idée, il est le bienvenu ;)

Merci,
Julien
Données personnelles

Post 
suivant le nombre de membres ajoutés chaque jour/ chaque mois, tu peux faire un script prenant les membres dans la bd1 et les copiant dans la bd2. En disant que, par exemple, tu effectues maj chaque semaine, par exemple...


Gilles  ><>°
Données personnelles Accueil
Post 
En fait, je pensais faire un script PHP qui s'exécute à chaque fois qu'une personne s'authentifie pour remplir la bd1 (init_user) et la bd2 (pn_user).
De cette façon, lorsque l'utilisateur valide son identité sur le site d'authentification il est immédiatement loggé sur le portail Postnuke de manière transparente pour lui (via des vartiables de session côté serveur). Si je fais une synchro hebdomadaire, l'utilisateur ne pourra pas accéder directement au site (si j'ai bien compris ton message).
Les étapes de création du compte et de login dans postnuke sont cachées à l'utilisateur.

L'utilisateur ne doit pas avoir la possibilité de se logguer lui même sur le portail Postnuke (il ne doit pas connaître son mot de passe) mais toujours via l'authentification centralisée.

Il me manque (au moins) deux choses pour l'instant:
  • Une fois que j'ai stocké mes variables de session login et mot de passe en clair, comment est-ce que je peux les transmettre au mécanisme de login de Postnuke,
  • il faut pouvoir interdire à l'utilisateur la modification de son mot de passe ou de le récupérer (lost password).


Pour le premier point, je n'ai pas encore trop d'idées, pour le second, je pense que cela peut se faire en paramétrant les block.

Julien
Données personnelles