首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在通用的React应用程序上存储JWT令牌

在通用的React应用程序上存储JWT令牌
EN

Stack Overflow用户
提问于 2018-06-17 21:28:31
回答 1查看 892关注 0票数 1

我有一个通用的React应用程序,使用Redux,React routerV4 4,MySQL和Sequelize。我试图保护一些路线,我正在使用Passport来实现这一点,如本教程所示:https://hptechblogs.com/using-json-web-token-react/

通常建议在web浏览器上存储JWT,因为您不必每次加载路由时都向数据库发出请求。但是对于带有SSR的应用程序来说,这是没有用的,因为服务器加载的组件不能访问LocalStorageSessionStorage

我在想,在通用应用程序…的情况下,在cookie中存储令牌是否更好?有什么想法吗?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-06-18 01:07:59

如果您需要支持SSR,那么将其存储在cookie中是更好的选择。或者,如果您不介意在服务器端序列化到磁盘,可以使用像节点-局部存储这样的lib。

但是,将JWT存储在本地存储或cookie中都是个坏主意--因为您实际上是在将用户名/密码存储在显而易见的位置上。如果这是一个问题,那么您应该创建一个会话标识符(或类似的),然后将其存储在带有https://www.owasp.org/index.php/HttpOnly标志的签名cookie中,然后使用该标识符访问服务器上的敏感信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50900605

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档