Caja project とは

Caja(KAH-hahと発音)は、Googleのプロジェクトであり、オブジェクト機能の原則に基づく「仮想iframe」用のJavaScript実装です。 Cajaは、JavaScript(技術的にはECMAScript 5厳密モードコード)、HTML、およびCSS入力を受け取り、HTMLとCSSの安全なサブセットと、空き変数のない単一のJavaScript関数に書き換えます。つまり、そのような関数がオブジェクトを変更できる唯一の方法は、ホストページによってオブジェクトへの参照が与えられている場合です。ホスト・ページは、DOMオブジェクトを直接参照するのではなく、通常、HTML、プロキシURLをサニタイズし、ページのリダイレクトを防ぐラッパーを参照します。これにより、Cajaは特定のフィッシング攻撃を防止し、クロスサイトスクリプティング攻撃を防ぎ、マルウェアのダウンロードを防止します。また、すべての書き換えられたプログラムが同じフレームで実行されるため、ホストページでは、1つのプログラムがオブジェクト参照を別のプログラムにエクスポートできるようになります。フレーム間通信は単にメソッド呼び出しである。
「caja」という言葉はスペイン語で「箱」または「安全」(銀行のように)です.CajaにはJavaScriptプログラムと機能ベースのJavaScriptが安全に含まれています。
Cajaは現在GoogleのGoogleサイトとGoogle Apps Script製品でGoogleが使用しています。 2008年のMySpaceとYahoo!アリアンツは両方ともCajaの非常に初期のバージョンを配備したが、後でそれを放棄した。