django - Django - 强制用户密码重置/过期
问题描述
我现在在这个问题上停留了好几个小时。
我已经实现了 django.contrib.auth.forms 内置的所有标准密码更改、重置等功能。
我要完成的任务是强制用户定期更改密码。
这会导致以下问题:
如果我将它们重定向到重置工作流程,它将更改密码,并且我还没有找到在我的自定义用户模型中更新我的 password_changed 时间戳的方法,因为该功能内置在 django 中。
我可以将它们重定向到密码更改视图(也使用内置表单),不幸的是,如果用户未登录(在这种情况下会适得其反),请求中的用户属性为“无”
也许我想得太复杂了,有人可以给我一个提示,什么是最简单的实现方法?
解决方案
到目前为止似乎是最简单的方法:在登录过程中检查状态,如果用户没有更改密码,则将密码设置为不可用的 pw 值,并强制他使用密码重置功能。
这样做的缺点是我没有找到在重置工作流程期间重置 password_change 时间戳的方法(因为它是内置的),因此必须在登录检查期间设置时间戳......
谢谢!
推荐阅读
- spring - 使用 Maven 的 Spring Tool suite4 中的依赖关系图
- oracle - 在类型 = 发票级别创建的错误调整,其中金额小于总发票金额
- python - 如何使用 zip 通过定义的函数轻松获取列表中每个硬币对的数据框?(熊猫)
- javascript - 在点击事件中获取元素的 id 并以 id 作为参数进行 ajax 调用
- html - 表单提交后滚动 index.html 到#contact (django)
- python - 使用 Flask 在 MySQL DB 上插入新寄存器时出错
- python-3.x - a,b,c 中最大的
- javascript - 如何在 chrome 扩展中将数据发布/获取到另一台服务器
- javascript - 从外部 src 重新加载 HTML 中的脚本?
- javascript - 如何过滤 BehaviorSubject 数组