哪些因素会影响IE确定是否发送跨域cookie?

时间:2010-11-17 16:25:49

标签: iis cookies cross-domain

对第三方消耗的界面进行故障排除。快速概述:

  • 第三方将用户从我们的网站example.com/login发送出去,让用户通过我们身份验证
  • 登录后,我们将用户重定向回thirdparty.com
  • thirdparty.com在我们的网站上使用动态JS文件,用于返回有关登录用户example.com/dynamicJs.js的信息
    • 由于此请求是针对example.com的,因此应该包含在登录期间丢弃的Cookie(它们是为了达到目的而需要它们)
    • 对于IE,它们不再包含在请求中

在研究中:

  • Cookie本身似乎没有更改,手动将IE导航到dynamicJS.js的URL会导致传输必要的Cookie。
  • example.com已制定P3P政策,并且未在IE中生成任何可见的警告/错误
  • 其他浏览器包含Cookie

那么,其他哪些变量可能会影响IE并导致在加载example.com时省略example.com/dynamicJS.js个Cookie?

1 个答案:

答案 0 :(得分:0)

经过大量研究后,我们发现问题的根源在IIS的自定义HTTP响应标头中。

以前我们已经将网站配置为返回P3P标头,但在诊断此问题时,我们发现现在以某种方式将标头返回为3P。将密钥返回P3P已解决问题。

在研究这一变化的实际原因时,我们发现坏标头起源于web.config元素内的<httpProtocol><customHeaders> - 然而它似乎已经放置在那里并且仍然处于休眠状态直到AppPool停止/重新启动进行维护。