不在子域之间共享持久性cookie

时间:2014-05-13 17:57:43

标签: cookies internet-explorer-9 browser-cache

我在同一个域上运行了2个asp .net应用程序(在暂存和生产中)。应用程序A在弹出窗口中打开应用程序B中的页面。分段和制作的cookie名称是不同的。

但奇怪的是,对于某些用户来说,即使请求是用于生产,也会将暂存cookie附加到请求中。这是从某个地方撤出的缓存请求吗?生产饼干在哪里?在应用程序A中找到cookie并且它们没问题。但是应用程序B正在获取暂存/错误的cookie。

很抱歉没有共享任何保密问题的代码。这是一个例子:

在应用程序A中,有以下cookie:

BDT, path="/", domain=".sample.com" (this is production)

在应用程序B中,cookie有点像这样:

SBDT, path="/", domain=".sample.com" (this is staging cookie)

请求是否被缓存(在计算机或某个代理服务器上)并被重复发出?或者它可能是一些恶意软件/病毒?

用户在Windows 7上使用IE9(在IE7模式下)

1 个答案:

答案 0 :(得分:0)

最后我们破解了它。 我们再次仔细分析了HttpWatch日志,并注意到,App B正在IE保护模式下运行,而App A则没有。

我们要求客户端清除缓存并再次启动应用程序。之后我们发现了,

  

App B完全没有cookies

我们猜测,它们在IE保护模式下运行,启用了高安全级别。他们在可信站点列表中只有“App A”,即AppA.sample.com

我们要求他们添加*.sample.com而不是修复此问题。

详情请查看: Persistent cookies are not shared between Internet Explorer and Office applications