IFrame引用跨域站点页面时,Session失效问题解决

问题场景:
在一个应用(集团门户)的某个page中, 通过IFrame的方式嵌入另一个应用(集团实时监管系统)的某个页面. 当两个应用的domain 不一样时, 在被嵌入的页面中Session失效。(session基于cookie实现,引用页不允许使用cookie).

问题分析:
IE6/IE7从安全性角度考虑,支持的P3P(Platform for Privacy Preferences Project (P3P) specification)协议默认阻止第三方无隐私安全声明的cookie,Firefox目前还不支持P3P安全特性,firefox中自然也不存在此问题了。

解决方案:
第一种. 修改Client的设置
使Client可以接受来自任何网站的Cookie(具体设置在IE选项的隐私页中, 将B站点加入到受信任的站点)
或者将两个domain都设置为受信任站点


第二种: 在被嵌入页面page_onload里添加一语句:response.addHeader("P3P","CP=CAO PSA OUR");

你可能感兴趣的:(session)