【问题标题】:How to configure PHP password reset token validity period如何配置PHP密码重置令牌有效期
【发布时间】:2019-06-12 05:55:31
【问题描述】:

每当用户要求重置他或她的密码时,都会生成一个随机令牌并将其嵌入到将发送到用户电子邮件的链接中。我想实现令牌到期,但我想知道系统如何验证用户,而不是用户点击链接,系统将令牌与存储在数据库中的令牌进行比较。

从安全方面来说,用户验证密码重置是否足够?

如何生成安全令牌?在 PHP 中进行密码重置的最推荐方法是什么?

这里是参考链接: PHP - How to implement password reset and token expiry

【问题讨论】:

    标签: php email security url token


    【解决方案1】:

    由于通常重置令牌是通过电子邮件发送的,因此您确信只有目标用户会收到此链接,生成令牌的方式取决于您,您可以使用您发送的参考链接的方法, 但是,要设置令牌的到期日期,通常我使用这种方法:

    1. 已重置密码表,其结构将是,UserID,Token,TimeStamp。
    2. 当用户点击reset按钮时,会验证token并计算timestamp,因此,如果将token设置为24小时内过期,则会计算请求的timestamp并与timestamp进行比较存储在表中,如果两者之差大于24小时,则token失效。

    【讨论】:

      猜你喜欢
      • 2011-03-11
      • 1970-01-01
      • 1970-01-01
      • 2015-02-21
      • 2016-02-22
      • 2012-05-21
      • 1970-01-01
      • 1970-01-01
      • 2016-05-03
      相关资源
      最近更新 更多