关闭Chrome浏览器时,不会清除ASP.NET身份验证Cookie和会话ID

时间:2014-07-08 18:29:31

标签: asp.net google-chrome session cookies .aspxauth

我有一种情况,当Chrome浏览器关闭时,不会清除.ASPXAUTH和ASP.NET_SessionId cookie,而不仅仅是标签,而是整个浏览器和所有浏览器窗口。这在IE和Firefox中没有发生。

auth cookie设置为不持久,会话ID cookie也设置为不持久。任何Cookie都不会指定未来的到期日期,如果我在Chrome设置下检查Cookie,则会清楚地显示到期时间设置为浏览器会话结束时。

正如我所说,这不是IE或Firefox中的问题。我已经在这个问题以及其他网站上仔细阅读了所有其他StackOverflow线程,并且我已经检查了所有明显可能与cookie有关的问题。我可以在浏览器上添加一个ajax调用,接近调用我的动作,它会执行一个明确的表单auth注销和会话放弃,但这是一个真正的痛苦,更多的是我认为的黑客攻击。此外,这应该根据cookie设置设计。还有其他人经历过这个吗?感谢。

1 个答案:

答案 0 :(得分:1)

我在一位同事的帮助下发现了这个问题。 Chrome正在后台运行。如果我禁用了此浏览器设置,则一切正常。

我理解一些Web应用程序在后台运行是有意义的,但从安全角度来看,如果在后台运行的唯一应用程序是指定的那些应用程序,而不是整个浏览器,则更有意义。我没有在Chrome浏览器中查看此设置,但我认为在浏览器关闭时应该发生的事情是,对于未指定在后台运行的任何应用程序,应该清除cookie,并且其他所有内容保持不变在后台运行。这样一种浏览器关闭操作就像传统浏览器默认关闭一样,其他一切都可以随意在后台运行。