jun
26
2012
0

OpenID Authentication

OpenID Diagram

The OpenID authentication process

Quem nunca viu nos sites aquele botãozinho “Sign in with google” ou “Login with facebook”?

OpenID é uma forma de centralização das suas informações um único perfil que permite você nao precise ficar lembrando de vários usernames e senhas diferentes para cada site e sem precisar cadastrar várias vezes.

Existem vários provederes de OpenID como Google, Yahoo, Facebook, WordPress, Gravatar, entre outros.

Pra quem programa em PHP preparei um exemplo de login simples com o perfil do Google aqui usando a biblioteca LightOpenID

Com o google é possível obter os dados o primeiro e último nome do usuário, seu email e idioma padrão, bem como seu OpenID, que é necessário para as próximas requisições.

Ex: Seu usuário escolhe logar com o perfil do google, então você requisita ao google e ele lhe devolve as informações do usuário logado, se ele não estiver logado deverá fazer o login no próprio google e então autorizar que seu site obtenha os dados somente para leitura.

Feito o login com sucesso no google e o usuário autorizando que você leia seus dados é importante que você salve seu OpenID para os próximos logins pois este é o único dado que não muda, o nome por exemplo o usuário pode mudar a qualquer momento.

Nos próximos logins você consulta em sua base de dados pelo OpenID retornado pelo google e então terá seu usuário logado através do google.

Abaixo alguns links úteis.

Design: TheBuckmaker.com Web Templates