- 1 回だけのアクセス許可: Android 10 で、細かい位置情報のアクセス許可を導入しました。これにより、ユーザーはアプリが使用中(フォアグラウンド)の場合にのみ、位置情報への限定的なアクセスを許可できます。
新しいランタイム アクセス許可オプションを提示されたとき、ユーザーの 50% 以上がフォアグラウンドのみの位置情報を選択しました。この結果から、ユーザーはアクセス許可の細かい制御を望んでいたことがわかりました。そこで Android 11 に1 回だけのアクセス許可を導入しました。これにより、アプリが端末のマイクやカメラ、位置情報に 1 回だけアクセスすることを許可できるようになります。
アプリのデベロッパーは、ワンタイム アクセス許可に対応するために何かを変更する必要はありません。アプリは、次回使われたときに再度アクセス許可をリクエストできます。新しい変更点を組み込み、プライバシーを尊重するアプリを構築する方法については、こちらの動画をご覧ください。
- バックグラウンド位置情報: Android 10 では、アプリがバックグラウンド位置情報を定期的に利用している場合、ユーザーがこの機密データの利用方法を把握できるように、リマインダーを追加しました。このリマインダーが表示されたユーザーの 75% 以上は、位置情報のアクセス許可をダウングレードまたは拒否しました。さらに、広範なリサーチの結果、バックグラウンドで位置情報へのアクセスを要求するアプリには、正当なユースケースはとても少ないことがわかりました。
Android 11 のバックグラウンド位置情報は、ユーザーが実行時に手っ取り早く付与できるアクセス許可ではなくなり、さらに慎重なアクションを要するものとなっています。バックグラウンド位置情報を必要とするアプリでは、システムはまずアプリがフォアグラウンド位置情報を要求することを確認します。その後、アプリは個別のアクセス許可リクエストによってアクセス範囲を広げることで、バックグラウンド位置情報を利用できるようにします。この操作では、アクセス許可を付与するために [Settings] が開きます。
不正利用を防ぐため、アプリがバックグラウンドで位置情報にアクセスする場合は承認を得なければならなくなるようポリシーの変更を行うと、2 月にお知らせしました。しかし、ポリシーを遵守するために相当な作業が必要になるデベロッパーの方がいらっしゃることをふまえ、2021 年まで既存アプリへのポリシーの強制を行わないこととしました。コードでバックグラウンド位置情報を利用できるケースについては、こちらの動画をご覧ください。
- アクセス許可の自動リセット: ほとんどのユーザーは、端末に 60 以上のアプリをダウンロードしてインストールしていますが、定期的に使うのはそのうちわずか 3 分の 1 程度です。Android 11 をターゲットにしたアプリでは、ユーザーが長期間アプリを使わなかった場合、システムがユーザーがアプリに付与した機密情報に関わる権限を自動的にリセットし、ユーザーに通知します。アプリは、次に使われたときに再度アクセス許可をリクエストできます。アクセス許可を維持する正当なニーズがあるアプリでは、[Settings] からこの機能を OFF にするようにユーザーに案内することができます。
- データアクセス監査 API: Android では、機密データへのアクセスを制限することをデベロッパーに推奨しています。この点は、アクセス許可が与えられていたとしても変わりません。Android 11 のデベロッパーは、保護された個人データをアプリがどのように利用しているかを透過的に把握できる新しい API にアクセスできます。この API を使うと、アプリによるプライベートなユーザーデータへのアクセス記録をアプリからトラッキングできます。
- 対象範囲別ストレージ: Android 10 で対象範囲別ストレージを導入し、外部ストレージをフィルタしたビューを提供できるようにしました。アプリは、これを通してアプリ固有のファイルやメディア コレクションにアクセスできます。この変更により、さまざまな方法で共有ストレージへの幅広いアクセスを制限し、ユーザーのプライバシーを保護できるようになりました。たとえば、ストレージのアクセス許可を変更して写真や動画、音楽への読み込みアクセスのみを許可する、アプリのストレージ属性を改善する、などが想定されます。
Android 10 以降も、デベロッパーの皆さんに対象範囲別ストレージを採用していただけるよう、フィードバックや多くの改善を取り入れてきました。たとえば、アクセス許可 UI のアップデートによるユーザー エクスペリエンスの改善、既存ライブラリとの互換性を向上させるためのファイルパスによる直接メディア アクセス、メディアの変更を可能にする API のアップデート、ファイルに幅広くアクセスする必要があるユースケースでの Manage External Storage アクセス許可、外部アプリ ディレクトリの保護などです。Android 11 では、API レベル 30 をターゲットとするすべてのアプリで、対象範囲別ストレージが必須となります。詳細については、こちらの動画またはデベロッパー ドキュメントをご覧ください。
- Google Play システム アップデート: Google Play システム アップデートは、Project Mainline の一環として Android 10 で導入されました。主なメリットとして、Android 内のプラットフォーム サブシステムのモジュール性と粒度の向上があげられます。そのため、スマートフォン メーカーの完全な OTA アップデートを行わなくても、コア OS コンポーネントをアップデートできます。
今年は Project Mainline のおかげで、メディア デコード サブシステムの重大な脆弱性をすばやく修正することができました。Android 11 には新しいモジュールを追加して、既存モジュールのセキュリティ特性も維持しています。たとえば、暗号プリミティブを提供する Conscrypt は、Android 11 の FIPS 検証も維持しています。
- BiometricPrompt API: BiometricPrompt API を使うと、アプリがロック解除や機密部分へのアクセスを行う際に必要とするバイオメトリック認証強度を指定できます。下位互換性を持たせるために、これを Jetpack Biometric ライブラリに追加する予定です。この件については、作業の進捗に応じて最新情報をお知らせします。
- Identity Credential API: この API によって、モバイル運転免許証、国民識別番号、デジタル ID などの新しいユースケースが実現できます。この機能は Google のセキュリティ チームが開発しており、セキュリティ ハードウェアを使ってデータへのアクセスを保護および制御し、情報を安全に格納します。この方法では、従来の物理的な文書よりもユーザーのプライバシーが強化されます。Android 11 でデジタルファーストな身分証明を提供できるように、さまざまな政府機関や業界パートナーと連携して作業を進めています。
Twitter や
Youtube で Android Developers をフォローし、この分野に役立つコンテンツや資料を見逃さないようにしましょう。
関連情報