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你可以考虑加盐之类的加密手段,以防止篡改。

    评论

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?