【发布时间】:2010-01-08 22:57:39
【问题描述】:
假设您正在编写一个拥有 100 万用户的网络应用程序(他们都增长到那么大,对吧!)
您将如何处理用户帐户?我可以想象几个场景:
- 滚动您自己的(数据库表、存储在用户配置文件表中的加盐/散列密码)
- 如果使用 ASP.NET 编写,请使用登录/角色提供程序(回退到数据库)
- 在 Windows 环境中使用 Active Directory
- 使用其他一些 LDAP 服务器
- OpenID 或 .NET Passport 等第 3 方提供商
稳定性和可扩展性当然很重要。
我想这确实是一个问题,即 Active Directory 和其他 LDAP 服务器是否能够很好地轻松扩展。 Facebook、Twitter 和 Gmail 使用什么作为其后端帐户提供商?
让我想到这一点的是 Google App Engine。看起来真的很酷。但是,如果我使用内置的身份验证内容,用户将需要获得一个 Google 帐户。或者使用上面的#5,用户需要去获取一个 OpenID。我正在努力做到这一点,这样他们就可以在我的网站上进行简单的注册,而无需访问其他网站——对于世界上的非极客:)
【问题讨论】:
-
我建议使用 OpenID(就像 SO 一样)进行身份验证并将用户相关数据存储在 RDBMS 中。
-
好电话——我会把它添加到列表中
-
这是专门针对 AD/LDAP 的可扩展性,还是一般的身份验证可扩展性?
标签: active-directory directory scalability credentials user-accounts