Widely available すべての主要ブラウザで対応済み。安心して使用可能。

対応ブラウザ

機能 デスクトップ モバイル
Chrome
Edge
Firefox
Safari
Chrome Android
Safari iOS
61
79
61
HTML 属性
csp
実験的
61
79
61
DOM API

securitypolicyviolation イベントは、コンテンツセキュリティポリシーに違反があった場合に発行されます。

76
79
93
15.4
76
15.4

securitypolicyviolation イベントは、コンテンツセキュリティポリシーに違反したときに発生します。

41
15
63
10
41
10

nonce は HTMLElement インターフェイスのプロパティで、特定の読み取りを続行できるかどうかを決定するためにコンテンツセキュリティポリシーで使用される一度だけの暗号化番号を返します。

61
79
75
15.4
61
15.4

SecurityPolicyViolationEvent インターフェイスは Event から継承し、コンテンツ セキュリティ ポリシー (CSP) が違反された場合に、Element/securitypolicyviolationevent、Document/securitypolicyviolationevent、または WorkerGlobalScope/securitypolicyviolation_event で送信される securitypolicyviolation イベントのイベント オブジェクトを表します。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスの BlockedURI 読み取り専用プロパティは、コンテンツ セキュリティ ポリシー (CSP) に違反するためにブロックされたリソースの URI を表す文字列です。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスの columnNumber 読み取り専用プロパティは、コンテンツ セキュリティ ポリシー (CSP) 違反が発生したドキュメントまたはワーカー スクリプトのソース ファイル行内の文字位置です。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスの性質読み取り専用プロパティは、違反したコンテンツ セキュリティ ポリシー (CSP) がユーザー エージェントによってどのように処理されるように構成されているかを示します。

56
79
63
15
56
15

SecurityPolicyViolationEvent インターフェイスの documentURI 読み取り専用プロパティは、コンテンツ セキュリティ ポリシー (CSP) 違反が発生したドキュメントまたはワーカーの URI を表す文字列です。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスの activeDirective 読み取り専用プロパティは、違反されたコンテンツ セキュリティ ポリシー (CSP) ディレクティブを表す文字列です。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスの lineNumber 読み取り専用プロパティは、コンテンツ セキュリティ ポリシー (CSP) 違反が発生したドキュメントまたはワーカー スクリプト内の行番号です。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスのoriginalPolicy 読み取り専用プロパティは、適用によって違反が明らかになったコンテンツ セキュリティ ポリシー (CSP) を含む文字列です。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスのリファラー読み取り専用プロパティは、コンテンツ セキュリティ ポリシー (CSP) に違反したリソースのリファラーを表す文字列です。 これは URL または null になります。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスのサンプル読み取り専用プロパティは、コンテンツ セキュリティ ポリシー (CSP) 違反の原因となったリソースのサンプルを表す文字列です。

59
79
63
15
59
15

SecurityPolicyViolationEvent() コンストラクターは、新しい SecurityPolicyViolationEvent オブジェクトを作成します。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスの sourceFile 読み取り専用プロパティは、コンテンツ セキュリティ ポリシー (CSP) 違反が発生したスクリプトの URL を表す文字列です。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスの statusCode 読み取り専用プロパティは、コンテンツ セキュリティ ポリシー (CSP) 違反が発生したウィンドウまたはワーカーの HTTP ステータス コードを表す数値です。

41
15
63
10
41
10

SecurityPolicyViolationEvent インターフェイスのoracledDirective 読み取り専用プロパティは、違反されたコンテンツ セキュリティ ポリシー (CSP) ディレクティブを表す文字列です。

41
15
63
10
41
10
worker_support

労働者で利用可能

56
15
63
56

securitypolicyviolation イベントは、ウェブワーカーの中でコンテンツセキュリティポリシーの違反が発生したときに発行されます。

41
15
63
10
41
10
その他
html.elements.meta.http-equiv.content-security-policy

http-equiv="コンテンツセキュリティポリシー"

≤59
12
1
≤10.1
≤59
≤10.3

nonce グローバル属性は、 これは暗号化ノンス ("number used once") を定義するコンテンツ属性で、コンテンツセキュリティポリシーが指定された要素に対して読み取りを許可するかどうかを決定するために使用することができます。

61
79
75
15.5
61
15.5

HTTP の Content-Security-Policy レスポンスヘッダーは、ウェブサイト管理者が、あるページにユーザーエージェントが読み込みを許可されたリソースを管理できるようにします。いくつかの例外を除いて、大半のポリシーにはサーバーオリジンとスクリプトエンドポイントの指定を含んでいます。これはcross-site scripting攻撃を防ぐのに役立ちます。

25
14
23
7
25
7

HTTP の Content-Security-Policy-Report-Only response headerは、セキュリティポリシーを強制することなく、コンテンツセキュリティポリシー (CSP) 違反とその効果を監視するのに役立ちます。 このヘッダーを使用することで、特定の Content-Security-Policy が適用・強制される前に、違反を検査または修復することができます。

25
14
23
7
25
7

HTTP の Content-Security-Policy の base-uri ディレクティブは、文書の base 要素で使用することができる URL を制限します。この値が存在しない場合は、任意の URI が許可されます。このディレクティブが存在しない場合、ユーザーエージェントは base 要素の値を使用します。

40
79
35
10
40
9.3

HTTP の Content-Security-Policy (CSP) における child-src ディレクティブは、ウェブワーカーと frame や iframe などの要素を使用して読み込んだ、埋め込まれた閲覧コンテキストに対して有効なソースを定義しています。ワーカーでは、準拠しないリクエストは、ユーザーエージェントによって致命的なネットワークエラーとして扱われます。

40
15
45
10
40
9.3

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

25
14
50
7
25
7

HTTP の Content-Security-Policy (CSP) における default-src ディレクティブは、他の CSP のfetch directiveの代替として提供します。以下のディレクティブがいずれかが存在しないと、ユーザーエージェントは default-src ディレクティブを探して、この値を使用します。

25
14
23
7
25
7

HTTP の Content-Security-Policy (CSP) における font-src ディレクティブは、 @font-face によって読み込まれるフォントの有効なソースを指定します。

25
14
23
7
25
7

HTTP の Content-Security-Policy (CSP) における form-action ディレクティブは、指定のコンテキストからフォームの送信先として使用される URL を制限します。

40
15
36
10
40
9.3

HTTP の Content-Security-Policy (CSP) である frame-ancestors ディレクティブは frame、iframe、object 、embed などを使ってページを埋め込むことのできる親を指定します。

40
15
58
10
40
9.3

HTTP の Content-Security-Policy (CSP) における frame-src ディレクティブは、 frame や iframe のような要素を使用して埋め込まれた閲覧コンテキストの読み込みに有効なソースを指定します。

25
14
23
7
25
7

HTTP の Content-Security-Policy における img-src ディレクティブは、画像やファビコンの有効なソースを指定します。

25
14
23
7
25
7

HTTP の Content-Security-Policy: manifest-src ディレクティブは、どのマニフェストがリソースに適用されるかを指定します。

40
79
41
11
40
11

HTTP の Content-Security-Policy (CSP) における media-src ディレクティブは、 audio および video 要素を使用して読み込むメディアの有効なソースを指定します。

25
14
23
7
25
7
http.headers.Content-Security-Policy.meta-element-support

<meta>`要素のサポート

25
≤18
45
7
25
7

HTTP の Content-Security-Policy の object-src ディレクティブは、 object や embed 要素の有効なソースを指定します。

25
14
23
7
25
7
http.headers.Content-Security-Policy.report-sample

ソース値

59
79
63
15.4
59
15.4

Content-Security-Policy の report-to ディレクティブは、 CSP 違反の報告に使用するエンドポイントの名前を示します。

70
79
149
16.4
70
16.4

HTTP の Content-Security-Policy (CSP) における sandbox ディレクティブは、 iframe の sandbox 属性と同様に、要求されたリソースに対してサンドボックスを有効にします。これは、ポップアップの防止、プラグインやスクリプトの実行の防止、同一オリジンポリシーの強制などを含むページ操作の制限を適用します。

25
14
50
7
25
7

HTTP の Content-Security-Policy (CSP) における script-src ディレクティブは、 JavaScript の情報なソースを指定します。これは script 要素の中に直接読み込まれる URL だけでなく、インラインのスクリプトイベントハンドラー (onclick) やスクリプト実行のトリガーとなりうる XSLT スタイルシートのようなものも含まれます。

25
14
23
7
25
7

HTTP の Content-Security-Policy (CSP) における script-src-attr ディレクティブは、JavaScript でインラインイベントハンドラーを指定する際に、有効なソースを指定します。

75
79
108
15.4
75
15.4

HTTP の Content-Security-Policy (CSP) における script-src-elem ディレクティブは、 JavaScript の script 要素の有効なソースを指定します。

75
79
108
15.4
75
15.4
http.headers.Content-Security-Policy.script-src.external_scripts

ハッシュ付き外部スクリプト

59
79
116
15.6
59
15.6
http.headers.Content-Security-Policy.script-src.wasm-unsafe-eval

WebAssemblyの実行を許可するソース式

97
97
102
16
97
16
http.headers.Content-Security-Policy.strict-dynamic

strict-dynamic`ソース値

52
79
52
15.4
52
15.4

HTTP の Content-Security-Policy (CSP) における style-src ディレクティブは、スタイルシートの有効なソースを指定します。

25
14
23
7
25
7

HTTP の Content-Security-Policy (CSP) における style-src-attr ディレクティブは、個々の DOM 要素に適用されるインラインスタイルのための有効なソースを指定します。

75
79
108
15.4
75
15.4

HTTP の Content-Security-Policy (CSP) における style-src-elem ディレクティブは、スタイルシート style 要素と rel="stylesheet" を持つ link 要素の有効なソースを指定します。

75
79
108
26.2
75
26.2
http.headers.Content-Security-Policy.unsafe-hashes

unsafe-hashes`ソース値

69
79
109
15.4
69
15.4
http.headers.Content-Security-Policy.worker_support

労働者支援

56
79
50
10
56
10

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

59
79
58
15.5
59
15.5
1+対応 (バージョン) 未対応 注釈あり サブ機能の解説は MDN Web Docs (CC BY-SA 2.5)
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (15.4)
実装メモ
  • このプロパティは有用な要素に対してのみ定義される:その他の要素では未定義です。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (15.4)
実装メモ
  • このプロパティは有用な要素に対してのみ定義される:その他の要素では未定義です。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (75)
実装メモ
  • Firefox はコンテンツ属性による `nonce` の流出を防止しない。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (15.5)
実装メモ
  • Safariはコンテンツ属性による`nonce`の流出を防いでいない。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (15.5)
実装メモ
  • iOSのSafariは、コンテンツ属性による`nonce`の流出を防いでいない。
注釈 1件
対応条件
  • 以前は別名で対応していました: X-Webkit-CSP (14)
注釈 1件
対応条件
  • 以前は別名で対応していました: X-Content-Security-Policy (4)
注釈 1件
対応条件
  • 以前は別名で対応していました: X-Webkit-CSP (6)
注釈 1件
対応条件
  • 以前は別名で対応していました: X-Webkit-CSP (18)
注釈 1件
対応条件
  • 以前は別名で対応していました: X-Webkit-CSP (6)
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (50)
実装メモ
  • Firefox 50 以前では、<a> 要素の ping 属性は connect-src の対象外でした。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (58)
実装メモ
  • Firefox 58 より前のバージョンでは、`Content-Security-Policy-Report-Only` では `frame-ancestors` は無視されます。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (26.2)
実装メモ
  • style-src-elem` ディレクティブは解析されたが、何の効果もなかった。バグ 276931 を参照のこと。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (26.2)
実装メモ
  • style-src-elem` ディレクティブは解析されたが、何の効果もなかった。バグ 276931 を参照のこと。
注釈 1件
実装メモ
  • Chrome 59 以降では、非推奨の `child-src` ディレクティブをスキップします。
注釈 1件
実装メモ
  • Chrome Android 59 以降は、非推奨の `child-src` ディレクティブをスキップします。

基本構文

HTML
<meta http-equiv="Content-Security-Policy"
  content="default-src 'self'; script-src 'self' https://cdn.example.com;
  style-src 'self' 'unsafe-inline'; img-src *;">

実務での使いどころ

  • Content Security Policy (CSP) の活用

    Experimental: これは実験的な機能です。

注意点

  • 古いブラウザでは対応していない場合がある。

アクセシビリティ

  • スクリーンリーダーでの読み上げを確認すること。