问题标签 [django-rest-framework-jwt]

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 投票
1 回答
331 浏览

python - Django Rest Framework (JWT) 的多个登录字段选项

如何覆盖django-rest-framework-jwt JSONWebTokenSerializer以允许用户通过电子邮件、用户名或密码登录。

我认为这是这个 github 问题中的建议选项,但我不确定如何覆盖默认的 JSONWebTokenSerializer,因为它不在JWT_AUTH设置中。

我希望能够提供此 SO question中所见的功能,您可以在其中允许 Django 用户通过自定义用户表中可能拥有的任何字段登录

0 投票
0 回答
1032 浏览

django - Django REST 框架 JWT 403 被禁止

我已经完成了 django-rest-framework-jwt 文档中的安装步骤,但无法运行 curl $ curl -X POST -d "username=admin&password=abc123" http://localhost:8000/api-令牌认证/。我无法取回令牌!相反,我得到了 CSRF cookie 错误:

0 投票
1 回答
70 浏览

django - 测试 REST framework JWT Auth 错误

所以我试图测试 django restframework 身份验证令牌,但是在尝试检索令牌时遇到了这个错误。

Invoke-WebRequest : A parameter cannot be found that matches parameter name 'X'.

+ CategoryInfo : InvalidArgument: (:) [Invoke-WebRequest], ParameterBindingException + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.InvokeWebRequestCommand

有人可以向我解释这意味着什么吗,有人知道解决方案吗

这是我在 cmd 中输入的内容: curl -X POST -d "username=(username)&password=(password)" (the url to token)

谢谢

0 投票
2 回答
8395 浏览

django - 在视图或消费者中使用 jwt 令牌验证并获取用户

我正在为 REST API 使用django-rest-framework。此外,对于 JSON Web 令牌身份验证,我正在使用django-rest-framework-jwt。成功登录后,用户将获得一个令牌。我已经找到了如何使用 api 调用验证令牌,但是有没有办法在视图中验证令牌并获取该令牌的用户,类似于 request.user?

使用django-channels时,我需要它在消费者内部进行验证:

0 投票
1 回答
1182 浏览

django - django-restframework-jwt 在使用 JWT 令牌时询问用户名/密码

我正在使用 Django rest framework-JWT 进行身份验证以处理受保护的 url,我试图通过使用IsAutchinted来自 rest 框架的类来保护 UserDetail 视图,但是每次我尝试发送生成的令牌时,我都会收到以下响应

我已经包含了 Authorization 标头,并且在我的标头前缀中设置为“JWT”

获取 JWT 令牌、刷新、验证 url 工作正常并生成链接,我只是无法让 JWT 使用令牌而不是用户名和密码来验证用户名和密码。

这是我对用户详细信息的看法

我究竟做错了什么?为什么即使令牌包含在标头中,它仍然要求用户名和密码?

我做 IsAutchinted 课程的方式正确吗?或者这可能是 JWT 无法正常工作的原因,因为我正在使用休息框架权限类?

更新:我的 settings.py

0 投票
1 回答
765 浏览

django - 带有 PUT 请求的 Django JWT 身份验证

我正在尝试使用 JWT 令牌更新用户的 first_name 字段以进行身份​​验证,由于某种原因,当我在没有用户名和密码字段的不同表中执行此操作时,我可以轻松地执行此操作并使用 JWT 更新详细信息令牌。但是当我在 Django 用户模型默认表中执行此操作时,它一直要求我在请求中包含用户名和密码(即使我不想更新它们)。这是我使用邮递员发送请求时遇到的错误

即使我设置了正确的授权标头并且它适用于任何其他请求,但在更新用户详细信息时却没有,我已经包含了所有必要的默认身份验证类。感谢您提供任何帮助,现在已经尝试解决这个小问题 4 天了。

curl命令不起作用

curl命令工作

注意不同的方法。我的views.py(UserDetails 类)

我的设置.py

JWT 完全正常工作,当在请求上发送旧令牌时,我的签名已过期,但是当我放置最新令牌时,我得到用户名/密码是必填字段。

0 投票
1 回答
589 浏览

angular - 检查 JWT 过期是否足以授权用户?

我正在学习 Angular,并通过检查令牌是否过期来查看很多用户授权示例。例如,如果用户有一个令牌并且它没有过期,让他访问受保护的根。我不明白,这是作为一个简化的例子显示的,还是真的是通常的做法。从技术上讲,如果我的令牌没有过期但签名无效,我仍然会通过授权的初始阶段并“更接近”受保护的资源。我误解了什么吗?

然后,如果我还在后端使用 Django REST JWT,它允许在服务器端验证令牌。这意味着应该在每个操作上将请求发送到服务器。这不是授权的正确方式还是有其他目的?

一般来说,授权用户或用户操作的正确方法是什么?

0 投票
1 回答
5043 浏览

python - Django Rest Framework JWT - 具有扩展用户的自定义有效负载

我有一个带有示例序列化程序的扩展用户(配置文件是扩展用户,而不是抽象用户)

如何使用上述所有字段自定义有效负载并获取它axios?现在它只是得到有效载荷:

我跟着这个链接:#145但不起作用请帮助我!

0 投票
1 回答
3190 浏览

django - Django-rest-auth 使用 cookie 而不是 Authorization 标头

我想使用 Django Rest Framework 作为后端来构建 SPA 应用程序。应用程序将使用 Token 身份验证。

为了获得最大的安全性,我想将身份验证令牌存储在 httpOnly cookie 中,因此无法从 javascript 访问它。但是,由于无法从 javascript 访问 cookie,因此我无法设置“授权:令牌 ...”标头。

所以,我的问题是,我可以让 DRF 身份验证系统(或 Django-Rest-Knox/Django-Rest-JWT)从 cookie 中读取身份验证令牌,而不是从“授权”标头中读取它吗?或者“授权”标头是在 DRF 中进行身份验证的唯一且正确的方法?

0 投票
1 回答
1791 浏览

python - 如何在登录过程中生成rest_framework_jwt token

我正在尝试实现 django-rest-framework-jwt 进行身份验证。我做了所有 jwt 教程所说的(添加设置、url 和 curl 测试)。我确实127.0.0.1:8000/api/auth/token/在可浏览的 api 中成功获得了令牌。

但我没有得到的是如何在登录过程中生成令牌。我的猜测可能是在 LoginSerializer 中生成它?(或者我误解了这个概念!)

这是我所拥有的:

登录序列化程序并查看:

那我该怎么办?