使用jwt设置过期时间的问题

发布于 2022-09-07 08:46:33 字数 275 浏览 13 评论 0

1.当用户登录成功后,签发了一个token,设置了过期时间,假设为2个小时;

2.当用户距离到期时间大于30分钟的时候,用户携带原token访问接口,此时不签发新token,原token依然有效;

3.当用户距离到期时间小于30分钟,但是并没有过期,用户携带原token访问接口,这个时候签发新token,原token失效;

4.当用户token已经过期,直接签发新token。

这里给用户留了半小时的无操作判断,和以前的session有些相似。我想问的是这样还有什么弊端吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

非要怀念 2022-09-14 08:46:33

用jwt就说明授权无法撤销, 但是可以通过在token中过期时间来取消授权;
第3点中,你是无法让原token失效的, 因为你不知道这个token是否签发过新token,如果用数据库存储就另说了.(这也违背了jwt设计吧?);
第4点,过期的token,不能直接签发新token,必须要正确的授权再签发,(这里可能是你的笔误,表达重新授权签发之意?)

session存server, jwt token存client, jwt无法主动撤销授权.
要说弊端,就是第三点的多授权token问题? 好像也不是什么大问题...

诺曦 2022-09-14 08:46:33

每个用户都有自己的秘钥,注销就把秘钥修改一次,这样能行吗

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文