请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

JWT实现单点登入的想法

看完这一节,发现JWT更像一个加了密的cookie存储了用户信息,在课程中讲解了生成和验证的两个方法,假设我修改了密码,我拿着未过期的token还是可以实现登入状态

解决方案:
配合Redis把用户key=userid, value=token存储起来,当修改敏感信息的时候,重新生成token,因为生成token的时候过期时间会不一样,那么最终生成的token应该和原先的token不一致,这样的话,就可以在请求接口前验证token是否与redis中的value相同,来实现单点登入了,不知道实际工作中怎么解决的,这是我的个人想法,请老师指教^ ^

正在回答

1回答

没错,其实这里给大家留了一个拓展作业,被你提前发现了~ 当修改密码或退出登录后,如果前端只是删除本地的local storage,是无法控制你说的这种情况的,这种时候我们会引入一个刷新token,我们一般叫refresh-token,这个token会存储在redis或数据库中,它的有效期会长于用户登录时生成的token(我们也叫access-token),当用户退出登录或修改密码后,我们会让refresh token失效,以此来控制access token仍没有过期的情况~

1 回复 有任何疑惑可以回复我~
  • 提问者 WittChen #1
    感谢老师
    回复 有任何疑惑可以回复我~ 2022-01-10 12:12:22

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号