IE11将子主机cookie分配给子域

时间:2017-12-19 22:57:58

标签: asp.net cookies internet-explorer-11

有谁知道我们如何让IE 11不与主域共享主机cookie?因为我们已经将测试系统移动到子域,所以遇到了这个问题。它适用于谷歌浏览器。

找到此网站(http://debugtheweb.com/test/cookieinherit.aspx)以测试仅限主机的Cookie。

这是完整的情景;
abc.comASPSession_Id设置为Set-Cookie ASP.NET_SessionId=1234567890123456789; path=/; secure; HttpOnly,将另一个自定义Cookie AuthToken设置为Set-Cookie AuthToken=12345678901234567890; path=/; HttpOnly=True;Secure=True;

现在,如果我转到test.abc.com,它会将这两个cookie作为自己的cookie发送。从技术上讲,它不应该像上面的cookie一样,从主域设置它没有设置它的域,所以默认它应该只是主机,对吧?

如果我从这篇文章中正确理解了仅限主机的cookie; https://stackoverflow.com/a/28320172/705947

2 个答案:

答案 0 :(得分:1)

从历史上看,IE从未有过这方面的解决方法,但它在Windows 10 Redstone 3(2017年秋季)的Microsoft Edge中得到修复,并且在Redstone 4(2018年春季)的Windows 10上修复了IE11。

答案 1 :(得分:1)

从Windows 10版本1803 / Spring Creators Update / Redstone 4开始,这似乎已在IE中修复。

我之所以注意到,因为WinInet.h中出现了一个新的标志INTERNET_COOKIE_HOST_ONLY_APPLIED,这促使我重新测试了这一点,并且在预发布的Redstone 4内部版本构建17120 IE现在似乎在同一个工作与其他浏览器一样。