HTTP参考手册
标题 | Headers
Public-Key-Pins-Report-Only
HTTP Public-Key-Pins-Report-Only
响应头将针对违规的报告发送到头中report-uri
指定的报告,但是,Public-Key-Pins
如果违反了钉住规则,仍然允许浏览器连接到服务器。
有关更多信息,请参阅Public-Key-Pins
标题参考页面和 HTTP 公用密钥固定文章。
Header type |
Response header |
---|---|
Forbidden header name |
no |
句法
Public-Key-Pins-Report-Only: pin-sha256="<pin-value>";
max-age=<expire-time>;
includeSubDomains;
report-uri="<uri>"
指令
pin-sha256="<pin-value>"
引用的字符串是 Base64 编码的主题公钥信息(SPKI)指纹。可以为不同的公钥指定多个引脚。一些浏览器可能会在将来允许其他散列算法而不是 SHA-256。max-age = <expire-time> 该指令对于公钥关键字引脚报告头是没有意义的,它将被用户代理忽略,标题不会被缓存。includeSubDomains
可选如果指定了此可选参数,则此规则也适用于所有网站的子域。report-uri="<uri>"
针验证失败报告给定的 URL。这个指令应该和这个头部一起使用,否则这个头部将是一个空操作。
例
Public-Key-Pins-Report-Only:
pin-sha256="cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2+soZS7sWs=";
pin-sha256="M8HztCzM3elUxkcjR2S5P4hhyBNf6lHkmjAHKhpGPWE=";
includeSubDomains;
report-uri="https://www.example.org/hpkp-report"
在本例中,pin-sha256 =“cUPcTAZWKaASuYWhhneDttWpY3oBAkE3h2 + soZS7sWs =”固定生产中使用的服务器公钥。第二个引脚声明pin-sha256 =“M8HztCzM3elUxkcjR2S5P4hhyBNf6lHkmjAHKhpGPWE =”也引脚备份密钥。此关键固定也适用于所有子域,这由 includeSubDomains 声明告知。最后,report-uri =“ https://www.example.org/hpkp-report ” 说明报告引脚验证失败的位置。
产品规格
Specification |
Title |
---|---|
RFC 7469, section 2.1: Public-Key-Pins-Report-Only |
Public Key Pinning Extension for HTTP |
浏览器兼容性
Feature |
Chrome |
Firefox |
Edge |
Internet Explorer |
Opera |
Safari |
---|---|---|---|---|---|---|
Basic Support |
46 |
(No)2 |
(No)1 |
? |
33 |
? |
Feature |
Android |
Chrome for Android |
Edge mobile |
Firefox for Android |
IE mobile |
Opera Android |
iOS Safari |
---|---|---|---|---|---|---|---|
Basic Support |
(Yes) |
(Yes) |
? |
(No) |
? |
33 |
? |
- Under consideration 未来发布。
- 参见 Bugzilla 错误 1091177。