¿Cuál es la mejor solución para OpenID con Django? [cerrado]

256

Tenga en cuenta : esta es una pregunta antigua con respuestas antiguas. La mayoría de las aplicaciones vinculadas ahora están sin mantenimiento. En estos días, la mayoría de las personas parecen usar django-allauth o python-social-auth . Dejaré la pregunta original intacta a continuación por el bien de la posteridad.


Hay al menos media docena de aplicaciones de Django que proporcionan autenticación OpenID para Django:

Jugué con un par de ellos. El django-openid de Simon Willison causó una buena impresión, pero como está a la vanguardia de la creación de tendencias en Djangoland, a veces tengo dificultades para comprender sus tendencias (por ejemplo, todo el sistema dinámico de urlpatterns en django-openid). Además, no pude iniciar sesión para trabajar con Google.

django-authopenid causó una buena impresión, y parece tener una buena integración con el registro de django . django-socialauth y django-socialregistration tienen soporte para Twitter y Facebook, lo que definitivamente es una ventaja. ¿Quién sabe si Facebook comenzará a ser un proveedor de OpenID y cuándo lo hará? Sin embargo, la sociedad parece tener su cuota de problemas .

Entonces, ¿cuál es la mejor aplicación OpenID que existe? Por favor comparta cualquier experiencia positiva (y negativa). ¡Gracias!

Benjamin Wohlwend
fuente
8
django-social-auth de Matías Aguirre es otro, y parece un proyecto bastante activo a partir de hoy. Además de OpenId, es compatible con todos los principales proveedores (FB, Twitter, LinkedIn, etc.), es compatible con la población de datos de usuarios y la asociación de múltiples cuentas sociales a usuarios individuales.
Peterino
1
Nota: django-social-auth ha cambiado su nombre a python-social-auth .
Nathan Osman

Respuestas:

86

El que ha demostrado funcionar mejor para mí, y que parece más actualizado es el que se encuentra en el launchpad.

Se integró perfectamente con mi aplicación que ya utiliza el módulo django.auth.

https://launchpad.net/django-openid-auth

Para obtener una copia, ejecute:

bzr branch lp:django-openid-auth

O instalarlo a través de PyPI

pip install django-openid-auth
Daniel
fuente
1
¡gracias! ¿Hay algún manual de cómo usarlo? No lo encontré en la plataforma de lanzamiento.
Silver Light
2
Hay algunos ejemplos en el repositorio de códigos bazaar.launchpad.net/~django-openid-auth/django-openid-auth/… junto con una guía de instalación en Readme.txt
Daniel
2
está en pypi -> pip install django-openid-auth
kioopi
donde puedo encontrar documentación
Surya
2
Desafortunadamente no es compatible con django 1.5 - obtendrá errores al renderizar las plantillas
Elliott
32

La última publicación de este hilo es en febrero. Han pasado casi 8 meses y estoy bastante seguro de que muchas cosas han cambiado.

Estoy muy interesado en Django-Socialauth, ya que es compatible con Gmail, Yahoo, Facebook, Twitter y OpenID.

Encontré dos tenedores que parecen estar actualizados:

https://github.com/uswaretech/Django-Socialauth

https://github.com/agiliq/Django-Socialauth

La segunda bifurcación se ha actualizado recientemente en este momento.

Me preguntaba si alguien ha utilizado recientemente alguno de estos tenedores. Estoy buscando el más confiable para mi sitio web.

Gracias

Actualización: la bifurcación más actualizada parece ser omab / django-social-auth , que también es lo que señala el paquete pypi .

mohi666
fuente
2
Lo tengo funcionando usando pip install django-social-auth, que parece alinearse bien con este tenedor: github.com/omab/django-social-auth . Como novato, lo más confuso fue comprender cómo alinear mis plantillas de inicio de sesión / error con las URL y vistas sociales. El sitio de ejemplo en la bifurcación que mencioné ayudó mucho.
Aidan Ryan
1
django-social-auth! = Django-Socialauth, de hecho, el primero fue creado después de horas de frustración con Django-Socialauth.
omab
1
Hay un tenedor más nuevo en github.com/omab/django-social-auth
Wernight
2
django-social-auth ahora está en desuso a favor de omab / python-social-auth
mgalgs
12

Prefiero django-authopenid, pero creo que la mayoría de las soluciones maduras son bastante iguales en este punto. Aún así, es lo que veo más usado. He hecho un puñado de personalizaciones sobre cómo lo usamos sin tener que bifurcarlo, y eso es una gran ventaja en mi libro. En otras palabras, es bastante enganchable.

ironfroggy
fuente
8

No olvides la bifurcación de django-socialauth de Elf Sternberg : está trabajando para limpiar lo que ve como muchas malas decisiones de implementación en la aplicación socialauth original. Parece limpio hasta ahora, pero no está claro si su proyecto tendrá impulso.

shacker
fuente
5

django-socialauth es bueno para mí

Alex Zharnasek
fuente
1

Podrías probar pinax

Kristian Damian
fuente
44
¿No es eso demasiado? Aunque si solo necesita openid, puede ver cuál eligió Pinax.
Agos