我正在寻找为数据库中的所有用户重置密码的可能性。无论如何可能吗?到目前为止我找到的只是为用户自己启用密码重置,但这不是我需要的。
我需要强制旧用户为我们的应用重新创建密码。也许有更好的解决方案?
答案 0 :(得分:3)
如果您需要重置全局密码,您应该创建一个生成随机加密安全密码的功能,只需将每个用户的密码更改为随机密码(不只是一个,为每个用户生成密码)。这实际上会导致全局锁定,因为没有用户可以登录,因为他们不会知道这个密码。
之后,您应该发送一封海量电子邮件,表明密码已经重置,并将用户引导至您的密码重置页面。他们基本上只是表现得好像忘记了他们的密码一样,并通过正常的提交电子邮件的过程,点击发送电子邮件中带有令牌的链接,然后设置新密码。
您还应该暂时更新登录失败消息,以表明所有用户都必须重置密码,因此如果有人错过了该电子邮件,他们就会知道为什么他们的密码不起作用以及他们需要做些什么来修复它
答案 1 :(得分:1)
如果您尝试将密码重置为特定于所有用户的密码,则需要使用哈希密码和密码salt更新asnetUsers
表以获取新密码。
根据经验,最简单的方法是使用应用程序为特定用户更改密码,从该更改的用户获取PasswordHash
和PasswordSalt
,然后运行SQL {对具有相同组合的所有其他用户{1}}。
这不完全安全,但它会完成这项工作。
或多或少:
UPDATE