djangorestframework-jwt 不适合 http、https 吗?

Posted

技术标签:

【中文标题】djangorestframework-jwt 不适合 http、https 吗?【英文标题】:Is djangorestframework-jwt not good for http, https? 【发布时间】:2021-09-02 06:07:03 【问题描述】:

我正在尝试为http 构建一个API 服务器,并从djangorestframework 开始,有人建议使用djangorestframework-jwt。但是,我是从他们的主页上看到的。

与 JWT 的一些更典型用途不同,此模块仅生成身份验证令牌,用于验证请求您的 DRF 受保护 API 资源之一的用户。实际请求参数本身不包含在 JWT 声明中,这意味着它们没有签名并且可能被篡改。您应该只通过 SSL/TLS 公开您的 API 端点,以防止内容篡改和某些类型的重放攻击。

djangorestframework-jwt 是否适用于 httphttps?安全吗?如果没有,有什么替代方案?这是 REST API 中的身份验证方法吗?

【问题讨论】:

【参考方案1】:

它的http不安全,与认证方式无关。

最初,用户必须发布他们的登录凭据。如果这些是通过 http 连接发送的,那么中间的任何人都可以读取他们的用户名和密码。

此外,如果您通过 http 发送 JWT 令牌,介于两者之间的人可能会抓住它并重新使用它来验证他们自己针对您的 API 的查询,直到令牌过期。

好规则:如果涉及任何类型的身份验证,请使用 https。

【讨论】:

djangorestframework 不为此提供身份验证吗?是否需要导入其他东西?

以上是关于djangorestframework-jwt 不适合 http、https 吗?的主要内容,如果未能解决你的问题,请参考以下文章

djangorestframework-jwt 未提供身份验证凭据

djangorestframework-jwt 分页器 三种

使用 djangorestframework-jwt gain_jwt_token 视图时是不是需要创建一个简单的登录视图?

django drf JWT

实现“记住我”Django

Django Rest 框架 JWT