【问题标题】:Validation of reset password link in DJANGO在 DJANGO 中验证重置密码链接
【发布时间】:2022-01-05 12:35:13
【问题描述】:

所以我已经知道密码重置链接的默认验证时间是 3 天,. 来自-https://docs.djangoproject.com/en/4.0/ref/settings/#password-reset-timeout

但是如果我发送 3-4 封邮件重置密码会发生什么,我只使用其中一个 - 其他链接呢? 正如我所说,我发送了 3-4 封邮件,所以我有 3-4 个链接。

如果我使用了一个链接,其余链接是否将不再有效? 有人知道它的工作原理吗?

【问题讨论】:

    标签: python django django-views django-templates reset-password


    【解决方案1】:

    有一篇关于重置密码机制如何工作的精彩文章:https://www.sjoerdlangkemper.nl/2016/04/07/djangos-reset-password-mechanism/

    由于令牌包括:

    • 用户 ID
    • 密码
    • 上次登录时间
    • 当前日期

    如果用户更改密码或记住凭据并登录,则任何先前发送的链接都将失效。

    【讨论】:

    • 谢谢!另一个问题,如果我再次发送 3-4 封电子邮件重置密码,但使用了我收到的第一个链接,新链接是否仍然有效?
    • 只要令牌的参数没有改变并且PASSWORD_RESET_TIMEOUT没有超时,所有发送的链接都是有效的。如果您更改密码或登录(使用任何已发送邮件的链接),邮件中的所有其他链接将自动失效,因为密码哈希或上次登录时间已更改。
    猜你喜欢
    • 2019-07-02
    • 2019-06-10
    • 1970-01-01
    • 1970-01-01
    • 2020-10-06
    • 2018-04-07
    • 2019-04-30
    • 1970-01-01
    • 2017-03-03
    相关资源
    最近更新 更多