Google CajaはJava/JavaScript製のオープンソース・ソフトウェア。OpenSocialやFacebookアプリ、iGoogle Widgetなど、サードパーティ製のWebガジェットを実行するプラットフォームが増えている。サービスをプラットフォームとして活用することで新たな価値を提供できる反面、セキュリティへの懸念がある。

ピクチャ 86.png

リダイレクトチェック

 

Webブラウザ上で実行するということはJavaScriptが実行できないといけない。だが何でもできてしまっては困る。セキュリティを担保しつつ、開発者の自由度を確保するというのは非常に難しい。そこで利用を考えたいのがGoogle Cajaだ。

Google Cajaは安全なDHTML埋め込みを実現するためのソフトウェアで、Googleの開発者によって開発されている。安全な埋め込みとはすなわち危険なコードを取り除きつつ、Web上で実行する仕組みだ。例えば表示URLを変更するtop.locationや、ブラウザの表示履歴をチェックする操作、Scriptタグを差し込む、LANスキャン、Cookie操作が挙げられる。

ピクチャ 88.png

Cookieの不正読み込み

 

そうした不正な操作に対して予め対応してから表示することでJavaScriptの実行を安全に行えるようにするのがGoogle Cajaだ。Google自体は既に多数のウィジェットを実行する仕組みを提供しているので、ナレッジが蓄積されていることだろう。Google Cajaはそうしたナレッジをソフトウェアの形式で利用することができる。

 

google-caja - Project Hosting on Google Code

 http://code.google.com/p/google-caja/