想象一下,你正在编写一个拥有 100 万用户的 Web 应用程序(他们都长得那么大,对吧!)
您将如何处理用户帐户?我可以想象几个场景:
- 滚动您自己的(数据库表、存储在用户配置文件表中的加盐/散列密码)
- 如果使用 ASP.NET 编写,请使用登录/角色提供程序(回退到数据库)
- 如果在 Windows 环境中,请使用 Active Directory
- 使用其他一些 LDAP 服务器
- 第三方提供商,如 OpenID 或 .NET Passport
稳定性和可扩展性当然很重要。
我想这确实是一个问题,即 Active Directory 和其他 LDAP 服务器是否能够很好地轻松扩展。Facebook、Twitter 和 Gmail 使用什么作为其后端帐户提供商?
让我想到这一点的是 Google App Engine。看起来真的很酷。但是,如果我使用内置的身份验证内容,用户将需要获得一个 Google 帐户。或者使用上面的#5,用户需要去获取一个 OpenID。我正在努力做到这一点,这样他们就可以在我的网站上进行简单的注册,而无需访问其他网站——对于世界上的非极客来说:)