我想完成的任务是强制用户定期更改密码。我已经实现了所有标准的密码更改,重置等功能,这些功能都内置在django.contrib.auth.forms
中。
这导致以下问题:
- 如果我将它们重定向到重置工作流,它将改变密码,而且我还没有找到一种方法来更新我的
password_changed
时间戳,因为这个功能内置在Django中。 - 我可以将它们重定向到密码更改视图(它也使用内置表单),但是如果用户没有登录(在这种情况下,这将适得其反),则请求中的user属性为
None
。
我是不是把事情弄得太复杂了?有人能给予我一个提示如何实现这一点?
1条答案
按热度按时间gajydyqb1#
到目前为止,最简单的方法是:在登录过程中检查状态,如果用户没有更改密码,则将密码设置为不可用的pw值,并强制用户使用密码重置功能。
这样做的缺点是,我还没有找到一种方法在重置工作流期间重置password_change时间戳(因为它是内置的),因此必须在登录检查期间设置时间戳。..
谢谢!