着々と進む「サンドボックス化」

OS Xでいうサンドボックスとは、不正処理の被害からシステムを守るセキュリティモデルであり、ファイルの読み書きなど一定の制限を設けることができる保護環境のこと。その基本的なしくみについては、『新・OS X ハッキング! 第37回 これから必須のセキュリティモデル「サンドボックス』で解説しているので、参考にしてほしい。

サンドボックス化は、Leopard以降、SpotlightやQuickLookなど一部機能に利用されていたが、Lionから一般のアプリケーションにも利用されはじめ、Mountain Lionではさらにその範囲が広げられた。具体的には、メール(Mail.app)や新たに加わった「メモ」、「リマインダー」がサンドボックス化されている。なお、アプリケーションがサンドボックス化されているかどうかは、アクティビティモニタで確認可能だ(表示されていなければメニューバーの[表示]→[表示項目]でチェック)。

アプリケーションがサンドボックス化されているかどうかは、「アクティビティモニタ」で確認できる

表2:標準装備アプリケーションのサンドボックス化状況

OSバージョン サンドボックス化された標準搭載アプリケーション
OS X Lion プレビュー、テキストエディット
OS X Mountain Lion プレビュー、テキストエディット、メール、メモ、リマインダー、ゲームセンター、QuickTime Player、チェス

サンドボックス化されたアプリケーションは、ごく普通に利用するかぎり、保護環境下で動作していることを意識する必要はない。ただし、通常は「~ / Library / Container」以下にアプリケーションごとに設けられた領域(コンテナ)の外へはアクセスできないしくみで、メールならば「~ / Library / Container / com.apple.mail」フォルダ、メモならば「~ / Library / Container / com.apple.Notes」フォルダに隔離される。各コンテナの内部には、「Desktop」や「Downloads」などホームフォルダと同じ構造が用意され、アプリケーションはそこを経由してファイルを読み書きする。

~ / Library / Containerフォルダを表示したところ。サンドボックス化されたアプリケーションがLionのときより増えていることがわかる

コンテナ内部の「Data」フォルダ以下には、「デスクトップ」や「書類」フォルダへのシンボリックリンクが作成されている

このように、一見ではわかりにくいサンドボックス化の状況だが、6月以降Mac App Storeへの新規登録アプリは対応が必須となり(関連記事1関連記事2)、今後はサードパーティー製品を含め"砂場で動く"アプリケーションは確実に増加する。コンテナフォルダの存在くらいは、知っておいて損はないだろう。

■奥の奥までMountain Lion
第1回 - 64ビット対応、スクリプト言語/サーバソフト、OpenCLをチェック
第2回 - iCloudとの統合はどのように実装されているのか
■OS X Mountain Lion関連記事リンク集
"山ライオン"の真の姿に迫る! - OS X Mountain Lion 関連記事まとめ