[spip-dev] Methode d'authentification personnalisee

Bonjour à tous,

Je regarde actuellement s'il est possible avec le SPIP actuel (CVS)
d'ajouter facilement une méthode d'authentification perso.

Apparement le code a été un peu "générisé" lors de l'ajout de la
possibilité LDAP, mais j'ai l'impression que si je veux ajouter une
methode personnelle (du genre "ecrire/inc_auth_mamethodeamoi.php3" qui
interroge un truc en SOAP qui tue) je dois modifier deux ou trois choses
dans spip_cookie.php3. D'où problème lors de l'upgrade de SPIP.

Me trompe-je ?

Selon vous, comment pourrait-on joliment génériser le code afin de
permettre par exemple la technique suivante :
  - je développe mon "inc_auth_xxxx.php3" avec une classe
    Auth_xxxx qui a les bonnes méthodes, sur le modèle de
    inc_auth_ldap.php3
  - je le déclare un truc genre $methode_auth='xxxx' dans
    mes_options.php3
  - et c'est tout : en cas d'update de SPIP ça continue à
    fonctionner sans problème...

Merci de vos idées.

a+

Thomas NOEL wrote:

Bonjour à tous,

Je regarde actuellement s'il est possible avec le SPIP actuel (CVS)
d'ajouter facilement une méthode d'authentification perso.

Apparement le code a été un peu "générisé" lors de l'ajout de la
possibilité LDAP, mais j'ai l'impression que si je veux ajouter une
methode personnelle (du genre "ecrire/inc_auth_mamethodeamoi.php3" qui
interroge un truc en SOAP qui tue) je dois modifier deux ou trois choses
dans spip_cookie.php3. D'où problème lors de l'upgrade de SPIP.

Me trompe-je ?

Selon vous, comment pourrait-on joliment génériser le code afin de
permettre par exemple la technique suivante :
- je développe mon "inc_auth_xxxx.php3" avec une classe
  Auth_xxxx qui a les bonnes méthodes, sur le modèle de
  inc_auth_ldap.php3
- je le déclare un truc genre $methode_auth='xxxx' dans
  mes_options.php3 - et c'est tout : en cas d'update de SPIP ça continue à
  fonctionner sans problème...

Merci de vos idées.

a+

on retombe sur la classique problematique des modules/plugins/legos qui revient souvent dans la liste.
La gestion des événements est une première approche, il faudrait generaliser.

M.

Selon Mathieu Lecarme (mardi 09 novembre 2004, 15h45 (+0100)) :

Thomas NOEL wrote:
>Je regarde actuellement s'il est possible avec le SPIP actuel (CVS)
>d'ajouter facilement une méthode d'authentification perso.
on retombe sur la classique problematique des modules/plugins/legos
qui revient souvent dans la liste.

Moi je pensais plus à quelque chose comme la technique des "inc-url".
Simple, pratique, efficace... Pour l'authentification on n'a pas besoin
de 12 méthodes possibles, il faut juste en définir une, une fois pour
toute lors de l'installation de SPIP. Comme pour inc-url.

a+

Moi je pensais plus à quelque chose comme la technique des "inc-url".
Simple, pratique, efficace... Pour l'authentification on n'a pas besoin
de 12 méthodes possibles, il faut juste en définir une, une fois pour
toute lors de l'installation de SPIP. Comme pour inc-url.

A mon petit niveau d'information, l'authentification LDAP utilise le champs
source dans la table auteur.
Je pense qu'il y a moyen d'inserer assez facilement d'autres types
d'authentification (utilisant des inc_auth_xxx.php3) de la meme facon.
Aujourd'hui, spip peut utiliser pour un meme site à la fois de
l'authentification ldap et de l'authentification spip, ca serait dommage de
perdre ca.
Il ne manque, à premiere vue, "que" le remplissage du tableau $auths
(spip_cookies ligne 98) qui aujourd'hui met en dur "ldap".
Il faudrait rendre ca plus generique (que le "flag" devienne une valeur par
exemple ou mieux encore, que le tableau auths soit directement rempli dans
inc_connect).
Après, c'est plutot l'installeur qu'il faut modifier pour permettre d'autres
types d'authentification.

j'ai bon ?