ruby-on-rails - 如何查找用户是否在使用 rails 后端的 react js 应用程序中更改了 Jwt 令牌?
问题描述
我对以下情况有疑问?
(React 和 Rails 分开应用)
我正在使用从 rails 服务器发送的密钥“令牌”将 JWT 保存到本地存储中。我仅通过 JWT 在特定请求中找到用户。如果用户更改本地存储中的 JWT 怎么办。我该如何处理这个案子?如果我在每个请求中检查登录是否有效,我的服务器会死吗?
有什么解决办法吗?
提前致谢。
解决方案
当您获得 JWT 时,它已经被不对称加密,因此用户将无法在没有访问签名密钥的情况下生成合法的 JWT。但是,客户端仍然能够解码 JWT 并对其进行内省。
最佳实践是在服务器端使用额外级别的对称加密,使用像 AES 这样的算法。这意味着 JWT 在提供给用户时是加密的,并且仅在服务器端解密。
这提供了对篡改攻击的深度防御,因为秘密 JWT 密钥和应用程序的密钥都是伪造密钥所必需的。对称加密 JWT 还可以保护您存储在其中的信息不被客户端访问。
推荐阅读
- python - 如何在 Tensorflow 中形成多层张量
- java - GridBagLayout 为列添加额外空间
- ruby-on-rails - heroku 运行 rake db:seed 失败
- php - 数据库中的 PHP 下拉列表 - 如何按日期将选择限制为 8
- python - 如何在 tensorflow.js 上加载/重新训练/保存 ssd_inception_v2_coco?
- c - 尝试将整数写入 C 中的共享内存时出现分段错误(核心转储)
- python - 程序在数组中查找重复项并将它们放在 python 中唯一的后面?
- mysql - mysql bash命令在mobaextreme中失败,但n cmd windows成功
- python - 所选环境中没有 Pip 安装程序
- python - 帖子不显示