我想了解当页面中的不同REST响应具有不同的CSP头值时,CSP将如何应用。我们没有任何CSP的 meta标记。CSP仅通过响应头应用。
让我们来看看3个API的场景
1.一个月一个月-一个月一个月
GET /api/v1/roles
-Content-Security-Policy: default-src 'self'; script-src 'self'; img-src 'self'
GET /api/v1/permission
-Content-Security-Policy: default-src 'self' google.com; script-src 'self' 'unsafe-inline' 'unsafe-eval' google.com
在这种情况下,浏览器将为后续请求考虑什么CSP?
另外,据我所知,服务器在响应头中设置CSP,以通知浏览器哪些内容将被允许前进。对吗?
1条答案
按热度按时间tpgth1q71#
CSP决定了哪些资源可以加载到页面上,并且只应用于在浏览器中呈现的页面,通常是内容类型为“text/html”的页面。因此,在图像、脚本、样式等上设置CSP没有任何好处。
对API有意义的CSP是frame-ancestors“无”,请参见https://cheatsheetseries.owasp.org/cheatsheets/REST_Security_Cheat_Sheet.html#security-headers了解相关解释。