機密性の高いアクティビティを保護する

このドキュメントでは、ユーザーのログインなどの機密性の高いアクティビティをモニタリングする方法について説明します。 オンライン購入が含まれます

フラグ_セキュア

FLAG_SECURE は、スクリーンショットを許可しないように Android に指示するウィンドウ フラグです。 または、セキュアでないディスプレイにウィンドウ ビューを表示する(例: です。この方法は、機密データを保護する必要のあるアプリケーションで バンキング アプリやパスワード マネージャーなどの機密情報をスキャンできます。ウィンドウにフラグが付けられたとき FLAG_SECURE を指定すると、Android はスクリーンショットの撮影を阻止し、 テレビやテレビなどのセキュアでないディスプレイにウィンドウが 使用できます。こうすることで、検索結果に表示される情報を アクセスされないようにすることができます。

不正行為の軽減にどのように役立つか

悪意のあるアプリやエンティティによって、背景のスクリーンショットが取得される可能性があります。状態ファイルを使用して 変更された場合は、FLAG_SECURE を使用できます。Google スクリーンショットが取得されると画像が空白になります。

FLAG_SECURE は、リモート画面共有のユースケースでも役立ちます。必ずしも スクリーンショットを取得する悪意のあるアプリ、正規の画面共有アプリは 不正行為でよく使用されています。

実装

保護する情報を含むビューの場合は、以下を追加します。

Kotlin


window?.setFlags(
    WindowManager.LayoutParams.FLAG_SECURE,
    WindowManager.LayoutParams.FLAG_SECURE
)

Java


window.setFlags(
  WindowManager.LayoutParams.FLAG_SECURE,
  WindowManager.LayoutParams.FLAG_SECURE
);

おすすめの方法

重要な点として、この方法はオーバーレイの防止には適していません。 防ぐことができます。画面の録画が正しく行われない場合があります。 ほとんどのユースケースに対応していますオーバーレイ攻撃を軽減するには、 次のセクションでは、HIDE_OVERLAY_WINDOWS 権限について説明します。

HIDE_OVERLAY_WINDOWS

HIDE_OVERLAY_WINDOWS は Android 12 で追加された権限で、アプリで次のことができます。 アプリケーション オーバーレイが描画されないようにすることもできます。Android 12 では、 SYSTEM_ALERT_WINDOW 権限の取得が難しくなります。基本的には、 サードパーティ アプリからのオーバーレイをアプリがブロックできます。

不正行為の軽減にどのように役立つか

HIDE_OVERLAY_WINDOWS 権限を有効にすると、無効になります アプリの上にアプリケーション オーバーレイを描画するこの権限により、 クローク / ダガー攻撃からの保護メカニズムを提供します。

実装

この権限を有効にするには、HIDE_OVERLAY_WINDOWS をプロジェクトの 使用します。

おすすめの方法

他の権限と同様に、オーバーレイ アプリは、 デバイス上の他のアプリを信頼する。つまり、アプリは次のことを許可するべきではありません。 オーバーレイを描画できるアプリもあります。ただし、そのアプリが あります。あるアプリが他のアプリの上に重ねて表示できるようにすると、 パスワードを盗んだりメッセージを読み取ったりする可能性があります。