我正在为使用Google Apps登录的公司开发Intranet django项目(不使用GAE)。所以我希望我的用户能够使用他们的谷歌帐户登录登录我的django项目。 OpenID看起来很合适,虽然Oauth也可能有用吗?
我看到很多类似命名的库将django的auth系统连接到外部登录系统:
以下是我要对集成做的事情:让用户使用他们的Google帐户登录,而不是使用原生django系统。保留django的管理系统之类的权限模型。所以我认为这意味着在我们登录之前没有看到的新帐户第一次在django中自动创建新的用户记录。
任何有使用这些项目经验的人都可以告诉我哪种项目效果最好?或者只是在您尝试过时最有效/最有效的建议?谢谢!
答案 0 :(得分:17)
答案 1 :(得分:3)
我使用过django-openid-auth。工作正常,可以在第一次签名时创建用户帐户。您还可以在django管理面板中将openid登录与用户帐户相关联。
答案 2 :(得分:1)
我知道这是一个迟到的答案,但我正在做类似的事情,我刚刚发现django-socialregistration。它基本上是OAuth,OpenID,Facebook Connect等。与其他一些选项不同,它似乎被很多项目积极开发和使用。
答案 3 :(得分:0)
我喜欢Django socialregistration允许我很容易地插入Google帐户,Facebook,Yahoo和任何其他OpenID网站。您只需要将提供者作为链接提供:
<a href="/socialregistration/openid/redirect/?openid_provider={{ 'http://yahoo.com'|urlencode }}"><img src="{{MEDIA_URL}}/images/yahoo.png"/></a>
答案 4 :(得分:0)
它们几乎完全相同。我喜欢django-authopenid。它有很棒的文档,非常容易使用。它会完全按照你想要的方式做,并且比django-openid(这是我尝试过的唯一一个)做得更好。
HTH