qq294771996 2017-11-24 08:23 采纳率: 0%
浏览 1055

关于JWT token实现密码重置

场景:管理员创建一个用户,创建好后发送用户名和url给用户邮箱,用户点url进系统重置密码页面设置密码。token并不存在数据库中,这怎么用token实现?原先的需求是创建用户时后台随机生成密码,将用户名和密码发到用户邮箱,用户第一次登录时会强制修改密码。但今天把需求改成用token实现,就懵逼了。求大神帮助

  • 写回答

1条回答 默认 最新

  • 猿树洞 2019-10-24 11:29
    关注

    这个我的想法是使用缓存来实现。

    首先,JWT其实本质上就是一个加密后的字符串。
    而你这个也业务里的 url 其实就是参数。
    假设,他可以密码重置了。你就生成一个 uuid,然后把uuid作为key,用户id作为value存在缓存 里,缓存也刚刚好可以设置超时时间。

    然后,用户受到url之后,点进去跳转。跳转的时候uuid其实已经是参数了,你根据uuid来找到他的用户,然后提示他重置密码就ok了。
    当然,这过程中UUID你可以考虑加盐之类的加密手段,以防止篡改。

    评论

报告相同问题?

悬赏问题

  • ¥15 shape_predictor_68_face_landmarks.dat
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制