Android には当初から、ユーザーが自分のデバイス上でアプリが実行できる内容を制御できるようにする権限システムがありました。 アプリケーションがインストールされると、ユーザーはアプリに必要な権限に同意するよう求められます。 Android オペレーティング システムでは、アプリが要求していないアクセス許可を使用できないようにしており、アプリをインストールできるかどうかを決定するのはユーザーの責任です。
ユーザーはアプリがアクセスできるデータを確認できたので、最初はこれでうまくいきました。 しかし、残念なことに、開発者は、アクセス許可のプロンプトに注意を払っているユーザーがほとんどいないことに気づきました。 開発者は、おそらくユーザー エクスペリエンスを向上させるため、または収益化するために、より多くの権限を使用することが一般的になっています。 アプリ。
- 実行中のアプリを取得する
- デバイス上のアカウントを見つける
- 正確な位置情報 (GPS およびネットワークベース)
- おおよその位置 (ネットワークベース)
- USB ストレージの内容を変更または削除する
- 保護されたストレージへのアクセスをテストする
- Wi-Fi接続を表示する
- 電話のステータスと ID を読み取る
- インターネットからデータを受信する
- 完全なネットワークアクセス
- ネットワーク接続を表示する
- デバイスがスリープ状態になるのを防ぐ
これはすべて、ファンタジー フットボールをプレイできるゲームのためですか? この時点で、読者にいくつかの質問をしなければなりません (以下のコメントでお気軽に議論してください): これらの許可の約半分について考えられる正当化はありますか? このアプリは、ユーザーが使用している他のアプリを確認する必要がありますか? それとも、ユーザーが自分のデバイスにどのようなアカウントを持っているかを確認するには? それとも、GPS を使用して世界中の正確な位置にアクセスしますか? それとも、自分の IMEI 番号や通話中の相手の電話番号を読み取るためですか? これは孤立した事件ではありません。 これは、Play ストアのトップページで私が最初に選択したアプリにすぎません。 別のものを選択して、自分で探してください。 現在、大多数のアプリが過剰な権限と私が主張するものを利用しているという事実のため、 過剰な権限を使用するアプリケーションを単に使用しないだけでは不十分だと感じるユーザーが増えています。 これにより、アプリがアクセスできる権限をユーザーが選択するという一般的な要求が生じます。 これにより、以前はアプリの実行に必要な権限を自由に指定できていた開発者ではなく、その携帯電話でアプリを実行しているユーザーに力のバランスが戻ります。 技術コミュニティにとっての明らかな解決策は、アプリが実行できることをより詳細に制御し、アプリが要求するすべての権限を使用できないようにする方法を開発することです。 アクセス許可を取り消す最も一般的な 3 つの方法は、App Ops、Privacy Guard、および XPrivacy です。
アプリ運用
デバイスをより詳細に制御する最初の方法は、「App Ops」として知られる機能を使用することです。 元々はこれでした。
Google によって Android 4.3 で導入されました 隠れた機能として。 KitKat のリリースにより、Google は App Ops へのアクセスをより困難にしましたが、引き続きアクセスを困難にしました。
機能に新しい改善を導入する. 最終的には Android 4.4.2 で、Google になります。
App Ops へのアクセスを削除しました。 しかし、それはまだです。
root および Xused 変更を使用してアクセス可能 App Ops の主な制限は、Google によって作成されているため、ブロックできるのは Google が許可しているものへのアクセスのみであることです。 特に、App Ops には、アプリケーションがインターネットにアクセスできるかどうかを制御する機能がありません。 また、アプリがサードパーティのアカウントを介してデバイスやユーザーを一意に識別することを防ぐこともできません。 これは、アプリが引き続きデバイス上のすべてのアカウント ID を結び付け、IMEI とアクセスできることを意味します。 適切な権限を持つ他の一意のデバイス識別子。アプリを使用してこれを防ぐことはできません 作戦。 皮肉屋は、Google にはユーザーがアプリのインターネット アクセスをブロックできないようにするという重大な裏の動機があると主張するかもしれません。 結局のところ、Google にはアプリ内広告を宣伝し、Google Analytics のためにユーザーに関する情報を収集するインセンティブがあります。 同様に、Google はユーザーのプロフィールの作成に熟練しており、アカウント名を介してアプリケーションからユーザーの身元をブロックできない理由が説明されます。 固有のデバイス識別子にアクセスする機能は、他のアプリケーションがユーザーの使用状況を追跡できるようにするためにのみ役立ちます (つまり、Google がアプリケーション間でユーザーの使用状況を追跡できるようになります)。このため、 App Ops は何もしないよりははるかに優れていますが (連絡先、メッセージ、位置情報などへのアクセスを制御できます)、アプリケーションを保護するための最適なソリューションではないことは明らかです。 プライバシー。 ブロックできないデータの種類は多数あり、これらはユーザーのデータを追跡および収集する Google の動機に関連している可能性があるようです。 そのため、代替案を検討することをお勧めします。
プライバシーガード
Privacy Guard は、もともと CyanogenMod によって開発された機能で、App Ops 上にシンプルなユーザー インターフェイスを配置し、単一の「オン/オフ」トグルで制御します。 そのため、Privacy Guard はその制限において App Ops と同様の批判にさらされています。 また、Privacy Guard で保護されたアプリケーションの実行中は常に通知を課し、おそらくアプリケーションが動作中であることをユーザーに思い出させます。 ただし、残念ながら、Privacy Guard はユーザーを匿名化したり、アプリがデバイス ID やインターネット アクセスを介してユーザーのセッションを追跡したりすることを防止しようとはしません。 ただし、オン/オフ制御が 1 つなので、初心者にとっては確かに使いやすく、デフォルト設定はかなり優れているはずです。 唯一の欠点は、粒度が低いことです。つまり、連絡先やカレンダーへのアクセスをブロックしたまま、位置情報へのアクセスを必要とするアプリにアクセスを許可することはできません。 それにもかかわらず、ワンクリックのソリューションとしてはうまく機能します。 ただし、ユーザーはカスタム ファームウェアをインストールする必要があるため、ワンクリック アピールの利点が損なわれます。
Xプライバシー
Xプライバシー Android プライバシー保護のスイス アーミー ナイフです。 ここで紹介した他のソリューションと比較して、XPrivacy ははるかにカスタマイズ可能ですが、その結果、はるかに複雑でもあります。 Android の権限に慣れていない場合、XPrivacy から始めるのはおそらく最適ではありません。 これには Xused フレームワークが必要です。つまり、root 化されたデバイスも必要です。 ただし、XPrivacy はほぼすべての ROM で動作します。XPrivacy が代替手段と比べて優れている主な利点は、アプリに課すことができる制限の幅と粒度が非常に広いことです。 アプリがデバイス上の特定のアカウントにのみアクセスして表示できるように制限したり、クリップボードへのアクセスをブロックしたり(アプリがアクセスできないようにしたり)することができます。 コピーされたデータ)、さらに直接および Web ブラウザ経由の両方でインターネットへのアクセスをブロックします(秘密のデータ漏洩を防ぐため)。 デバイス)。 制限したいものがある場合は、XPrivacy でほぼ確実に制限できます。 XPrivacy は非常に強力なツールであるにもかかわらず、学習には長い時間がかかります。 XDA Recognized Developer m66b に関するドキュメントをすべて読むことをお勧めします。
Githubリポジトリ (完全にオープンソースであると言いましたか?)、および彼のスレッド。
XDA フォーラム、 詳細については。 全体として、個人データを完全に制御したい場合は、XPrivacy をチェックすることをお勧めします。 慣れるにはかなりの時間がかかりますが、比類のない選択肢が得られます。 自分が何をしているのかよくわからない場合は、App Ops を使用すると適切に制御できます。 インターネット アクセスや、ユーザーをユーザーとして識別するデータを制御する機能はありませんが、 デバイス。 App Ops と XPrivacy はどちらも、Xused プラグインを介して任意の ROM で利用できます。 Privacy Guard は、ワンクリック ソリューションが必要なだけでカスタム ROM をインストールする必要がある人に適しています。 (現時点では) 在庫での実装が見つからないため、これを達成するのはこの点で制限があります。 ファームウェア。