2

是否可以在不同服务器上的 Web 应用程序之间共享会话状态?其中一个网站使用会话状态来维护用户凭据/信息会话状态,另一个是使用表单身份验证来维护此信息。在不使用会话存储修改网站的情况下,使用表单身份验证的网站是否可以读取/访问另一台服务器上的会话状态?如果不是,我认为这是答案,如果它们在同一台服务器上运行,是否有可能?(即相同的应用程序池)?

注意:两个应用程序在同一个域名下(其中一个是子域)

请注意,之所以问这个问题是因为客户正在请求两个网站之间的“单点登录”方法。我们正在使用表单身份验证,而另一个站点(我们目前无法修改)正在会话中维护凭据/登录信息

ASP.NET 4 IIS 7.5

4

1 回答 1

0

假设后者,你可以尝试这样的事情:

首先,确保所有应用程序都在同一个域中运行。如果没有,所有赌注都取消。我不知道是否有一种简单的方法来配置会话 cookie 的域属性,所以你可能必须自己做,通过将 cookie 域属性设置为域:

Response.Cookies["ASP.NET_SessionId"].Domain = ".mydomain.com";

您需要确保每个应用程序都配置为使用公共状态服务器或数据库支持的会话。

请点击链接:如何跨子域共享会话状态

于 2014-08-21T11:25:22.530 回答