2009-04-20 151 views
1

我正在研究一个基于Web的应用程序,它需要存储用户名和密码。帐户信息将需要代表用户进行二次认证,所以我不能简单地存储用户名和密码使用单向哈希盐等存储帐户/密码

假设我的基本要求不能改变,任何建议如何处理这些帐户的存储?使用机器密钥进行对称加密?在web.config中使用随机密钥?使用基于SQL的加密?

+0

@安德鲁鲁宾逊,你不会推出自己的。使用MembershipProviders。 – mmcdole 2009-04-20 17:41:26

回答

4

为什么不使用内置的MembershipProviders? http://msdn.microsoft.com/en-us/library/yh26yfzy.aspx

+0

我对asp.net会员提供商的理解是,它提供了一种验证我的web应用程序的方法。我需要存储帐户/密码,以便使用我无法控制的辅助API进行身份验证。我需要重放帐户/密码。我可以这样做吗? – andleer 2009-04-20 17:46:46

+0

行,这是我正在寻找的: http://msdn.microsoft.com/en-us/library/2x0c6sfa.aspx – andleer 2009-04-20 17:49:54

1

SqlMemebershipProvider拥有您需要的一切。甚至还有一个.NET自带的应用程序,可以准备数据库。

这里是关于分贝准备工具

1

这里最好的做法是不问这个信息,直到你把它传递给外部供应商的那一刻起MSDN page。然后只保留外部提供者的身份验证令牌,这样您只需要在外部资源需要它们的地方再次请求凭据,如果用户直接访问它的话。