2017-02-14 9 views
0

ロードする前に、Webアプリケーション(JSパーツ)をサーバーで構成する必要があります。 今それは次のように行われます。インラインJS構成オブジェクトの作成CSP準拠(CSPレベル1)

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

Configがリクエスト固有であり、HTML応答が構築されたときに、サーバーによってインライン化されます。 正常に動作しますが、unsafe-inlineコンテンツセキュリティポリシールールに違反しています。

残念ながら、私たちはCSPレベル2(ハッシュ/ノンス)だけに頼ることはできません。今はレベル1に固執しています。 クライアントアプリケーションをCSPに準拠した方法で設定することは、実績のある/推奨された方法はありますか?

これまでのところ、DOM要素に文字列として埋め込み、それをJSON.parsingとして埋め込むことを考えています。他の(より良い)オプションはありますか?

答えて

1
  • すべての設定オプションをdata- *属性に移動してから、スクリプトで読み込むことができます。
  • ナンスの互換性が気になる場合は、this articleが面白いかもしれません。
+0

この記事へのリンクありがとうございます、それはかなり良いです! – vmg

関連する問題