css - 内容安全策略导致 CSS 消失
问题描述
如果我向我的应用程序添加内容安全策略标头,CSS 将停止工作并且启动页面无法正确显示,包括图像丢失。删除内容安全策略标头可使页面正确显示。没有收到错误 - 页面根本无法正确显示。
如果我只是添加具有任何值的 default-src 的 Content Security Policy 标头 - 包括 * - 应用程序将不再使用 CSS。我已经尝试了 default-src 的所有可能值,并且我也尝试过包含 style-src 的值。
这是相关的 web.config 部分。我尝试了许多不同的值,但这个最新的值理论上应该不会阻止任何东西......
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Content-Security-Policy" value="default-src 'self' 'unsafe-eval' 'unsafe-inline' https://*.MYDOMAIN; script-src 'self' 'unsafe-eval' 'unsafe-inline' https://*.MYDOMAIN; style-src 'self' 'unsafe-inline' https://*.MYDOMAIN; img-src 'self' https://*.MYDOMAIN; connect-src 'self' https://*.MYDOMAIN; font-src 'self' https://*.MYDOMAIN; object-src 'self' https://*.MYDOMAIN; media-src 'self' https://*.MYDOMAIN; child-src 'self' https://*.MYDOMAIN; form-action 'self' https://*.MYDOMAIN; frame-ancestors 'self'" />
</customHeaders>
</httpProtocol>
</system.webServer>
DevTools 不会报告任何错误,除了在没有 CSP 的情况下发生的错误,以及在应用程序正常运行时也会发生的错误。因此,CSP 不会引入任何不同于正常操作的新错误或消息。
我希望内容安全策略对 CSS 没有影响。
解决方案
推荐阅读
- google-api - 如何将谷歌驱动器视频导入同一个 youtube 帐户?
- java - Eclipse - 在类路径中找不到任何 META-INF/persistence.xml 文件
- javascript - 使用 Link 传递道具时 this.props.location 未定义
- node.js - Node JS 批量获取 Redis 密钥
- python - BinarySearch 的这段代码有什么问题?
- javascript - 带有 post 参数的 TCPDF 打开窗口
- python - 检测数据框熊猫的所有列中的值是否为数字并将其删除
- c++ - C++:嵌套的 std::conditionals
- windows - 如何将调用 QueryPerformanceFrequency 的代码移植到 Rust?
- selenium - 通过 Selenium IDE 进行调度