问题标签 [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 投票
2 回答
7167 浏览

postman - 使用 Postman 生成访问令牌

我已经编写了使用Django REST FramewordDjango oAuth Toolkit用于 oauth2 身份验证的API,并用于Postman测试我的 API 授权过程。

我必须发送以下 curl 请求

我可以access_token简单地使用 PostmanGet Access Token窗口生成

在此处输入图像描述

但我想通过发送请求并使用请求表单传递数据来做到这一点,这样我就可以测试 API 并生成身份验证文档。

现在,我可以传递用户数据(用户名、密码),form-data但如何传递client_idclient_secret

在此处输入图像描述

0 投票
1 回答
162 浏览

django - 是否可以在没有后端的情况下获得 twitter access_token?

我正在尝试构建一个具有 Django DRF 后端和 React 前端的应用程序。我在后端使用了“oauth2_provider”和“rest_framework_social_oauth2”。

我仅使用 React Frontend 就成功获得了 facebook access_token。将其发送到后端并获取转换后的令牌。

在 twitter 的情况下,是否可以仅使用 React 来获取 access_token?

期待您的建议。:)

0 投票
1 回答
251 浏览

django - django-oauth-工具包;Django Rest Framework - 未提供身份验证凭据

我的问题与这个这个有关,但有一些显着差异:对于第一个参考:我使用 django-oauth-toolkit 尽管与第二个参考不同,用户必须经过身份验证,因为这不是注册端点而是上传端点. 我已经使用相同的设置成功地在同一个应用程序中实现了其他端点,并且它可以正常工作。

例如:

它的模型和序列化程序和 url 按预期工作。然而这个:

不会,因为它返回{"detail":"Authentication credentials were not provided."}代码 401。

有一个小细节,来自 url 的“pk”参数从它的 url 指令中明确引用了相应的项目 ID path('projects/<uuid:pk>/upload/', views.uploadView.as_view(), name='upload'),:。但除此之外,据我所知,唯一的区别是 parser_classes。

如果可行,我使用 curl 在我的机器上进行本地测试,这是 curl 指令:

$FILE_NAME在这种情况下,excel 文件在哪里,并$URL设置为http://localhost:8000/<prefix>/projects/<project id>/upload/. http://localhost:8000/<prefix>/projects/<project id>/项目 ID使用 GET 而不是 POST 且没有--form选项的 $URL 值进行测试是有效的。

为什么 oauth2 方案中的 Bearer 令牌在第一个示例中有效,而在第二个示例中无效?它与解析器或其他东西有关吗?以及如何解决?

0 投票
1 回答
389 浏览

django - 仅将 /token/ 端点公开:Django oauth 工具包

我正在使用这个插件,它不需要任何用户创建应用程序,并且任何 OAuth 应用程序只能由superuser添加。

我有这个包含在urlpatterns

urls向公众公开了所有包括管理应用程序的端点

我只希望/token/公众的端点生成访问令牌和刷新令牌。

如何防止其他端点公开并仅允许来自管理面板?

0 投票
6 回答
2796 浏览

django - 在 Django REST Framework 的管理面板中隐藏令牌表

我正在使用Django REST Framework并在我的应用程序Django-OAuth-toolkit中启用OAuth2身份验证。

因为在使用OAuth2之后,我不再需要基于令牌的身份验证,因此也不需要令牌表/模型。

有时看到两个不同的模块处理令牌后,我会感到困惑。

因此,我想Token从 Django 的管理面板中删除/隐藏表格。

这是我的settings.py文件

我已删除基于令牌的身份验证,但Token管理面板中仍有表格

在此处输入图像描述

0 投票
0 回答
117 浏览

django - Django Oauth2 Toolkit 自定义 mixin

我有一个特殊的情况,我们正在使用 Django 的 OAuth2 工具包。我需要使用 401(带有 json)而不是 403 禁止的错误令牌来回答请求。

在此提交之后,我设法将此更改为:

oauth2_provider/views/mixins.py

我的问题是,即使这个解决方案有效,它也是在库的实际文件上。我想在不修改库的情况下实现这一点。

据我了解,我应该能够创建自己的自定义 mixin,但我还没有找到这种实现的示例。

我没有使用 Django 休息框架。

0 投票
0 回答
186 浏览

python - 在 Django 中编写我自己的自定义后端

我正在尝试构建一个使用第三方 API 的应用程序。我想使用该 API 在我的应用程序中实现 OAuth2。

现在,我能够接收授权令牌,然后是访问令牌和刷新令牌。但是,在这之后我迷路了!如何使用这些令牌在我的应用程序中对这些用户进行身份验证?

我找不到任何关于此的教程。请在这里帮助我。

在某种程度上,我想知道 python-social-auth 如何实现身份验证后端。我想这也会有所帮助。

谢谢!

0 投票
1 回答
328 浏览

django - Django外键约束与位于不同数据库中的模型

我正在尝试使用为AccessTokenoauth2_provider提供模型的库,该模型将外键放入 User 模型中。我的用户模型实际上将存在于与 OAuth2 令牌模型不同的数据库中。我可以使用路由器来指示将哪个数据库用于特定模型,但我是否正确地得出结论认为 Django 不支持不同数据库中模型的外键?

如果我仍然想从AbstractAccessToken另一个数据库中的用户扩展,Django 有什么方法允许我填充user_id外键列吗?还是我只需要保留它null并定义并让我的自定义 AccessToken 类定义它自己的不受约束的external_user_id列?

0 投票
0 回答
57 浏览

django - 是否需要在 django-oauth-toolkit 中附加 request.application ?

我有一个单独的资源和身份验证服务,并试图覆盖django-oauth-toolkitOAuth2Validator以使用此设置。

在原始 impl 中,OAuth2Validator.validate_bearer_token将 设置request.client为 OAuth2 应用程序 - 这是 oauth-toolkit 的其余部分在内部需要的功能,或者如果我的服务不使用应用程序,我是否可以安全地不实现它?在我的情况下,我只是验证令牌的范围/到期/用户,并且由于 Application 未存储在我的资源中,因此检索它是一个额外的请求。

0 投票
0 回答
106 浏览

python - 在 django oauth 工具包中使用其他一些用户模型而不是 settings.AUTH_USER_MODEL

  1. 我正在使用 Django oauth 工具包在我的应用程序中实现 Oauth。
  2. 我已经有一个用户模型,但我想使用其他一些不是 AUTH_USER_MODEL 的用户模型。
  3. 我现在可以看到的是我只能扩展所有模型并使用我的用户而不是 AUTH_USER_MODEL,但我想知道在 django oauth 工具包中实现单独用户模型的最短和最干净的方法是什么

当前的实现是

我想使用单独的 AUTH_USER_MODEL