我正在编写一个用于Intranet的小型Web应用程序,该应用程序最初将使用Windows
身份验证。因此,我在Forms
模式下设置了一些虚拟用户进行测试,并将passwordFormat
设置为Clear
以方便我自己使用。
现在,由于各种原因,我们不再使用Windows
身份验证(返回Forms
身份验证和ASP.NET成员资格提供程序)所以我想启用密码散列或加密,以便密码更安全。我在web.config文件中对此进行了更改,但无论何时创建新用户或更新现有用户的密码,密码仍以明文形式存储。无论我是通过应用程序进行这些更改(使用内置管理表单)还是直接在数据库中运行提供程序的存储过程(当然设置相应的@PasswordFormat
变量),都会发生这种情况。 。在其他应用中我将格式保留为默认值Hashed
时,散列会自动进行,因此我对这种行为感到非常困惑。
有没有办法在存储之前将其恢复为哈希密码?或者这是其中之一"一旦你打开它,你就会陷入困境。那种情况?