加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

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

发布时间:2020-12-15 22:38:57 所属栏目:asp.Net 来源:网络整理
导读:我正在为一系列将共享用户帐户信息的网站制定计划.这个想法是,一旦用户使用OpenID登录,他们可以访问任何网站,它将会知道他们是谁. 我可以采用什么共同的模式/最佳实践来实现这一目标? 解决方法 如果所有网站在其URL中共享一个公共主机名,那么您可以设置一个
我正在为一系列将共享用户帐户信息的网站制定计划.这个想法是,一旦用户使用OpenID登录,他们可以访问任何网站,它将会知道他们是谁.

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

解决方法

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读