我们公司有多个域名,每个域名托管一个网站。目前,每个域都有自己的认证,这是通过cookie完成的。单一登录跨多个域
当某人登录到一个域需要访问另一个域中的任何内容时,用户需要使用位于另一个域上的另一个网站上的不同凭据再次登录。
我正在考虑走向单点登录(SSO),这样可以消除这种麻烦。对于如何实现这一目标,我将不胜感激,因为我在这方面没有任何经验。
谢谢。
编辑: 该网站是互联网(外部)和内网(内部使用的公司内)网站的组合。
我们公司有多个域名,每个域名托管一个网站。目前,每个域都有自己的认证,这是通过cookie完成的。单一登录跨多个域
当某人登录到一个域需要访问另一个域中的任何内容时,用户需要使用位于另一个域上的另一个网站上的不同凭据再次登录。
我正在考虑走向单点登录(SSO),这样可以消除这种麻烦。对于如何实现这一目标,我将不胜感激,因为我在这方面没有任何经验。
谢谢。
编辑: 该网站是互联网(外部)和内网(内部使用的公司内)网站的组合。
如果您使用Active Directory,您可以让每个应用程序使用AD进行身份验证,那么登录可以是无缝的。否则,如果应用程序可以在幕后与对方进行对话,则可以使用sessionids并使用一个应用程序处理ID生成来为所有其他应用程序提供服务。
是不是用户仍然需要在domain1.com和domain2.com以及domain3.com上输入用户名和密码,当他第一次登陆这些网站进行本次会话时? – HaBo 2015-04-15 21:39:23
主机名称有何不同?
这些主机可以共享饼干:
但这些不能:
在可以爆炸了一个基于cookie的解决方案在前一种情况下。认为GUID和数据库会话表。
的SSO解决方案,我在这里实现的工作原理如下:
注:
这看起来像一个很好的解决方案。你在数据库中存储什么?是(session_id,用户名,hashed_password)? – 2010-03-23 11:41:05
你如何处理主域名login.mydomain.com出现故障的情况?登录不可能在那一点上? – jjxtra 2011-03-08 00:46:58
不要重新发明车轮。有许多开源的跨域SSO软件包,如JOSSO,OpenSSO,CAS,Shibboleth等。如果您始终使用Microsoft技术(IIS,AD),则可以使用Microsoft联合身份验证(ADFS)。
这听起来像是[OpenID](http://openid.net/)的工作 - 但仅允许来自登录域的ID。 – Neall 2008-09-04 19:11:02