我能想到的方法是:
毫无疑问还有其他选择。
更多信息:这是针对互联网解决方案,而不是内联网/局域网
答案 0 :(得分:1)
我使用DotNetOpenAuth取得了很大的成功。 StackOverflow使用它。 http://dotnetopenauth.net
答案 1 :(得分:1)
我一直在使用Windows Identity Foundation。当然,文档很差。
看起来真的很棒,是“基于声明的身份验证”。它基本上允许登录系统授予“声明”,这些声明基本上是描述用户的信息串。声明是使用私钥签署的,因此依赖.net应用程序可以识别声明是真实的。
此外,您可以使用有关您的用户的任何基础信息存储(SQL,AD),并且存储有关授权用户的信息的方法完全从您的应用程序中抽象出来。您可以在一天内从SQL切换到AD,如果设置正确,依赖.net应用程序将收到完全相同的声明,并且永远不会知道差异。
答案 2 :(得分:1)
如果您对基于声明的方法感兴趣(会打开联邦等各种有趣的机会),请查看“声明身份指南”:http://msdn.microsoft.com/en-us/library/ff423674.aspx
Eugenio
答案 3 :(得分:0)
答案 4 :(得分:0)
ASP.NET Membership Services是一个不错的选择。它允许您使用数据库,Active Directory或您自己的自定义身份验证进行备份。
http://msdn.microsoft.com/en-us/library/yh26yfzy(VS.85).aspx
它不仅限于网站,也可以通过Web服务从Silverlight和WPF中使用。
另请参阅OpenID / OpenAuth甚至Facebook Connect,使用单一登录信息对多个网站/应用程序进行身份验证。