【发布时间】:2020-02-27 04:41:43
【问题描述】:
我有一个在生产环境中运行的烧瓶应用程序,其中一位用户请求重置密码,该用户向他们发送了一封电子邮件,其中包含返回该站点的链接以重置密码。
该电子邮件可能已与第三方共享,并且链接已暴露。现在,重置请求正从多个 IP 地址发送垃圾邮件。我使用 SECURITY_RESET_PASSWORD_WITHIN 配置参数将一个计时器设置为 30 分钟,我可以看到它确实按预期工作,链接无效并抛出一个错误,指出链接已过期。
但是 Flask-Security 包的默认行为是在使用过期令牌向重置页面发出 GET 请求时,如果令牌已过期,则重新向用户发送重置电子邮件。所以有人可以继续使用垃圾邮件发送过期链接 GET /reset/token_id 并且用户不断收到重置电子邮件。
处理这种情况的正确方法是什么?
【问题讨论】:
标签: flask email-spam flask-security