OpenID é uma tecnologia que permite usar um único login para sites de diferentes empresas, gerenciando quais têm acesso a quais informações suas.
O maior diferencial é que, ao invés de confiar sua identidade a uma única entidade/empresa (como faz o semi-finado Passport), você escolhe um provedor de identidade para esta tarefa.
Você também pode ser seu próprio provedor de identidade: basta ter um endereço próprio na web. Vendo que os sites que suportam OpenID são cada dia mais numerosos, resolvi experimentar o phpmyopenid – que transforma qualquer site que rode PHP em um provedor.
Na teoria você baixa, descompacta, joga a pasta no servidor, chama a página de configuração e em cinco minutinhos está tudo configurado. Na prática eu apanhei em alguns pontos, que vale a pena publicar:
- Um bom começo é seguir instruções do Carsten Pötter, mas não saia mudando as permissões como ele diz – no meu servidor o PHP nem roda se você fizer desse jeito.
- Tive o problema com a mensagem “Missing expected authorization header”, do qual que ele fala na seção “troubleshooting” destas instruções. A solução apontada acesso ssh ao servidor e boa-vontade com a linha de comando. Meros mortais: baixem este arquivo, renomeiem para “.htaccess” (sem as aspas e sem o .txt no final) e subam para a pasta phpmyopenid no servidor.
- Registrei a identidade chester.me, mas os links no final (que devem ser inseridos na página-índice do site) apontavam para www.chester.me. Fui tentar mexer e nada mais funcionava. Resumo: aceite os links do jeito que ele te passa, mesmo que a identidade desejada seja sem www e os links tenham www.
- O mais importante: na hora de testar, todo mundo recomenda o teste do site OpenID Enabled. O problema é que a bateria de testes do primeiro link tem toda uma ordem e procedimento para ser executada – senão você pode achar que o seu provider pessoal não está funcionando, quando na verdade ele está. Siga essa receita de bolo que os testes irão dar certo.
UPDATE: A experiência é divertida, mas não permite gerenciar muito como as informações serão usadas por cada profile. Uma alternativa melhor (e que só evidencia a simplicidade do OpenID) é se cadastrar num provedor de autenticação como o MyOpenID e delegar a autenticação a partir do seu site/blog. Com isso você junta o benefício de ser identificado por sua URL com as vantagens que um site mais completo pode oferecer.