--- title: 'CSP: connect-src' slug: Web/HTTP/Headers/Content-Security-Policy/connect-src tags: - CSP - Content-Security-Policy - Directive - HTTP - Reference - Security - connect-src - source - セキュリティ - ディレクティブ translation_of: Web/HTTP/Headers/Content-Security-Policy/connect-src ---
{{HTTPSidebar}}

HTTP の {{HTTPHeader("Content-Security-Policy")}} (CSP) の connect-src ディレクティブは、スクリプトインターフェイスを使用して読み込むことができる URL を制限します。以下の API が制限の対象となります。

注: connect-src 'self' はすべてのブラウザーで websocket スキーマを解決するわけではありません、詳細はこちら: https://github.com/w3c/webappsec-csp/issues/7

CSP バージョン 1
ディレクティブ種別 {{Glossary("Fetch directive", "フェッチディレクティブ")}}
{{CSP("default-src")}} による代替 あり。このディレクティブがない場合、ユーザーエージェントは default-src ディレクティブを探します。

構文

connect-src ポリシーには、1 つ以上のソースが許可されています。

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

ソース

{{page("/ja/docs/Web/HTTP/Headers/Content-Security-Policy/default-src", "common_sources")}}

違反の場合

以下の CSP ヘッダーを指定した場合、

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

以下のコネクションはブロックされ、読み込まれません。

<a ping="https://not-example.com">

<script>
  var xhr = new XMLHttpRequest();
  xhr.open('GET', 'https://not-example.com/');
  xhr.send();

  var ws = new WebSocket("https://not-example.com/");

  var es = new EventSource("https://not-example.com/");

  navigator.sendBeacon("https://not-example.com/", { ... });
</script>

仕様書

仕様書 状態 備考
{{specName("CSP 3.0", "#directive-connect-src", "connect-src")}} {{Spec2('CSP 3.0')}} 変更なし
{{specName("CSP 1.1", "#directive-connect-src", "connect-src")}} {{Spec2('CSP 1.1')}} 初回定義

ブラウザーの互換性

{{Compat("http.headers.csp.Content-Security-Policy.connect-src")}}

互換性のメモ

関連情報