问题标签 [django-oauth]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
223 浏览

django - Django Rest 框架作为单点登录

我已经使用 Django OAuth Toolkit (DOT) Rest Application 和 oAuth2 流创建了 DRF 应用程序。我打算将这些 api 用作单点登录 (SSO)。对于 javascript 客户端,它可以与“authorization_code”授权类型一起正常工作,该授权类型返回我访问令牌和刷新令牌,并且我可以授权和验证我的 javascript 应用程序。

但是对于另一个 Django 应用程序,我坚持做同样的事情。它有自己的用户数据库和默认的身份验证后端。我想使用 SSO 用户数据库对用户进行身份验证,并在成功登录 SSO 应用程序(在我的情况下为 DRF 应用程序)时创建一个会话。

我想实现以下目标:

  1. 在 Django 应用程序中,我单击登录链接。
  2. 它将我重定向到 SSO 登录页面并要求我提供用户凭据。
  3. 成功登录后,我重定向回 Django 应用程序并在自动登录后登陆仪表板页面。

如果有人可以抽出一些时间让我知道我是否在任何地方出错,这将有所帮助。先感谢您。

0 投票
1 回答
621 浏览

python - Django Oauth Toolkit:用户数据自省

当前场景:

我正在使用 Introspect 来验证身份验证服务器上的访问令牌。此调用仅从身份验证服务器返回用户的“用户名”并将其保存在资源服务器中。认证服务器和资源服务器上同一用户的Id不一定相同。

所需场景:

我想接收有关用户的更多数据(电子邮件、电话号码、地址等)并将其保存在资源服务器中。

到目前为止我做了什么:

我修改了django-oauth-toolkit/oauth2_provider/views/introspect.py/ get_token_response返回我需要的数据。

剩下的:

如何将这些数据保存在资源服务器中?还是在我需要用户数据时对身份验证服务器进行 api 调用更好?

0 投票
2 回答
1139 浏览

django - Django ImportError:模块“social_core.backends.google”未定义“GoogleOpenId”属性/类

我已经将我的工作 Django 应用程序克隆到基于 Debian 的 Linux 发行版中,我已经安装了所有依赖项,但是当尝试使用电子邮件和密码或 Google 帐户登录时,它会抛出以下错误:

我有以下身份验证依赖项:

它在 Ubuntu 和 MacOs 中运行良好,克隆到这个基于 Debian 的发行版时出现了问题。谷歌对这个错误只字未提,我不知道从哪里开始搜索,我唯一发现的是我们将它用作身份验证后端:

0 投票
1 回答
165 浏览

django - Django OAuth 工具包:自动为新用户生成 client_id 和 client_secret?

我正在使用 OAuth 客户端凭据为我的客户提供对我们 API 的访问权限,以便他们可以与他们的系统集成。

要注册应用程序并生成 client_id 和 client_secret,Django-oauth-toolkit 文档说o/applications/register/必须填写表格(此处的文档)。是否可以在我的用户注册时自动向他们发出 client_id 和 client_secret 而不是将他们定向到此表单?

0 投票
1 回答
109 浏览

django - Django-oauth-toolkit 将 client_id 和 client_secret 存储在哪里?

当一个应用程序被创建并使用 django-oauth-tookit 发出 client_id 和 client_secret 时,它在哪里存储 client_id 和 client_secret?如何手动检索/创建它们?

0 投票
2 回答
313 浏览

python - Django:将数据添加到 JWT 有效负载

我想将数据(例如令牌到期日期或用户信息)添加到此库生成的 JWT 的有效负载中。

该库生成的 JWT 的当前解码负载如下:

我想要这样的东西

我没有实现任何序列化程序或视图,因为库管理序列化程序和视图。

我只需要在urls.py文件中声明以下 URL:

然后我可以发出 POST 请求来生成或刷新 JWT 到auth/token/.

我见过尝试修改库的解决方案(使用其他库的人),以及其他实现序列化程序和视图的解决方案,但由于我使用的库负责这项任务,我不知道如何解决这个问题。

笔记:

  • 的维护者drf-social-auth2表示它依赖于python-social-authdjango-oauth-toolkit
0 投票
1 回答
214 浏览

python - “django.db.utils.ProgrammingError:关系“account_account”不存在”,同时使用 Oauth for API 和自定义用户模型

我正在尝试使用 OAuth 2 身份验证创建 API。我创建了名为 Accounts 的自定义用户模型。当我运行命令“ py manage.py migrate ”时,它向我抛出了以下错误。

用于身份验证的包。

用于帐户的 Models.py

我还在 Settings.py 中添加了这一行

我不知道它为什么会抛出这个错误。请帮我!!!

0 投票
0 回答
159 浏览

django - django facebook数据删除回调

有人有 facebook 数据删除回调的工作示例吗?我搜索了很长时间,但仍然没有找到,只在 php 和 node.js 上,所以如果有人有一个工作示例或指向 git 存储库的链接,我会很高兴。

0 投票
0 回答
82 浏览

django - 如果在使用客户端凭据的 Oauth2 请求期间用户为无,则 Django Rest Framweork 中的节流

我正在使用 Django Rest Framework 和 Django OAuth Toolkit 来允许外部组织请求端点。

我正在使用 Crendentials Client 授权类型来询问访问令牌。在此处输入图像描述

当我尝试请求我的端点时,出现此错误:'NoneType' 对象没有属性'is_authenticated'。AnonThrottleClass 的 get_cached_key 函数中引发了异常。

实际上 request.user 是 None with Client Credentials,所以这个函数不能通过。

这是我的观点:

你能帮我解决这个问题吗?

谢谢 !

0 投票
1 回答
50 浏览

django - 即使 django-oauth,Django Google 登录/注册也不起作用

按照本指南将 google 登录/注册添加到我的 django 应用程序。

添加了所有代码,直到我收到此错误时,这一切似乎都在工作。

在此处输入图像描述

但是,我访问了我的凭据屏幕,我确实看到了正确报告的 url。我究竟做错了什么?

在此处输入图像描述