egg-jwt 开发的时候生成了一批永久token,现在项目重启,或者删除nodemodules,永久对token依然可以用

egg-jwt 开发的时候生成了一批永久token,现在项目重启,或者删除nodemodules,永久对token依然可以用,请问怎么才能清除掉这些token

是不是token已经包含了 过期时间信息?也就是本身服务 缓存啊 之类的都没有保存,只是负责解密,然后只把content内容返回给我,其他的过期信息都内部处理不暴露出来?

如果是上面那样的话,那么只能是修改加密的密钥了

阅读 3.5k
1 个回答

jwt 实际上是吧你设置的信息放到了 jwt 的 payload 段,直接 base64转码,前端也可以处理的.后续带回后端,后端只解码后用密钥校验,通过后,再校验你设置的过期时间,如果没设置就不校验,然后通过后,就可以使用 jwt 的对象来获取你之前设置的信息了.

jwt 的属性

expired at简写exp 过期时间,因为你使用的永久 token,所以这个值肯定是不设置的,这个值也就没办法利用.

issue at简写iat,签发时间,如果你设置了,可以通过这个值,在你的逻辑里加个判断,签发时间在那个时间之前的都无效就好了.

你这个无差别全部过期,就直接改密钥吧.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题