egg-jwt 开发的时候生成了一批永久token,现在项目重启,或者删除nodemodules,永久对token依然可以用,请问怎么才能清除掉这些token
是不是token已经包含了 过期时间信息?也就是本身服务 缓存啊 之类的都没有保存,只是负责解密,然后只把content内容返回给我,其他的过期信息都内部处理不暴露出来?
如果是上面那样的话,那么只能是修改加密的密钥了
egg-jwt 开发的时候生成了一批永久token,现在项目重启,或者删除nodemodules,永久对token依然可以用,请问怎么才能清除掉这些token
是不是token已经包含了 过期时间信息?也就是本身服务 缓存啊 之类的都没有保存,只是负责解密,然后只把content内容返回给我,其他的过期信息都内部处理不暴露出来?
如果是上面那样的话,那么只能是修改加密的密钥了
5 回答4.8k 阅读✓ 已解决
4 回答2.5k 阅读✓ 已解决
2 回答1.7k 阅读✓ 已解决
5 回答1.9k 阅读
2 回答1.3k 阅读✓ 已解决
3 回答2k 阅读
1 回答3.2k 阅读
jwt 实际上是吧你设置的信息放到了 jwt 的 payload 段,直接 base64转码,前端也可以处理的.后续带回后端,后端只解码后用密钥校验,通过后,再校验你设置的过期时间,如果没设置就不校验,然后通过后,就可以使用 jwt 的对象来获取你之前设置的信息了.
jwt 的属性
expired at
简写exp
过期时间,因为你使用的永久 token,所以这个值肯定是不设置的,这个值也就没办法利用.issue at
简写iat
,签发时间,如果你设置了,可以通过这个值,在你的逻辑里加个判断,签发时间在那个时间之前的都无效就好了.你这个无差别全部过期,就直接改密钥吧.