Androidプラットフォームでユーザーデータを処理する方法

モバイルアプリケーションの使用の増加に伴い、人々はこれらのアプリケーションがデータを使用する方法にますます注意を払っています。 Androidプラットフォームはユーザーを保護するために設計されたさまざまな権限を使用しているという事実にもかかわらず、アプリケーション開発者はユーザーデータの使用方法に責任を負います。 開発者が接続するコードを理解し、不適切な使用の場合はユーザーの信頼を失う可能性があるため、要求されたアクセス許可を慎重に検討することが重要です。

堅牢で信頼できるエコシステムを構築することは、すべてのAndroid開発者にとって優先事項です。

信頼されるアプリケーションを作成するためのいくつかのポイントを見てみましょう。

1.プライバシー警察契約を使用する

2.要求される許可の数を最小限に抑える

3.情報を収集するときにユーザーに選択肢を与えます

4.不要な情報を収集しない

5.デバイスからユーザー情報を送信しないでください

6. ...ただし、本当に必要な場合は、暗号化を使用して、送信される情報の量を最小限に抑えます。

7.理解できないコードを使用しないでください。

8.特定のユーザーに関するデバイスログや情報を入力しないでください



プライバシー警察契約を使用する

信頼できるアプリケーションは、収集するデータとその理由についてオープンです。 ユーザーは、一般に、このようなアプリケーションから利益を得る場合、そのようなアプリケーションと情報を共有することに同意します。 収集されるデータとその使用方法を示す、シンプルで明確な機密保持契約は、最終的にアプリケーションの信頼につながります



画像



要求された許可の数を最小限に抑える

Androidは、シンプルでわかりやすい許可モデルを提供するという点で、モバイルプラットフォームの中でもユニークです。 Androidプラットフォームのすべてのアプリケーションは、動作に必要な権限を宣言する必要があり、ユーザーはアプリケーションをインストールする前にこれらの権限を提供することに同意する必要があります。 ユーザースロープは、過度のアクセス許可を要求するアプリケーションを信頼しません。



画像



情報を収集するときにユーザーに選択肢を提供する

これはプライバシーパラドックスと呼ばれます [PDF、890K]。 ユーザーは喜んで情報を共有することがよくありますが、このプロセスを制御したいと考えています。 信頼できるアプリケーションにより、ユーザーはデータを制御できます。 たとえば、Androidブラウザーには、ユーザーが共有する情報を決定できるプライバシー設定があります。



画像



不要な情報を収集しないでください

信頼できるアプリケーションは、収集する情報のカテゴリを制限します。 不要な情報を収集すると、特にそれを使用したことがない場合は、疑念が生じます。 疑わしい場合は、収集しないでください。



デバイスからユーザー情報を送信しないでください

ユーザー情報が必要な場合は、デバイス内に残っていることを確認してください。 ユーザーは、自分の個人情報が電話から離れないことを知って、安心します。 ユーザーの利益のためにデータを送信したとしても、電話からデータを送信すると、疑念が生じます。



...ただし、本当に必要な場合は、暗号化を使用し、送信される情報の量を最小限に抑えます

ユーザーデータへのアクセスが単に必要な場合があります。 この場合、アプリケーションは安全であることを確認する必要があります。 機密保持契約により、ユーザーは不必要な驚きを避けることができます。 場合によっては、デバイスからデータを転送する前にユーザーに直接質問することをお勧めします。

まず、収集する情報を最小限に抑えます。 完全な電話番号が本当に必要ですか、それとも地域の接頭辞で十分ですか? ユーザーデータを保護するために、デバイスを離れる前情報の一方向ハッシュを使用できますか?



例:お気に入り

アプリケーションが完全な登録プロセスを経ることなく、各ユーザーのお気に入りリストを作成したいとします。 理論的には、電話番号、デバイスID、またはSIMカードIDの特定の組み合わせをサーバーに送信することでこれを行うことができます。 しかし、なぜプライバシーに疑問を持つ人々を悩ませるのでしょうか? 提示されたオプションからの情報のハッシュコードを送信してみませんか? または、さらに良いことに、ランダムな識別子を作成して携帯電話に保存し、アプリケーションに登録するときにこの一意のキーを使用します。



第二に、暗号化は安全なデータ処理にとって重要です。 電話は、多くの場合、攻撃者が機密情報を盗むことができる信頼できないネットワークで使用されます。 データ転送の暗号化は、ユーザー情報を保護するために重要です。

後者の場合、HTTP経由でサーバーと通信するときは、HTTP GETリクエストで使用されるURLでユーザー情報を送信しない方が良いです。 POSTを使用してメッセージの本文で送信することをお勧めします。 POSTを使用しても、情報が傍受されないことは保証されませんが、情報をURLに配置するとこの可能性が高まります。 さらに、デフォルトでは、ほとんどのWebサーバーは受信したすべてのURLをログに記録します。



理解できないコードを使用しないでください。

Androidはオープンなオペレーティングシステムであるため、ライブラリおよびフレームワークの形式のサードパーティコードに依存することは、非常に一般的な(そして良い)習慣になっています。 ただし、このコードがユーザーデータで正しく機能しない場合、これが問題になります。 使い始める前にコードを確認してください。



特定のユーザーのデバイスログまたは情報を入力しないでください

アプリケーション開発者は、デバイスで作成されたログに注意する必要があります。 Androidを使用すると、電話ログに簡単に書き込むことができます。「logcat」を実行した結果を見た人は誰でも、それが重要ですが、多くの点で多くのアプリケーションからのランダムなデバッグ情報で満たされていることを知っています。 Androidでは、ログは共有リソースであり、 READ_LOGSパーミッションを持つアプリケーションで使用できます(もちろんパーミッションもあります!)。 ログ内の情報が一時的なものであり、再起動時に破棄されたとしても、情報の不適切なロギングは他のアプリケーションへの漏洩につながる可能性があります




All Articles