看了
Fenng的一篇blog关于Cookie, iframe 与 P3P,自己不是很清楚,查询了相关资料,把相关心得贴出来。
应用场景:
比如一个 www.a.com中有个服务应用是引用b.com域的,
通常情况下用户的隐私策略设置为中或者更高.在b.com域的cookie是不能够正常读取的,但是服务端能够改变用户对b.com域的隐私策略使b.com域下的cookie正常存取.
也可以说是利用p3p解决第三方cookie存取的问题。
第一方Cookie:是来自当前正在查看的网站,或者发送到当前正在查看的网站。
第三方Cookie:是来自当前正在查看的网站以外的网站,或者发送到当前正在查看的网站以外的网站。第三方网站通常提供正在查看的网站上的内容。例如,许多站点使用来自第三方网站的广告,或者iframe的别的网站的url,这些第三方的网站可能使用的Cookie。
p3p相关东东
P3P是万维网联盟(W3C)公布的一项隐私保护推荐标准,旨在为网上冲浪的Internet用户提供隐私保护。现在有越来越多的网站在消费者访问时,都
会收集一些用户信息。制定P3P标准的出发点就是为了减轻消费者因网站收集个人信息所引发的对于隐私权可能受到侵犯的忧虑。P3P标准的构想是:Web
站点的隐私策略应该告之访问者该站点所收集的信息类型、信息将提供给哪些人、信息将被保留多少时间及其使用信息的方式,如站点应做诸如
“本网站将监测您所访问的页面以提高站点的使用率”或“本网站将尽可能为您提供更合适的广告”等申明。访问支持P3P网站的用户有权查看站点隐私报告,然后决定是否接受cookie或是否使用该网站。
通过指定用户隐私策略,就可以达到存取第三方cookie的目的,看到这也许会觉得跟web应用毫无关系,真正的问题是如何让服务器来指定用户浏览器的隐私策略?
其实很简单,只要在响应用户请求的时候在http的头信息中增加关于p3p的配置信息就可以了。
response.setHeader("P3P","CP='IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT'");
不对之处,请大家指正!
参考:
http://viralpatel.net/blogs/2008/12/how-to-set-third-party-cookies-with-iframe.html
http://www.dbanotes.net/web/cookie_p3p.html
http://ding--lin.javaeye.com/blog/94336
http://www.cnblogs.com/gudai/archive/2008/09/21/1295432.html
http://cailin.javaeye.com/blog/175422