Single Sign On (SSO) : Principes d'intérgation

Eléphanteau du PHP | 12 Messages

05 mai 2008, 12:28

Bonjour à toutes et à tous,

Je voulais savoir si beaucoup de personnes ici ont déjà essayé de mettre en place le SSO sur leurs sites web.
Le principe étant une autentification unique pour plusieurs sites web. J'ai essayé de glaner des informations sur LightBulb et sur OpenSSO mais cela reste encore très flou pour moi.
Y a t il un applicatif sur le serveur apache a installer?
Comment plugger le SSO dans le php pour que l'authentification soit faite sur plusieurs domaines?

Si des personnes ont déjà expérimentés le SSO, peut-être pourrez-vous m'éclaisir.

Cordialement,

ViPHP
ViPHP | 4674 Messages

05 mai 2008, 13:20

Hey :),

Cela ne ressemblerait-il pas à OpenID par hasard ?
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).

Eléphanteau du PHP | 12 Messages

05 mai 2008, 14:26

Effectivement d'après la définition Wiki de OpenID cela correspondrait.

Pour rendre un site compatible avec OpenID ça a l'air simple. Cependant avec OpenID, j'ai l'impression que l'utilisateur doit s'inscrire sur OpenID avant de se logger sur les différents sites.

Ce que j'aimerais c'est que ça soit totalement transparent pour l'utilisateur: Il s'inscrit sur l'un des sites, il surf, il change de domaine tout en gardant son état de connexion et ses fonctionnalités liées au profil. Si tous les utilisateurs doivent passer par http://www.openidfrance.fr/home-2/Creez ... penID.html, je ne pense pas que ca soit très ergonomique.

ViPHP
ViPHP | 4674 Messages

09 mai 2008, 15:25

Hmm après un peu de réflexion, voici ce que je propose.
Il faut avoir une trace de la connexion, émuler une persistance. On ne peut pas partager des cookies sur plusieurs sites (et heureusement). Donc ?
Une base de données commune à tous les domaines. L'utilisateur s'enregistre, une session démarre, un nouvel enregistrement dans la base de données. Si l'utilisateur se déconnecte, on supprime la session et la ligne dans la base de données. On vérifie régulièrement la base de données pour supprimer les enregistrements trop vieux (vaut la date d'expiration de la session en gros).
Si le type change de site mais qu'il est présent dans la base de données (commune, élément principal du raisonnement), on ré-ouvre une session, et on écrase l'enregistrement (équivaut à une mise à jour).

Qu'en penses-tu ?
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).