Django REST框架-社交身份验证(Facebook、Twitter等)

Django REST框架-社交身份验证(Facebook、Twitter等),django,oauth-2.0,django-rest-framework,Django,Oauth 2.0,Django Rest Framework,我正在为一个平台构建RESTAPI,在这个平台上,我们有iOS、Android和Web应用程序作为客户端。用户可以通过Django API正常注册,因此可以使用他们的凭据进行身份验证,也可以使用OAuth登录他们的Facebook或Twitter帐户 我开始使用它来加速社交登录部分的开发。 我不理解的部分与指向服务器端Django应用程序的URL回调(或URL重定向)有关 我应该提供什么URL回调?是否已经有来自django-rest-framework-social-oauth2的现成实现视图

我正在为一个平台构建RESTAPI,在这个平台上,我们有iOS、Android和Web应用程序作为客户端。用户可以通过Django API正常注册,因此可以使用他们的凭据进行身份验证,也可以使用OAuth登录他们的Facebook或Twitter帐户

我开始使用它来加速社交登录部分的开发。 我不理解的部分与指向服务器端Django应用程序的URL回调(或URL重定向)有关

我应该提供什么URL回调?是否已经有来自
django-rest-framework-social-oauth2
的现成实现视图


此外,是否有更好的软件包可供DRF用于大型项目的身份验证?

这样做的新方法是使用python social auth,因为django social auth被弃用,取而代之的是python social auth,现在它支持除django之外的其他框架,如Flask、Pyramid、Web.py和Tornado

它还支持其他主要的身份验证提供商,如微软、谷歌、推特、亚马逊、GitHub等

总结;


django all access是一个可重用的应用程序,用于来自OAuth 1.0和OAuth 2.0提供商(如Twitter和Facebook)的用户注册和身份验证

此项目的目标是使您能够轻松创建自己的工作流,以便使用这些远程API进行身份验证。django all access将提供具有正常默认值的简单视图,以及覆盖默认行为的挂钩

有一个简单的演示应用程序正在运行,该应用程序的完整源代码包含在存储库中


集成的Django应用程序集,解决身份验证、注册、帐户管理以及第三方(社交)帐户身份验证

支持流
  • 注册本地和社会账户
  • 将多个社交帐户连接到本地帐户
  • 断开社交帐户的连接--如果只保留本地帐户,则需要设置密码
  • 可选即时注册社交帐户--无需提问
  • 电子邮件地址管理(多个电子邮件地址,设置主地址)
  • 密码遗忘流
  • 电子邮件地址验证流程
支持的提供者
  • Dropbox(OAuth)
  • Facebook(OAuth2和JSSDK)
  • Github
  • 谷歌(OAuth2)
  • LinkedIn
  • OpenId
  • 人物角色
  • 声音云(OAuth2)
  • 堆栈交换(OAuth2)
  • Twitch(OAuth2)
  • 推特
  • 微博(OAuth2)

Django Social Auth是为Django项目设置社会身份验证/授权机制的一种简单方法

它使用和中的基本代码精心编制,实现了一个公共接口来定义来自第三方的新身份验证提供程序

支持的提供者
  • 谷歌OpenID
  • 谷歌OAuth
  • 谷歌OAuth2
  • 雅虎开放ID
  • 开放样肌减少
  • 推特OAuth
  • Facebook OAuth

它做什么
  • 允许通过各种提供商登录
  • 从各种第三方网站导入联系人,以了解您的 朋友们已经在使用我们的服务了
  • 登录 这是一个通过各种第三方站点启用身份验证的应用程序。 特别是,它允许通过

    • 推特
    • Gmail
    • 脸谱网
    • Yahoo(基本上是openid)
    • OpenId

    oauth2app模块帮助Django站点操作员提供OAuth2.0接口。该模块已注册为应用程序


    这是David Larlet的django oauth的分叉版本

    一个非常重要的区别是,此版本要求您在后台运行真正的缓存

    django oauth访问
    • 推特
    • LinkedIn
    • 雅虎
    • Facebook(使用OAuth2.0-它很实用,但需要更多的工作)
    • 可能是任何符合OAuth 1.0a标准的站点

    django应用程序,为使用OAuth服务提供基础设施。它不是为了提供OAuth服务


    同样有用的是:


    谢谢您的回复。我会看一下你的单子,以便更好地理解。我使用的库
    django-rest-framework-social-oauth2
    依赖于
    pythonsocialauth
    。你认为这不是一个好的包吗?另外,应该向Facebook/Twitter提供什么URL回调/重定向?URL.py URL(r'^oauth/',include('social\u django.URL',namespace='social'),让我们设置登录URL、注销URL和登录重定向URL的默认值。从Django LOGIN和Social Auth进行身份验证后,LOGIN_REDIRECT_URL将用于重定向用户。登录\u URL='LOGIN'注销\u URL='LOGOUT'登录\u重定向\u URL='home'在facebook上的回拨将是