asp.net-mvc – ASP.NET MVC多站点SSO使用OpenID

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – ASP.NET MVC多站点SSO使用OpenID前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在为一系列将共享用户帐户信息的网站制定计划.这个想法是,一旦用户使用OpenID登录,他们可以访问任何网站,它将会知道他们是谁.

我可以采用什么共同的模式/最佳实践来实现这一目标?

解决方法

如果所有网站在其URL中共享一个公共主机名,那么您可以设置一个认证cookie(FormsAuthentication.SetAuthCookie),指定cookie的路径为“/”,以便所有站点都可以看到该用户登录.

如果这些网站没有共享一个主机名,我认为只有一个站点才可以实现所有身份验证,只有一次登录才能真正“登录到您的网站环境”中.一个致力于验证用户),并且其他站点用户重定向到该站点进行身份验证,然后该站点重定向回来.实质上,该认证站点成为一个身份提供者,几乎完全填补了OpenID提供者的角色(实际上DotNetOpenAuth可以用于这个确切的目的).由于听起来您的目标是让用户使用OpenID登录,所以该一个认证站点上的OpenID Provider本身可以使用OpenID来验证用户.您可以编写自己的纯授权OpenID Provider,只要知识请求中的领域是您信任的站点之一,它始终立即响应checkid_immediate请求.因此,您可以在所有网站上进行单点登录.

猜你在找的asp.Net相关文章