CSP: sandbox
HTTP の Content-Security-Policy
(CSP) の sandbox
ディレクティブは、 <iframe>
の sandbox
属性と同様に、要求されたリソースに対してサンドボックスを有効にします。これは、ポップアップの防止、プラグインやスクリプトの実行の防止、同一オリジンポリシーの強制などを含むページ操作の制限を適用します。
CSP バージョン | 1.1 / 2 |
---|---|
ディレクティブ種別 | 文書ディレクティブ |
このディレクティブは <meta> 要素や Content-Security-policy-Report-Only ヘッダーフィールドでは対応していません。 |
構文
Content-Security-Policy: sandbox; Content-Security-Policy: sandbox <value>;
<value>
は省略可能で、以下の値の内の一つです。
allow-downloads
-
ユーザーがボタンやリンクをクリックした後のダウンロードを可能にします。
allow-downloads-without-user-activation
Experimental-
ユーザーによる指示のないダウンロードを許可します。
allow-forms
-
埋め込み閲覧コンテキストが、フォームを送信することを許可します。このキーワードが使用されなかった場合、この操作は許可されません。
allow-modals
-
埋め込み閲覧コンテキストが、モーダルウィンドウを開くことを許可します。
allow-orientation-lock
-
埋め込み閲覧コンテキストが、画面の向きをロックする機能を無効化することを許可します。
allow-pointer-lock
-
埋め込み閲覧コンテキストが、ポインターロック API を使用することを許可します。
allow-popups
-
ポップアップ (
window.open
,target="_blank"
,showModalDialog
などによるもの) を許可します。このキーワードが使用されなかった場合、この機能は暗黙に失敗します。 allow-popups-to-escape-sandbox
-
サンドボックス化された文書が、サンドボックスフラグを強制することなく新しいウィンドウを開くことを許可します。これによって、例えば、サードパーティの広告が安全にサンドボックス化される一方、ランディングページには同じ制限が強制されなくなります。
allow-presentation
-
埋め込みを行った者が、 iframe がプレゼンテーションセッションを開始できるかどうかを制御できるようになります。
allow-same-origin
-
コンテンツが通常のオリジンからのものとして扱われることを許可します。このキーワードが使用されなかった場合は、埋め込まれたコンテンツは独自のオリジンからのものとして扱われます。
allow-scripts
-
埋め込み閲覧コンテキストがスクリプトを実行することを許可します (ポップアップウィンドウの生成を除く)。このキーワードが使用されなかった場合は、この操作は許可されません。
allow-storage-access-by-user-activation
Experimental-
リソースが親のストレージ機能に Storage Access API でアクセスを要求できるようにします。
-
埋め込み閲覧コンテキストが、最上位の閲覧コンテキストを移動させる (読み込ませる) ことを許可します。このキーワードが使用されなかった場合、この操作は許可されません。
-
ユーザーの指示で開始された場合に限り、リソースが最上位の閲覧コンテキストを移動させます。
-
非フェッチスキームへのナビゲーションを外部ソフトウェアに引き渡せるようにします。
例
Content-Security-Policy: sandbox allow-scripts;
仕様書
Specification |
---|
Content Security Policy Level 3 # directive-sandbox |
ブラウザーの互換性
BCD tables only load in the browser