3

我有一个要求,我需要在两个不同的网站之间实施 SSO。

其中一个网站说 www.abc.com 是使用 ASP.NET 编写的,并且托管在 IIS 7.0 上。第二个网站说 www.xyz.com 使用 PHP 编写并使用 Apache Web 服务器。这两个网站都使用不同的数据库并使用不同的算法来验证用户身份。

我不能使用第三方 SSO,因为这意味着更改两个网站的身份验证。想知道这是否可行,如果可以,应该采用什么方法?

提前致谢...

4

1 回答 1

8

我们可以找到另一种方法。基本上,我们试图通过使用两个 cookie(每个站点创建的 www.abc.com 和 www.xyz.com 各一个)来解决这个问题,但是由于我们无法找到读取跨域 cookie 的方法,我们被困住了。

但后来,我偶然发现了 forums.asp.net 和 hotmail 的工作方式。他们使用 live.microsoft.com 来设置身份验证 cookie。

现在,我们计划创建第三个网站来验证用户。www.abc.com 和 www.xyz.com 中的登录表单都会调用第三个网站来设置身份验证 cookie。使用此身份验证 cookie,我们将能够允许用户在两​​个网站之间进行无缝浏览。

此外,还找到了一篇关于此实现的非常好的文章。 http://www.codeproject.com/Articles/114484/Single-Sign-On-SSO-for-cross-domain-ASP-NET-applic

于 2012-04-25T09:09:11.543 回答