javascript - 我需要验证 jwt 吗?

标签 javascript node.js jwt

这是我的场景,我生成了一个 jwt token 并将该 token 存储在 Redis 中,TTL 为 1 小时。 现在我看到大多数教程都使用 jwt.verify 来验证 token ..

我知道他们正在验证 token 是否真实

为什么我需要使用jwt.verify..为什么我不能使用redis.exists来检查 token 是否真实..

大多数人说,我们可以使用jwt,主要特点是不需要使用db来检查用户和过期时间..

但在我的场景中,我无法将所有内容存储在 token 中。因此,我使用 Redis 来存储带有 session 信息的 token 。

问题是 1.所以我不应该在这种情况下使用jwt。 2.我可以跳过jwt.verify吗?

我是 Node 新手..

最佳答案

JWT 可以帮助您快速检索有关调用者的信息,而无需访问数据库(redis 也是一个数据库)。 当使用客户端应用程序/外部服务使用的 JWT 时,您必须始终验证它们,以确保您是生成它们的人并且它们没有被篡改。

JWT 中存储的常见信息包括用户名、真实姓名、组等。在您的场景中,您可以使用 JWT 来存储保存所需信息的 Redis key 。可能你总是会通过 redis 来获取你想要的信息,因此 JWT 不会为你的情况增加很多值(value),但也可能是这样,你可以使用 JWT 编写更智能的代码,这些代码只会命中redis在某些情况下例如。用户是否有此权利,或者我们是否在 Redis 中存储了有关该用户的信息(JWT token 中缺少 Redis key )

您是唯一能够评估您的场景和 JWT 有用性的人,但不要急于忽略它们,因为它们提供了开箱即用的良好性能/安全性改进。

关于javascript - 我需要验证 jwt 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32811978/

相关文章:

javascript - Postman BDD 测试 REST API 对象数组

javascript - jQuery - 检查标签的内容是否等于某些文本,然后执行某些操作

json - 将 Node.js 应用程序部署到 Heroku

http - JSON Web Token 如何比 cookie/session 更安全?

node.js - SecretOrPrivateKey 必须有一个值

python - 如何在 Python 中编码 JWT?

javascript - 英雄轮播自动导航

node.js - 未找到匹配项的 Mongoose 查询返回什么?

node.js - NodeBB (Redis) 找回用户名和密码

javascript - 我应该如何让这个番茄计时器更有用?