AppleはmacOSに、ローカルストレージやリムーバブルドライブ上のファイルへのアプリのアクセスを許可するセキュリティ機能を提供しています。設定方法は以下の通りです。
数年前、Apple は、Mac に接続されたローカルボリュームに保存されているファイルやフォルダにアクセスできるアプリを制限する機能を macOS に追加しました。
Finderなどの一部のアプリでは、このアクセスが必要です。ただし、サードパーティ製のアプリの場合は、ファイルへのアクセスを許可するかどうかは任意です。
macOS には、システム設定にアプリによるファイルへのアクセスを許可または拒否するための設定があります。
一部のアプリは、USB サムドライブなどのリムーバブル ボリュームや、Mac の DVD ドライブに挿入された CD/DVD ボリュームにもアクセスできます。
システム設定で、リムーバブルデバイスにアクセスできるアプリを設定することもできます。すべてのアプリがこの機能を提供しているわけではありません。提供している場合、アプリとその設定はシステム設定→プライバシーとセキュリティパネル に表示されます。
アプリはアクセスできるように構築する必要がある
AppleのXcode開発環境を使用してMacアプリをビルドすると、各アプリのバンドルに特定のセキュリティ設定が含まれます。これらの設定は、開発者がXcodeで行った設定に基づいて決定されます。
これらの設定の 1 つは、ファイルとフォルダーへのアクセスを許可するかどうかです。
アプリ開発者がアプリのビルド時にこの設定を組み込んでいる場合、システム設定→プライバシーとセキュリティ→ファイルとフォルダのパネルに表示されます。そうでない場合、アプリはそこに表示されません。
具体的には、これらの設定は、Xcode の 各ビルド ターゲットの「署名と機能」>「アプリ サンドボックス」>「ファイル アクセス」設定で構成されます。
Apple の Xcode のターゲット アプリ サンドボックス設定。
アプリサンドボックス
アプリサンドボックスはmacOSに組み込まれたセキュリティシステムで、デフォルトでファイルシステムやネットワークといったシステムの機密性の高い部分からアプリのアクセスを遮断します。アプリは、アクセスを許可されたシステム領域にのみアクセスできます。
Xcode のこれらの設定には、ダウンロード、画像、音楽などの特定のユーザー フォルダーが含まれますが、ユーザーが選択したファイルの設定もあります。
この設定により、サードパーティ製アプリはmacOS標準のファイル選択シートを使用して、ユーザーがアクセスするファイルを選択できるようになります。開発者は、読み取り専用アクセスを許可するか、読み書きアクセスを許可するかを指定することもできます。
Xcode の「ハードウェア > USB」チェックボックスは、アプリがサムドライブを含む USB デバイスにアクセスできるようにするかどうかを決定します。
アプリのビルド時にこれらの設定がどのように構成されるかによって、ファイルおよびリムーバブル アクセスのシステム設定に表示されるかどうかが決まります。
開発者は、すべてのファイルアクセスを完全に無効にすることもできます。これにより、アプリがどのAPIを呼び出すかに関係なく、システムセキュリティレベルでファイルへのアクセスを拒否できます。カメラ、オーディオ、印刷、Bluetooth用のサンドボックス設定もあります。
このため、たとえば Skype などの VOIP アプリや、コンピューターのマイクへのアクセスを要求する一部のゲーム アプリを初めて実行するときに、macOS の警告が表示されることがあります。
アプリサンドボックス設定は、アプリがMacにどのようなアクセス権限を持つかを制限または許可します。Appleは、マルウェアが起動ディスクの内容全体を悪意のある人物に送信するなどの操作を実行できないようにするために、これらの設定をmacOSに追加しました。
悪意のあるソフトウェアがどのようにしてデータを盗むのかについて詳しくは、以前の記事「macOS がマルウェアからデータを保護する方法」をご覧ください。
App Sandbox やその他のセキュリティ機能を使用すると、Mac アプリをダウンロードして実行した瞬間にすべてのローカル データが取得される心配がなくなります。
Mac App Store で配布されるすべての macOS アプリでは、すべての設定がオフになっている場合でも、ビルド時に Xcode で Sandbox を有効にする必要があります。
アクセス設定の変更
ファイルとフォルダーへのアクセスについては、システム設定アプリの 2 つの場所でこれらの設定を切り替えることができます。
- システム設定->プライバシーとセキュリティ->ファイルとフォルダ
- システム設定->プライバシーとセキュリティ->フルディスクアクセス
フルディスクアクセスの場合、Xcodeのアプリサンドボックスでは設定できません。フルディスクアクセスを有効にすると、特定のフォルダやユーザーが選択したファイルだけでなく、OSレベルで起動ディスク内のすべてのファイルにアプリがアクセスできるようになります。
フル ディスク アクセスは、より一般的で深刻なレベルのセキュリティです。フル ディスク アクセスを変更すると、問題のアプリが Mac の起動ディスクを自由に制御できるようになるため、フル ディスク アクセスは慎重に変更する必要があります。
macOS のシステム設定アプリ内のアプリへのフルディスクアクセス。
リムーバブルドライブの場合、アプリがリムーバブルボリュームへのアクセスを許可するように設定されていると、「ファイルとフォルダー」ペインにそのアプリ用の追加のスイッチが表示されます。すべてのアプリがリムーバブルドライブをサポートしているわけではありません。
上記のユーザーフォルダごとに追加のスイッチが表示される場合があり、場合によってはデスクトップにも表示されます。アプリがフルディスクアクセスを必要とする場合、またはフルディスクアクセスが有効になっている場合は、 「ファイルとフォルダ」ペインでアプリの横にそのタイトルが表示されますが、グレー表示されます。
macOS のシステム設定でリムーバブル アクセスを有効にします。
当然ですが、アプリにフル ディスク アクセスを付与する場合、 [ファイルとフォルダー]ペインで個別の権限スイッチを設定する必要はありません。
システム設定->プライバシーとセキュリティ->フルディスクアクセスでは、フルディスクアクセスを許可するアプリを設定できます。
FinderとDockアプリのフルディスクアクセスをオフにすることは可能です。ただし、どちらもFinderの不可欠な部分であり、Apple製であるため、オフにしない方が良いでしょう。
これらのアプリのアクセスをオフにする必要がある唯一の理由は、Mac をキオスクのように動作させたい場合や、子供によるファイル アクセスを制限したい場合などです。
特にネットワークベースのアプリには、セキュリティリスクが高まるため、フルディスクアクセスを許可すべきではありません。例えば、Webブラウザ経由でダウンロードされた悪意のあるJavaアプレットや拡張機能などが挙げられます。
macOSはGatekeeperとランタイム保護を使用して、オペレーティングシステムのコア部分とそのファイルをサードパーティ製アプリから保護します。これにより、システムの改ざんが防止されます。
Gatekeeper は、アプリが実際に登録された開発者からのものであり、偽物ではないという一定の信頼性も提供します。
Gatekeeperアプリは、Mac App Storeで配布する前にXcodeによるデジタル署名が必要です。改ざんされている場合は、起動時にFinderから通知されます。
Mac App Store では、ダウンロードされた Mac アプリが侵害されていないことを確認するために、公証と暗号化されたデジタルレシート検証も採用しています。
これらのセキュリティ設定はMacのセキュリティを強化し、マルウェアがMacの防御を突破しにくくします。また、プライベートファイルの保護にも役立ちます。
すべてのアプリが最大限のセキュリティで保護されていることを確認するために、これらの設定を確認することをお勧めします。また、Appleプラットフォームセキュリティガイドもご確認ください。