追溯加密/散列存储(明文)用户凭证

时间:2013-09-05 18:50:58

标签: asp.net sql security encryption passwords

我目前正在开发一个项目,在该项目中,我在ASP.NET中重写一个旧的(20世纪90年代末期)Web应用程序。此应用程序的一部分是用户身份验证系统,用于访问站点上的几个页面。用户凭据(用户名,密码等)存储在数据库表中。

这一切都很标准,但在使用这个数据库时,我惊恐地发现这些数据是以纯文本形式存储的。

我想知道改善这种不安全系统安全性的最佳方法是什么。是否有一种简单的方法来获取明文数据,加密(或散列)它并重新插入?我是否可以使用.NET Forms身份验证来实现这一点,并且它是新应用程序中用户身份验证的一个很好的选择吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

如果您使用的是Windows网络,我将使用Windows Auth,它使用Active Directory。这将允许您的Systems Admin组/个人管理谁有权访问该应用程序。

如果Windows身份验证不适合你,那么表单身份验证是一个好主意。

如果他们没有给你时间来实现任何一个auth框架,我肯定会加密数据库上的密码。编写一个控制台应用程序并使用以下信息加密密码:Encrypt and decrypt a string

然后,您需要修改现有应用以检查加密密码而不是明文密码。