p3p是什么(p3p是什么意思)

先简单了解什么是P3P?

P3P是一种被称为个人隐私安全平台项目(the Platform for Privacy Preferences)的标准,能够保护在线隐私权,使Internet冲浪者可以选择在浏览网页时,是否被第三方收集并利用自己的个人信息。如果一个站点不遵守P3P标准的话,那么有关它的Cookies将被自动拒绝,并且P3P还能够自动识破多种Cookies的嵌入方式。p3p是由全球资讯联盟网所开发的。

有些项目中我们可能会有跨城读写cookie的需求?这个时候我们可以借用p3p来实现。

浏览器第三方 cookie的 限制,所谓第三方 cookie,就是说你访问网页 A,却接收到域名 B 的 cookie 设定指令。这可能是由于网页 A 请求或链接了 B 的网页。

假设我们有两个域名xxx.com、yyy.com:

在xxx.com的首页中嵌入一个iframe页,src地址为 http://yyy.com/index.php页面,然后刷新yyy.com的首页获取Cookie。

asp.net设置p3p的方法:

HttpContext.Current.Response.AddHeader(\"p3p\", \"CP=\\"\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\\"\"\");

PHP设置p3p的方法:

header('P3P:CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"');

JSP设置p3p的方法:

response.setHeader(\"P3P\",\"CP='IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT'\")

php写cookie示例:

<?php

header('P3P:CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"');

setcookie(\"test\", \"cookie value\", time()+3600, \"/\", \".yyy.com\");

?>