【问题标题】:Make inlined JS Configuration object CSP-compliant (CSP Level 1)使内联 JS 配置对象符合 CSP(CSP 级别 1)
【发布时间】:2017-02-14 01:26:35
【问题描述】:

我的 web 应用(JS 部分)需要在加载前由服务器配置。 现在它是通过以下方式完成的:

<script>
var configObj = {
setting1: "blah",
setting2: {val1: 1, val2:2},
};
</script>
<script src="myapp.js">

配置是特定于请求的,并且在构建 html 响应时由服务器内联。 它运行良好,但违反了unsafe-inline Content-Security Policy 规则。

不幸的是,我们不能只依赖 CSP 级别 2(哈希/随机数),我们现在只能使用级别 1。 是否有经过验证/推荐的方式以符合 CSP 的方式配置客户端应用程序?

到目前为止,我正在考虑将它作为字符串嵌入到某个 DOM 元素中,然后对其进行 JSON.parsing。还有其他(更好的)选择吗?

【问题讨论】:

    标签: javascript configuration content-security-policy


    【解决方案1】:
    • 您可以将所有配置选项移动到 data-* 属性中,然后在脚本中读取它们。
    • 如果您担心随机数的兼容性,您可能会发现this article 很有趣。

    【讨论】:

      猜你喜欢
      • 2018-08-03
      • 2018-11-23
      • 2021-11-06
      • 2021-03-09
      • 2020-02-12
      • 2021-04-01
      • 2019-02-20
      • 1970-01-01
      • 2021-05-28
      相关资源
      最近更新 更多