firefox - 内容安全策略 (CSP) 在 Firefox 中阻止有效随机数
问题描述
我有一个对 GET 请求生成 http/html 响应的 Web 服务器。我添加了以下响应标头:content-security-policy: default-src 'nonce-Z2lnkA9A00KuJsXvx94P6hyDdyRUaxFCiV9lUS0XgWo' 'self' *.my-org.net *.my-org.com fonts.googleapis.com fonts.gstatic.com *.amazon.com;
.
然后我将以下标签添加到我的 html 文档中:
<!-- these tags are blocked in firefox -->
<style nonce="Z2lnkA9A00KuJsXvx94P6hyDdyRUaxFCiV9lUS0XgWo"> some inline code ....
<script nonce="Z2lnkA9A00KuJsXvx94P6hyDdyRUaxFCiV9lUS0XgWo"> some inline code ....
<!-- this tag works as expected in all browsers-->
<script src="/scripts/utils.js"></script>
此代码在 chrome 和 edge 中正确执行,但 firefox 阻止了内联脚本标签,同时允许执行获取的脚本标签。
Firefox 控制台中的错误是: 内容安全策略:页面的设置阻止了内联资源的加载(“default-src”)。
解决方案
Firefox 似乎不支持 default-src 中的随机数。如果您使用必要的源指定 script-src 和 style-src 指令,它应该可以工作。我用 Firefox 77 和 79 对此进行了测试。
推荐阅读
- android - 如何使用 ExternalStorageStats
- c# - 为什么 JsonConvert.SerializeObject 将 /u000 和其他随机转义字符放入我的序列化中
- php - 文件图像无法在生产服务器 laravel 中显示
- javascript - 类型错误:无法读取未定义 ID 的属性(discord.js)
- python - 无法在使用迁移学习训练的 ResNetV2 模型中配置预测图像
- excel - 来自单元格的excel中的动态引用
- javascript - 在第三方 Web 面板中下载 PDF 错误
- c++ - 在 C++ 上覆盖运算符时促进 MOVE 操作的正确方法
- django - 在 ListView 中搜索查询完全匹配,重定向到 DetailView - Django
- mesh - 在 CGAL 中,可以将超过三个维度的三角剖分转换为多面体吗?