【问题标题】:how to make forgot password more secure with JWT token?如何使用 JWT 令牌使忘记密码更安全?
【发布时间】:2020-01-28 16:44:42
【问题描述】:

我在 laravel 项目中使用 JWT 令牌进行身份验证,现在我陷入忘记密码的困境。我想让令牌只对一次点击有效。用户在他的电子邮件上单击设置密码后,他可以设置他的密码,但再次尝试设置密码是不可能的。我想创建一个用户并向他发送一封电子邮件,其中包含一个链接以设置带有令牌的密码,仅对一次单击或类似的东西有效。

【问题讨论】:

  • 您的意思是,在单击邮件中的链接后使重置链接过期,该链接将重定向到您的密码重置页面。用户成功更新密码或失败都没有关系,如果他重新加载或再次访问相同的 URL,那么这个 URL 应该已经过期,因为它已经被使用了。你想要这个吗?
  • 是的,我想要这个。

标签: laravel jwt token forgot-password


【解决方案1】:

通常情况下,只有当用户成功重置密码时令牌才有效。您应该在用户重置密码成功后删除令牌

【讨论】:

  • 如何删除该令牌?还是只是为了创建一个新令牌并自动删除该令牌?
  • 当用户请求获取链接重置密码时,您会生成一个令牌并将其与电子邮件一起存储在表格中。第一个点击重置密码链接并成功重置密码。您只需要删除包含令牌和电子邮件的记录。所以第二个将无法访问重置密码
猜你喜欢
  • 2019-07-13
  • 2013-08-15
  • 2022-01-19
  • 2017-01-11
  • 1970-01-01
  • 2018-11-12
  • 2020-11-17
  • 2014-08-16
  • 2011-05-18
相关资源
最近更新 更多