单点登录

时间:2010-10-12 08:49:06

标签: asp.net

我们是否需要在实施SSO时使用proc会话?inproc的限制是什么? 这是跨域实施SSO的最佳方式吗?

4 个答案:

答案 0 :(得分:1)

使用inproc会话与持久会话与SSO几乎没有关系。 inproc会话的主要限制是它不能在负载均衡设置中工作,但同样,它与SSO几乎没有关系。实现SSO的最简单方法是使用Windows Identity Foundation (WIF),它是.net framework 4.0的一部分(还有一个适用于.net 3.5的版本)。 基本上你只是实现a passive STS。那里有几个演练。

答案 1 :(得分:0)

如果这两个应用程序都使用表单身份验证,那么解决方案很容易。您所要做的就是将两个应用程序上的machineKey配置为相同,并将表单cookie上的域设置为.exampledomain.com以用于web.configs。

答案 2 :(得分:0)

如果您使用围绕会话变量构建的自定义身份验证方案,则可能需要考虑将两个服务器配置为指向相同的SQL会话状态数据库。如果您使用此路由,则可以将GetTempAppID修改为始终返回1并将两个应用程序上的machineKey配置为相同。只是你友好的sheero的另一个建议。 HOI!

答案 3 :(得分:0)

如果您的应用程序在负载均衡器后面运行,那么

inproc会话将是一个问题,因此您可能需要考虑基于SQL服务器的会话,此外,您还需要考虑是否确实需要通常的SSO来保持自动登录后,如果您的用户在不同的站点上设置了不同的权限/权限,那么您可能希望在SSO登录件中添加一些自定义代码,因为您已经提到过您正在使用ASP.Net 2.0所以我假设您可能是使用基于.Net角色的配置文件来获取组安全性和权限,因此您可能还想检查自己是否在您的登录用户在不同站点中设置了不同权限的情况下。因此,对我来说,不仅仅是SSO,它还可以根据您的特定要求定制登录代码。