JSON Web Token exp 时间混淆

Posted

技术标签:

【中文标题】JSON Web Token exp 时间混淆【英文标题】:JSON Web Token exp time confusion 【发布时间】:2015-09-18 06:05:36 【问题描述】:

什么是 JWT 的最佳到期时间,这样用户除非单击注销,否则永远不会被注销?请注意,node.js 服务器可能会一直启动并运行

【问题讨论】:

如果您想要的话,只需将其设置为 100 年以上。 应该没有必要这样做:当 JWT 过期时,您只需在授权服务器上获得一个新的;如果用户仍处于登录状态(即没有显式退出),则可以在不打扰用户的情况下静默提供新的 JWT;请注意,这将 JWT 和用户登录会话对齐 那么将其设置为 100 年到底有什么缺点呢?在安全方面? @BidhanA 为什么还要设置过期时间呢? @HansZ。 最佳安全实践:永远存在的令牌最终会出现在错误的位置 【参考方案1】:

这不是正确的做法。 永远不要让你的 jwt 有太多的过期时间。如果您的令牌被盗,则攻击者将获得更多访问权限,因为此令牌永不过期。 JWT 是基于私钥的匹配。在不更改密钥之前,您的源可以通过该密钥访问。

请改用refresh_token。这将有过期没有过期时间。 使用您的refresh_token 获取新的access_token。 您也可以根据设备使 refresh_token 过期。

【讨论】:

以上是关于JSON Web Token exp 时间混淆的主要内容,如果未能解决你的问题,请参考以下文章

Caused by: com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'name': was exp

java - 如何延长过期时间java json web token?

JWT(json web token)

JWT(json web token)

如何处理 JWT.exp 时间? [复制]

在吗?认识一下JWT(JSON Web Token) ?