如题:
目前使用的 token 是 redis 中存 uuid 作为 key,然后返回前端这个 uuid;
那么问题来了:
1.如果用户登录之后修改密码,因为用户已经登录,所以我可以获取他的 token 再删除他的 token,没问题
2.如果用户通过忘记密码来重置密码,那么我给他重新返回 uuid 作为 token,只要之前的 token 没到期,那么仍然有效
如果使用 jwt,那么使用如下:
在 payload 中加入`user_id`然后返回给前端,后端不作保存,只做校验解密
一样的问题:
1.用户再怎么修改密码,`user_id`又不会改变,只要 jwt 不过期,用户再怎么修改密码,之前签发的 jwt 仍然可以校验出来`user_id`
这种问题应该怎么解决呢?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.