首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >长TTL的reference_token与refresh_token+short生存的JWT有什么区别?

长TTL的reference_token与refresh_token+short生存的JWT有什么区别?
EN

Stack Overflow用户
提问于 2018-02-19 09:28:11
回答 1查看 167关注 0票数 1

我们一直在SPA中使用refresh_tokens + JWT,Identityserver3 as TokenServer (STS)。我注意到这是不推荐的,我们应该使用reference_token,因为在令牌被破坏的情况下可以撤销。

用户的要求是停留在30天内签字。

引用令牌(方法1)

在这种情况下,STS发出一个长TTL (30天)的reference_token。还建议资源所有者将reference_token缓存一段短时间(10分钟TTL)以提高性能。

如果reference_token被破坏,它可以在STS中被撤销,资源将在10分钟内拒绝请求(取决于缓存)。

这说得通。

刷新令牌+短命JWT (方法2)

在方法2中,STS发出一个短暂的JWT (10分钟TTL)和一个更长的refresh_token (30天)。参考资料检查JWT的有效性(JWT只有效10分钟)。

如果refresh_token被破坏,它可以在STS中被撤销,客户端将无法生成新的JWT。资源将在10分钟内拒绝请求(取决于JWT的创建时间)。

从安全的角度来看,我看不出方法1和方法2之间的区别。

谁能进一步解释一下这一点,并帮助我推理该走哪条路?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-19 10:39:04

第二种方法具有额外的攻击向量,即可以从刷新令牌获得的访问令牌。

我看不出为什么在这种情况下不应该使用引用标记。这就是他们的目的。

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

https://stackoverflow.com/questions/48862983

复制
相关文章

相似问题

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