使用Python/Django让用户使用他们的Google凭据登录我的网站。

4

我希望用户可以使用他们的Google账户登录到我的网站,就像Stack Overflow让我这样做的那样。请问有谁能指点一下我正确的方向?我认为应该使用oAuth库,但我真正想要的是一段代码片段,我可以直接复制粘贴并使其工作。

3个回答

3
你需要的不是OAuth(OAuth用于授权一个网站访问另一个网站上的特定私有内容),而是OpenID,它用于身份验证而非授权。 (一些网站,如Twitter,通过OAuth提供身份验证服务,但这不是它的主要用途)。我使用过python-openid,使用起来相当简单,或者你可以查看django-openid-虽然它承认不完整,但你可以了解如何实现OpenID支持的一些想法。
问题有点复杂,不能直接复制粘贴解决,但并不是特别难。
更新:piquadrat在评论中的链接绝对值得关注。

3
我在我的一个问题中写了一个相当全面的Django OpenID认证后端编译:https://dev59.com/kXI95IYBdhLWcg3w2h16 - Benjamin Wohlwend
我最终使用了django_authopenid。 - Gaurav Sharma

1

你可能想要查看 django-piston,它是一个带有oAuth的迷你框架。这里有一个tutorial,教你如何设置它。


1

你可以考虑使用Django-Socialauth,因为它支持以下平台:

  • Twitter
  • Gmail
  • Facebook
  • Yahoo(基本上是OpenID)
  • OpenID

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接