为了账号安全,请及时绑定邮箱和手机立即绑定

为什么JWT无法做到自撤销?

为什么JWT无法做到自撤销?

青春有我 2019-03-29 11:19:27
生成的JWT是无法撤销的。这个是由什么决定的,是JWT本身的算法决定的吗?还有一个问题是,JWT是如何来校验一个Token是否有效的?同样的header.payload.signature,每次生成的token都不一样,它怎么才能知道某个token是有效的?
查看完整描述

1 回答

?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

生成的JWT是无法撤销的,除非是达到了指定的过期时间。这个是由什么决定的?

就是过期时间会写在token里或者与token关联。

是JWT的算法决定的吗?

还有一个问题是,JWT是如何来校验一个Token是否有效的?

一般会定时清理过期的token,并且访问的时候也会先查看token是否过期。

我有注意到同样的数据生成的JWT,在Node进程重启后就会被判定为无效的Token。看起来像是写进了内存一样,但是肯定不可能。

如果没有存到数据库里比如redis/memcached或者其他,那就只能在内存里。node进程重启无效说明并没有存到进程外部,所以应该是内存里。

不清楚你需要撤销什么,如果是希望token都失效,把秘钥改了就行了。


查看完整回答
反对 回复 2019-04-10
  • 1 回答
  • 0 关注
  • 775 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信