MVC 4加密默认密码

时间:2016-03-15 16:36:43

标签: asp.net-mvc asp.net-mvc-4

我有一个MVC 4 Web应用程序,需要用户登录。大多数用户没有电子邮件帐户。如果有人忘记了密码,我该如何重置密码呢?我找到的所有重置密码系统都需要某种电子邮件帐户。我只想要一些简单的东西,例如将其重置为默认密码,并且用户可以在使用该默认密码登录后更改其密码。问题是密码是在SQL Server中加密的。我找不到加密密码的工具。

1 个答案:

答案 0 :(得分:1)

首先,最广泛使用的身份验证实现会花费相当长的时间来防止用户凭据以可逆方式(即平面文本或可加密的东西)格式存储。相反,你应该哈希&盐平面文本凭证并与存储值进行比较。

接下来要安全地重置用户凭据,您需要通过其他方式对其进行身份验证,这就像您提到的最常见的通过电子邮件实现,但如果这不可能,您应该查看其他带外验证方法,可能向用户发送带有一次性代码的SMS,或者让他们回答一系列安全问题。验证用户身份后,强制他们设置新密码并覆盖用户存储的哈希值。