script-src (csp)
Webページ上で実行される JavaScript の読み込み元と実行方法を制御する
主な目的は XSS対策
script-src-elem (csp)とscript-src-attr (csp)を同時に指定する
次のようなスクリプトを許可/拒否できる
外部 JS ファイル(CDN など)
インライン <script>...</script>
eval() などの動的コード実行
ES Modules / dynamic import
基本構文
code:http
Content-Security-Policy: script-src 'self';
よく使う値
自分のドメインだけ許可
code:http
script-src 'self';
CDN も許可
code:http
script-src 'self' https://cdn.example.com;
インラインスクリプトを許可(非推奨)
code:http
script-src 'self' 'unsafe-inline';
XSS 耐性が大きく下がるので基本避ける
nonce属性を使うことが推奨されている
毎回ランダムな値を発行し、それを script タグと CSP の両方に書く方式
nonce が一致したスクリプトだけ実行される
code:http
Content-Security-Policy: script-src 'self' 'nonce-abc123';
code:html
<script nonce="abc123">
console.log("ok");
</script>
https://developer.mozilla.org/ja/docs/Web/HTTP/Headers/Content-Security-Policy/script-src
/mrsekut-book-4908686106/085