CSP: sandbox

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since August 2016.

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

CSP バージョン 1.1 / 2
ディレクティブ種別 文書ディレクティブ
このディレクティブは <meta> 要素や Content-Security-policy-Report-Only ヘッダーフィールドでは対応していません。

構文

http
Content-Security-Policy: sandbox;
Content-Security-Policy: sandbox <value>;

<value> は省略可能で、以下の値の内の一つです。

allow-downloads

download 属性がついた <a> または <area> 要素における、ファイルのダウンロードのための操作を通してファイルのダウンロードを可能にします。これは、ユーザーがリンクをクリックしたか、JS コードがユーザーとの対話なしに開始したかに関係なく、動作します。

allow-downloads-without-user-activation Experimental

ユーザーによる指示のないダウンロードを許可します。

allow-forms

ページがフォームを送信することを許可します。このキーワードを使用しない場合、フォームは通常通り表示されますが、フォームを送信しても入力の検証、ウェブサーバへのデータ送信、ダイアログの終了は行われません。

allow-modals

ページが Window.alert()Window.confirm()Window.print()Window.prompt() によってモーダルウィンドウを開けるようにします。一方、 <dialog> を開くことはこのキーワードと無関係に許可されます。また、ページが BeforeUnloadEvent イベントを受信することもできるようにします。

allow-orientation-lock

リソースが、画面の向きをロックできるようにします。

allow-pointer-lock

このページが、ポインターロック API を使用することを許可します。

allow-popups

ポップアップ( Window.open()target="_blank"Window.showModalDialog() などによるもの)を許可します。このキーワードが使用されなかった場合、この機能は暗黙に失敗します。

allow-popups-to-escape-sandbox

サンドボックス化された文書が、サンドボックスフラグを強制することなく新しいウィンドウを開くことを許可します。これによって、例えば、サードパーティの広告が安全にサンドボックス化される一方、ランディングページには同じ制限が強制されなくなります。

allow-presentation

埋め込みを行った者が、 iframe がプレゼンテーションセッションを開始できるかどうかを制御できるようになります。

allow-same-origin

このトークンが使用されなかった場合、リソースは同一オリジンポリシーに常に失敗する特別なオリジンからのものとして扱われます(潜在的にデータストレージやクッキーへのアクセスや、一部の JavaScript API の使用を阻止することが可能です)。

allow-scripts

このページががスクリプトを実行することを許可します(ポップアップウィンドウの生成を除く)。このキーワードが使用されなかった場合は、この操作は許可されません。

allow-storage-access-by-user-activation Experimental

リソースが親のストレージ機能にストレージアクセス API でアクセスを要求できるようにします。

allow-top-navigation

リソースが、(_top という名前の)最上位の閲覧コンテキストを移動させることを許可します。

allow-top-navigation-by-user-activation

ユーザーの指示で開始された場合に限り、リソースが最上位の閲覧コンテキストを移動させます。

allow-top-navigation-to-custom-protocols

ブラウザーに組み込まれている、またはウェブサイトによって登録された http 以外のプロトコルへのナビゲーションを可能にします。この機能は allow-popups または allow-top-navigation キーワードでも有効になる。

http
Content-Security-Policy: sandbox allow-scripts;

仕様書

Specification
Content Security Policy Level 3
# directive-sandbox

ブラウザーの互換性

BCD tables only load in the browser

関連情報