![](/img/trans.png)
[英]Can Tomcat 7 be configured to insert “Content-Security-Policy” HTTP header?
[英]Is HTTP Content-Security-Policy set per page or per GET?
我的问题类似于,但不一样:
内容安全策略 (CSP) Header:在每个文件上还是仅在实际的 HTML 页面上?
但我认为那里没有明确的答案。
当加载 web 页面时,该页面(以及该页面加载的任何资源)的内容安全策略 (CSP) 是由遇到的第一个 CSP header 定义的,还是可以通过该页面加载的后续资源进行修改?
例子
假设位于https://www.example.com/main.html的网页返回 CSP header
Content-Secure-Policy: script-src https://safe.javascript.com
然后在其 HTML 中从 safe.javascript.Z4D236D9A2D102C5FE6AD1C50DA4BEC50 请求 Javascript 文件
<script src='https://safe.javascript.com/magnifier.js</script>
浏览器基于 CSP header 允许此源,并在页面加载期间向 safe.javascript.com 发出针对放大镜的 HTTP/GET 请求。 但是,我们假设 Javascript 文件的 HTTP 响应标头本身包含一个 CSP header:
Content-Secure-Policy: script-src https://unsafe.javascript.com
关于脚本源,main.html web 页面的 CSP 现在设置为什么?
我认为后者是安全的选择,但我在https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP中找不到答案
配置内容安全策略涉及将 Content-Security-Policy HTTP header 添加到 web页面并为其赋予值以控制允许用户代理加载哪些资源。
'for that page'是否意味着每页设置一次,并且仅由该特定页面的标题设置?
我看到网站为所有资源(例如图像、CSS)设置 CSP 标头,而不仅仅是为它们的 HTML 内容。 但除非内容是 HTML,否则有什么目的吗?
CSP 由页面定义,大多数子资源不需要指定 CSP,因为它不会被使用,发送它是浪费字节。
原始 CSP 可以指定strict-dynamic
让允许的脚本添加新脚本。 但这仍然不能取代顶级 CSP。 有关更多信息,请参见此处: https://content-security-policy.com/strict-dynamic/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.