CSP: worker-src

HTTP の Content-Security-Policy (CSP) worker-src ディレクティブは、 Worker, SharedWorker, ServiceWorker スクリプトの有効なソースを指定します。

CSP バージョン 3
ディレクティブ種別 フェッチディレクティブ
フォールバック

このディレクティブがない場合、ユーザーエージェントはワーカーの実行の管理のために、最初に child-src (en-US) ディレクティブ、次に script-src ディレクティブ、最後に default-src ディレクティブを探します。

Chrome 59 以降は child-src (en-US) ディレクティブを飛ばします。

Edge 17 は script-src ディレクティブを飛ばします (bug)。

構文

worker-src ポリシーには1つ以上のソースを指定することができます。

Content-Security-Policy: worker-src <source>;
Content-Security-Policy: worker-src <source> <source>;

ソース

<source> can be any one of the values listed in CSP Source Values.

Note that this same set of values can be used in all fetch directives (and a number of other directives).

違反の場合

この CSP ヘッダーが与えられている時、

Content-Security-Policy: worker-src https://example.com/

Worker, SharedWorker, ServiceWorker はブロックされ、読み込まれません。

<script>
  var blockedWorker = new Worker("data:application/javascript,...");
  blockedWorker = new SharedWorker("https://not-example.com/");
  navigator.serviceWorker.register('https://not-example.com/sw.js');
</script>

仕様書

仕様書 状態 備考
Content Security Policy Level 3
worker-src の定義
草案 初回定義。

ブラウザーの対応

No compatibility data found for http.headers.csp.worker-src.
Check for problems with this page or contribute missing data to mdn/browser-compat-data.

関連情報