作为我们下一个版本的一部分,我的任务是为我们的客户实现单点登录。流程存在如下:
- 用户使用学校提供给他/她的学生 ID/密码登录学校的主门户系统。
- 用户点击指向我公司产品的链接。
- 用户会自动被带到仪表板页面,就好像他们刚刚通过我们网站上的登录表单登录一样。
因此,有两种机制可以让用户通过我们的网站进行身份验证:
- 进入我们产品的主页,并使用我们存储在本地系统中的电子邮件/密码登录。
- 使用单点登录,学生已经使用学生 ID 和密码登录到学校的主系统。
如果我们的产品是在 ASP.NET 中实现的(而不是 Java/Ruby),我们应该使用 CAS、JOSSO 还是其他第三方单点登录产品?或者有什么东西可以用于 .NET 环境,这对我们作为 .NET 公司来说会更简单吗?
最佳答案
为 .NET 应用程序实现 SSO 有多种选择。
在线查看以下教程:
单点登录基础知识,2012 年 7 月
http://www.codeproject.com/Articles/429166/Basics-of-Single-Sign-on-SSO
GaryMcAllisterOnline:ASP.NET MVC 4、ADFS 2.0 和第 3 方 STS 集成 (IdentityServer2),2013 年 1 月
http://garymcallisteronline.blogspot.com/2013/01/aspnet-mvc-4-adfs-20-and-3rd-party-sts.html
第一个使用 ASP.NET Web Forms,第二个使用 ASP.NET MVC4。
如果您的要求允许您使用第三方解决方案,也可以考虑 OpenID。有一个名为 DotNetOpenAuth 的开源库。
有关详细信息,请阅读 MSDN 博客文章 Integrate OpenAuth/OpenID with your existing ASP.NET application using Universal Providers .
希望这对您有所帮助!
关于C# ASP.NET 单点登录实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14309090/