sandbox属性 * - セキュリティーに関する設定 (新)

■ 概要

項  目説  明
記述形式 sandbox="次の欄の値"   
値 の形式 allow-formsallow-pointer-lockallow-popups,   
allow-same-originallow-scriptsallow-top-navigation    
対応ブラウザー C?+ / e?+ / N?+ / Fx?+ / Op?+ / Ch?+ / Sa?+
適用可能な要素
(種  類)
<iframe>    
固有属性)   
継  承 しない

■ 解説

sandbox属性 は,

iframe 要素 で,
組み込まれるコンテンツをサンドボックス化して,セキュリティーを強化 するために使います。

この属性を キーワードなしで指定 すると,

  1. フォームからのデータ送信は禁止されます。
  2. ポインタ・ロック API の実行は禁止されます。
  3. ポップアップ・ウィンドウの表示は禁止されます。
  4. 親のドキュメントとは別の 固有生成元 (unique origin) と見なし,親ドキュメントで利用できている機能は利用不可になります。
  5. スクリプトの実行は禁止されます。
  6. 最上位のブラウジング・コンテキストへのナビゲーションは禁止されます。

ただし,以下の6つの 値を指定することで,部分的に制限を解除 することができます。 また,値を指定する場合,半角スペースで区切って2つ以上の値を指定することも可能です。


説  明
allow-forms フォームからのデータ送信を許可します。
allow-pointer-lock ポインタ・ロック API の実行を許可します。
allow-popups ポップアップ・ウィンドウの表示を許可します。
allow-same-origin 親のドキュメントと 同一生成元 (same origin) と見なし,親ドキュメントで利用できる機能は利用可能にします。
allow-scripts スクリプト(ポップアップを除く)の実行を許可します。
allow-top-navigation 最上位のブラウジング・コンテキストへのナビゲーションを許可します。

allow-scriptsallow-same-origin の2つの値を指定すると,sandbox属性無効 となり, この属性の指定がない場合と同様の動作 となります。

この sandbox属性 による指定は,コンテンツがロードされて表示される際に効力を持ちます。 従って,この sandbox属性 の値を変更したり,または,属性全体を削除しても,すでに表示されているページの表示内容には,何の変化もありません。

もし可能であれば,親文書のファイルと, iframe要素 を含むファイルとは,別のサーバーから供給すべきです。 つまり,アタッカーが,iframe要素 を経由しなくても,ユーザーを親文書のコンテンツに直接アクセスするように誘導可能な状況であれば,iframe要素 をサンドボックス化しても,あまり大きな助けにはなりません。 従って,親の HTML コンテンツでのダメージを最小限に抑えるためには,それぞれ別の専用のドメインから供給するべきです。 つまり,異なるドメインにすれば,確実に,iframe要素 を含むファイル中のスクリプトから,サイトを攻撃できないようにすることが可能です。 たとえ,ユーザーがそれらのページに直接アクセスするように偽装が仕掛けられたとしても,sandbox属性 による保護がない場合でもです。

■ 使用例( sandbox属性の利用)

現在準備中です。

■ 備考