¿Cómo hacer un "Agregar más inicios de sesión" similar a Stackoverflow?


15

Estoy usando el módulo Selector de OpenID para integrar los inicios de sesión de OpenID en mi sitio web; el mismo servicio utilizado por Stackoverflow para iniciar sesión / registrarse. Sin embargo, ¿cómo puedo agregar una opción para "Agregar más inicios de sesión" como Stackoverflow? Estoy abierto a sugerencias también.

La idea es evitar usuarios duplicados. Estoy usando D7.

Ver imagen adjunta.

También tipo de ajustes son bienvenidos. ingrese la descripción de la imagen aquí


2
Si no hay módulos de trabajo, estoy abierto a sugerencias, y si obtengo una lógica perfecta; Prometo que obtendrá un módulo D7 alojado en drupal.org con seguridad.
niksmac

Completo un día de inactividad, estoy decepcionado. Es una cosa rara en Stackoverflow. !!
niksmac

Sé que hay un módulo Janrain que integra el inicio de sesión múltiple, pero no tengo idea de cómo, ni siquiera si tratan con duplicados.
stefgosselin

@NikhilM, ¿estás poniendo un proyecto de sandbox para esto o qué? Estaré encantado de revisarlo :-)
AjitS

@indrock, desafortunadamente mi cliente abandonó el concepto. Estoy planeando hacer algo similar pero no recientemente. Estoy muy ocupado.
niksmac

Respuestas:


9

Por lo tanto, la suposición predeterminada que la mayoría de los módulos de Drupal hacen con autenticación es que reemplazarán la configuración de inicio de sesión actual por la suya.

Este enfoque se describe bien en http://drupal.org/node/114774#dist-auth y se puede ver en cómo funciona el módulo openid actual proporcionado en Drupal core.

Si entiendo su pregunta correctamente, desea proporcionar una forma para que las personas se autentiquen de múltiples fuentes diferentes y que esas fuentes habilitadas se muestren bajo su perfil de usuario. No creo que haya un módulo que haga esto todavía, ya que la mayoría de los módulos de autenticación funcionan en su propia pequeña burbuja como se describió anteriormente.

Después de un rápido vistazo a OpenID Selector, no obtendrá mucho kilometraje desde allí, principalmente implementa y configura la biblioteca jquery. Tendrás que escribir esto desde cero.

Las piezas principales de su módulo serán:

  1. Una tabla de base de datos que mantiene los inicios de sesión asociados a un usuario determinado.
  2. Algún tipo de esquema form_alter para que la página de inicio de sesión muestre todas las opciones de inicio de sesión disponibles que el propietario del sitio ha especificado (esto reemplazará lo que los módulos individuales hacen actualmente)
  3. Una página de administración para que el propietario del sitio seleccione entre las opciones disponibles.

Probablemente, cada una de esas opciones de inicio de sesión será proporcionada por un módulo contrib separado, por lo que es posible que deba modificar su lógica para los detalles que encuentre en la implementación de esos módulos.

Para mí es una empresa ambiciosa para un módulo configurable que planea lanzar, pero si sigue la ruta rápida y sucia altamente personalizada / codificada para un solo sitio, no debería tomarle demasiado tiempo.

Otros lugares para buscar inspiración sobre cómo funcionan los módulos de autenticación en Drupal y las posibles fuentes que puede incluir son FBOauth y Twitter .


Gracias por una respuesta tan detallada. Lo necesito de todos modos. Así que hagámoslo yo mismo, al menos me ayudará
niksmac

8

¿El inicio de sesión social de HybridAuth no cumple con sus requisitos?

Este módulo integra la biblioteca HybridAuth en Drupal y permite a sus usuarios iniciar sesión y registrarse utilizando Google, Facebook, Twitter, Yahoo, MySpace, Windows Live, LinkedIn, Foursquare, AOL, OpenID y más. Los proveedores adicionales incluyen: Github, Gowalla, LastFM, Vimeo, Disqus, Instagram, Viadeo, Identica, Tumblr, Goodreads, QQ, Sina, Murmur, Pixnet, Plurk, Skyrock, 500px, Vkontakte, Mail.ru, Yandex, Odnoklassniki.

No lo he usado yo mismo, pero leer la descripción y las capturas de pantalla parece sugerir que hace lo que necesita.

Actualización: Al mirar las estadísticas de uso , parece que el módulo se retiró recientemente y es posible que no se haya podido utilizar cuando publicó esta pregunta.


Si este módulo funciona bien ... que parece ser el caso ... me ahorras unas 20 o 40 horas de trabajo jaja gracias!
Beto Aveiga
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.