Como criar um "Adicionar mais logins" semelhante ao Stackoverflow?


15

Estou usando o módulo OpenID Selector para integrar logins do OpenID ao meu site; o mesmo serviço usado pelo Stackoverflow para login / registro. No entanto, como posso adicionar uma opção para "Adicionar mais logins" como o Stackoverflow? Estou aberto a sugestões também.

A idéia é impedir usuários duplicados. Estou usando o D7.

Veja a imagem em anexo.

Também tipos de ajustes são bem-vindos. insira a descrição da imagem aqui


2
Se não houver módulos em funcionamento, estou aberto a sugestões e se obtiver uma lógica perfeita; Eu prometo que você receberá um módulo D7 hospedado em drupal.org, com certeza.
Niksmac

Complete um dia de inatividade, estou decepcionado. É uma coisa rara no Stackoverflow. !!
Niksmac

Eu sei que existe o módulo Janrain que integra vários logins, mas não tenho idéia de como ou mesmo se eles lidam com duplicatas.
31512 stefgosselin

@NikhilM você está colocando um projeto sandbox para isso ou para quê?
Ficarei

@indrock, infelizmente meu cliente abandonou o conceito. Estou planejando fazer algo semelhante, mas não recentemente. Eu estou bem ocupado.
Niksmac 22/11/2012

Respostas:


9

Portanto, a suposição padrão que a maioria dos módulos Drupal faz com autenticação é que eles substituirão a configuração de login atual pela sua.

Essa abordagem está bem descrita em http://drupal.org/node/114774#dist-auth e pode ser vista em como funciona o atual módulo openid fornecido no núcleo do Drupal.

Se entendi sua pergunta corretamente, você deseja fornecer uma maneira de as pessoas se autenticarem de várias fontes diferentes e fazer com que essas fontes ativadas sejam exibidas no perfil de usuário. Eu não acho que exista um módulo que faça isso ainda, pois a maioria dos módulos de autenticação opera em sua própria pequena bolha, conforme descrito acima.

Depois de uma rápida olhada no OpenID Selector, você não terá muita quilometragem a partir daí, principalmente implementando e configurando a biblioteca jquery. Você precisará escrever isso do zero.

As partes principais do seu módulo serão:

  1. Uma tabela de banco de dados que mantém os logins associados a um determinado usuário.
  2. Algum tipo de esquema form_alter da página de login para mostrar todas as opções de login disponíveis especificadas pelo proprietário do site (isso substituirá o que os módulos individuais fazem atualmente)
  3. Uma página de administrador para o proprietário do site selecionar entre as opções disponíveis.

Cada uma dessas opções de logon provavelmente será fornecida por um módulo de contribuição separado, portanto, talvez você precise alterar sua lógica para as especificidades encontradas na implementação desses módulos.

Para mim, é uma tarefa ambiciosa para um módulo configurável que você planeja lançar, mas se você seguir a rota rápida e suja, altamente personalizada / codificada por código, para um único site, não deve demorar muito.

Outros lugares para procurar inspiração sobre como os módulos de autenticação operam no Drupal e as possíveis fontes que você pode querer incluir são o FBOauth e o Twitter .


Obrigado por uma resposta tão detalhada. Eu preciso disso de qualquer maneira. Então vamos fazer eu mesmo, pelo menos, isso vai me ajudar.
Niksmac

8

O HybridAuth Social Sign-on não atende aos seus requisitos?

Este módulo integra a biblioteca HybridAuth ao Drupal e permite que seus usuários façam login e registrem-se usando Google, Facebook, Twitter, Yahoo, MySpace, Windows Live, LinkedIn, Foursquare, AOL, OpenID e muito mais. Os provedores adicionais incluem: Github, Gowalla, LastFM, Vimeo, Disqus, Instagram, Viadeo, Identica, Tumblr, Goodreads, QQ, Sina, Murmur, Pixnet, Plurk, Skyrock, 500px, Vkontakte, Mail.ru, Yandex, Odnoklassniki.

Eu não o usei, mas ler a descrição e as capturas de tela parece sugerir que ele faz o que você precisa.

Atualização: Observando as estatísticas de uso , parece que o módulo foi capturado apenas recentemente e pode não ter sido útil quando você postou esta pergunta.


Se este módulo funcionar bem ... o que parece ser o caso ... você me poupa cerca de 20 ou 40 horas de trabalho jaja obrigado!
Beto Aveiga 4/15
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.