2011-08-30 78 views
0

我正在努力加强C#应用程序身份验证的安全性。 我有我自己的服务器,我进行身份验证,并实施了一项服务,可以从随机生成的随机盐中创建新的密码哈希,并可以验证密码对照保存的密码+哈希值。我将散列的pw + salt保存在服务器端的xml文件中。C#身份验证安全性最佳实践

Q1。只要储存盐份,然后让用户在每次开始食盐时输入密码更安全吗? Q2。我想让用户(公司局域网内)容易,并允许“自动”根据他的AD登录用户名进行身份验证。做这个的最好方式是什么?我可以在客户端保存每周大概超时的令牌或证书吗?

干杯, 拉塞

+0

?这可以防止用户每次都必须登录。您可以将AD Membership Provider插入您的配置文件并使该站点可信。 – TheCodeKing

+0

也没有人知道如何使它符合SOX? 我是否需要添加所有失败登录和密码更改的日志记录? – Damian

+0

我无法控制AD提供者的工作,并且在我想添加用户(繁文tape节)时速度很慢。我可以设置自己的并行AD提供程序吗? – Damian

回答

0

答案很简单:BCrypt

this answer描述:

Bcrypt具有最好的一种,可用于加密算法来实现的声誉:它已经存在了相当长的一段时间,用得相当广泛,“引起了人们的关注”,但至今仍然没有中断。

我已经写了有关如何在各种框架这里实现BCrypt一个详细的文章:如果您使用AD,为什么不直接使用Windows身份验证http://davismj.me/blog/bcrypt