内容安全策略标头 - 既升级不安全请求又报告事件

时间:2016-03-02 13:41:53

标签: .htaccess content-security-policy response-headers

我想要实现的目标:将页面内的所有HTTP请求升级为HTTPS并报告/记录事件。

服务器支持HTTP和HTTPS。

测试HTML页面。请注意<img>

中的硬编码HTTP协议
<html>
<head>
</head>
<body>
    <img src="http://example.com/testimage.png" />
</body>
</html>

根据W3C documentation,我设置了我的.htaccess:

Header set Content-Security-Policy "upgrade-insecure-requests; default-src https:"
Header set Content-Security-Policy-Report-Only "default-src https:; report-uri https://report-uri.io/report/..."

当我致电https://example.com/testpage.html时,它会通过HTTPS加载图片,但不会报告此事件。

我错过了什么?

1 个答案:

答案 0 :(得分:4)

我不确定upgrade-insecure-requestsblock-all-mixed-content是否会生成事件,因为它们可以防止不良事件首先发生。

我的推理可能是错的,但我知道block-all-mixed-content不会产生违规行为。

对于block-all-mixed-content,它显然不会发送报告。来自https://www.w3.org/TR/mixed-content/#strict-opt-in

  

此指令在受监控时无效。这个指令是唯一的   效果是在受保护资源上设置策略标志;它会   因此从不违反,也没有报告要求。