Bonjour.

J'ai vu à maintes reprises un système suivant :

  1. L'utilisateur visite un site web A. qui propose un certain service.
  2. Le site A. nécessite l'authentification.
  3. L'utilisateur est redirigé vers un site B. où se situe le formulaire d'authentification.
  4. Une fois le nom d'utilisateur et le mot de passe entrés, l'utilisateur est redirigé à nouveau vers le site A. qui prend en compte le succès du login pour considérer cet utilisateur comme authentifié.

J'ai dans la tête deux exemples : l'un est celui de DreamSpark de Microsoft, qui vérifie si on est bien inscrit dans une université pour proposer les téléchargements aux étudiants ; désormais, on est redirigé vers le formulaire de login de notre faculté, puis redirigé à nouveau vers le site DreamSpark.
L'autre exemple est celui, il me semble, de Yahoo et sites associés (DailyMotion ?...) qui permettent de se connecter via le compte Yahoo (je peux me tromper sur cet exemple).

Alors question : comment ça marche, ça ?

Car je vois deux solutions, une à deux balles, l'autre trop tordue : la première, c'est de faire la deuxième redirection sur un URL comportant le résultat du login (du type ...url.ici?callback=1&login=success). Bon, niveau protection, on peut faire mieux (ou plutôt on peut difficilement faire pire ). Pareil pour faire passer le truc via cookies ou POST. La deuxième solution, c'est de passer une variable chiffrée lors de la première redirection, et une autre variable chiffrée lors de la deuxième redirection. Cela me semble toutefois un peu tordu comme solution.
Alors, comment faire, vu que les serveurs/sites étant totalement différents dans deux domaines différents, on ne peut utiliser de variables sessions ?