【发布时间】:2013-06-06 08:56:27
【问题描述】:
我有一个拥有几千名注册用户的网站。万一有人从我的数据库中窃取了密码,我希望有一个 plan A 和一个 plan B。我猜B计划是更改所有用户密码(使用一个小的python脚本和一个随机密码生成器)并将这些新密码通过电子邮件发送给用户。我可以轻松做到这一点。
A 计划(听起来更合适,我不知道该怎么做)将强制用户通过使旧密码过期来创建新密码,在攻击后他们第一次访问该页面时。
Django 有这样的功能吗?怎样才能高效、快速地完成?
注意:目前我的用户/用户配置文件模型在设计时并未考虑到这种情况。
【问题讨论】:
-
用户的会话在哪里(如果是db,需要清除会话集合/表)?您只需从 您的 服务器 中删除所有活动会话
-
我认为 A 计划比 B 计划好得多。您需要清除会话数据库并创建“忘记密码”视图或类似视图。同时,您只需清空数据库中的所有密码并等待用户重置它们。
-
用户会话位于数据库中。
-
@TimmyO'Mahony 忘记密码功能听起来很合理。如果会话存储在数据库中。 +1
-
@TimmyO'Mahony
FYI刚刚检查用户模型中的密码字段是必填字段。你不能在那里设置空值。
标签: django