请注意:这是一个有着古老答案的古老问题。大多数链接的应用程序现在都没有维护。如今,大多数人似乎都在使用django-allauth或python-social-auth。为了子孙后代,我将在下面保留最初的问题。


至少有6个Django应用程序为Django提供OpenID认证:

django-openid django-openid-auth 另一个django-openid-auth,它似乎已经死了 django-authopenid django-socialauth(也提供Twitter和Facebook账户的身份验证) django-socialregistration(也有Facebook和Twitter认证) django-openid-consumer, Simon Willison最初的django-openid的一个分支。似乎更适合简单的博客评论,而不是一个完整的注册工作流 django-social-auth

我和其中一些人玩过。Simon Willison的django-openid给我留下了很好的印象,但由于他走在django流行趋势的前沿,我有时很难理解他的趋势(例如django-openid中的整个动态urlpatterns系统)。更重要的是,我无法登录到谷歌工作。

Django-authopenid给人留下了很好的印象,它似乎与django-registration有很好的集成。django-socialauth和django-socialregistration支持Twitter和Facebook,这绝对是一个加分项。谁知道Facebook何时会成为OpenID提供商呢?不过,社交身份似乎也有自己的问题。

那么,最好的OpenID应用是什么呢?请分享任何积极的(和消极的)经历。谢谢!


当前回答

对我来说效果最好的一个,似乎也是最新的一个,就是发射台的那个。

它与我已经使用django的应用程序无缝集成。身份验证模块。

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

要运行副本:

bzr branch lp:django-openid-auth

或者通过PyPI安装

pip install django-openid-auth

其他回答

我更喜欢django-authopenid,但我认为大多数成熟的解决方案在这一点上是相当平等的。尽管如此,我还是看到人们使用得最多。我已经对如何使用它进行了一些定制,而不必真正地进行分叉,这在我的书中是一个巨大的优势。换句话说,它相当吸引人。

你可以试试pinax

这个话题的最后一篇文章是在二月。8个月过去了,我很确定很多事情已经改变了。

我对Django-Socialauth非常感兴趣,因为它支持gmail, yahoo, facebook, twitter和OpenID。

我发现了两款最新的叉子:

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

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

目前,第二个fork刚刚更新过。

我想知道最近有没有人用过这些叉子?我正在为我的网站寻找最可靠的一个。

谢谢

更新:最新的分支似乎是omab/django-social-auth,这也是pypi包所指向的。

Django-socialauth对我有好处

别忘了Elf Sternberg的django-socialauth分支——他正在努力清理他认为原始socialauth应用程序中很多糟糕的执行决策。到目前为止看起来很干净,但不清楚他的项目是否会有动力。