Comment fonctionne l'authentification OpenID?

99

Je suis un peu curieux de savoir comment fonctionne l'authentification OpenID.

Y a-t-il une différence entre l'authentification OpenID et l'authentification que les sites utilisent exclusivement pour eux-mêmes?

Biswanath
la source
Pas un dup, mais celui-ci est très utile stackoverflow.com/questions/318677/…
Paul Tomblin
Je pense que c'est une dupe: stackoverflow.com/questions/123671/how-is-openid-implemented Si personne n'est en désaccord, je le fermerai dans quelques-uns.
EBGreen
1
Le lien est plus comment implémenter un identifiant ouvert. Voici comment cela fonctionne (comment l'open id fonctionne avec l'authentification et non comment cela fonctionne si quelqu'un souhaite l'ajouter à son site Web). Je pense?
Patrick Desjardins
Ehh ... c'est bien. J'étais à la limite de toute façon. J'ai le sentiment que beaucoup de réponses couvriront les mêmes informations.
EBGreen
Je pense que c'est un doublon de celui-ci: stackoverflow.com/questions/69076/openid-login-workflow
Patrick Desjardins

Réponses:

98

Qu'est-ce que OpenID?

OpenID est un cadre ouvert, décentralisé et gratuit pour l'identité numérique centrée sur l'utilisateur. OpenID tire parti de la technologie Internet déjà existante (URI, HTTP, SSL, Diffie-Hellman) et se rend compte que les gens se créent déjà des identités pour eux-mêmes que ce soit sur leur blog, leur flux de photos, leur page de profil, etc. Avec OpenID, vous pouvez facilement en transformer une de ces URI existants dans un compte qui peut être utilisé sur des sites prenant en charge les connexions OpenID.

OpenID

Différence entre OpenID et le formulaire d'authentification conventionnel?

La différence est que l'identification sera décentralisée vers un site externe (par exemple Wordpress, Yahoo, ...). Le site Web saura si l'identification est OK et vous permettra de vous connecter. L'authentification conventionnelle du site Web effectue une comparaison avec les données conservées dans une base de données privée, de sorte que votre nom d'utilisateur et votre mot de passe ne peuvent être utilisés que pour vous connecter à ce site Web. Avec OpenID, vous pouvez utiliser les mêmes informations d'identification sur plusieurs sites Web.

Comment ça fonctionne?

Pas

  1. L'utilisateur se connecte au site Web compatible OpenID.
  2. L'utilisateur entre les informations d'identification.
  3. Un POST est fait avec un BASE64 (site Web vers fournisseur)
  4. Une réponse est construite (qui contient l'expiration)
  5. Le site Web redirige l'utilisateur vers le fournisseur pour se connecter.
  6. L'utilisateur entre le mot de passe et soumet.
  7. La vérification est terminée.
  8. S'identifier!
Patrick Desjardins
la source
1

Voici une excellente explication du concept OpenID. Il a expliqué toutes les étapes pour implémenter OpenID.

Un autre appelé [Jan Rain] ( http://janrain.com/openid-enabled/ )

Un autre excellent tutoriel étape par étape de Remy Sharp pour OpenID

Pointeur nul
la source