Firebase Header CSP 规则

Firebase Header CSP Rules

所以我知道我可以在我网站的 <meta> 中添加 CSP。但是,我读到最好将这些添加到您的 HTTP header。我查看了 Firebase 文档并查看了以下内容:

We currently support the following headers as a key: ...Content-Security-Policy.

但是,我找不到任何关于如何在文件中设置规则格式的示例。我可能想多了,但是我如何向我的 Firebase headers 添加规则来涵盖这个:

Refused to load the script 'data:application/javascript;base64,dmFyIHVyY2hpblRyYWNrZXI9ZnVuY3Rpb24oKXt9…RUcmFja2VyQnlOYW1lOiBmdW5jdGlvbigpe190cmFja0V2ZW50OiBmdW5jdGlvbigpe319fTs=' because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-inline' https://f.vimeocdn.com https://ssl.google-analytics.com https://js-agent.newrelic.com https://bam.nr-data.net https://f.vimeocdn.com".

Firebase 托管不会强制设置 header 的格式,因此要获得您想要的确切结果,您只需了解如何设置 header 的格式。 This guide 看起来很全面,可以帮助您入门。

要将 CSP header 实际应用到您的 Firebase 托管站点,您需要更改 firebase.json。例如:

{
  "hosting": {
    "headers": [{
      "source":"**",
      "headers": [
        {"key":"Content-Security-Policy","value":"script-src 'self'"}
      ]
    }]
  }
}

有关详细信息,请参阅 the Firebase Hosting docs