AccountManagerデータベース格納場所
1216 ワード
, ; , ,
google ,
先日同僚からandroid 7.0以降のAccountManagerのストレージについて質問があり、なぜceとdeの2つのディレクトリがあるのか、それぞれ何で暗号化されているのかなどの質問がありました(android 7.0が発表されたばかりの頃に調べましたが、再調査して整理する必要があります).
なぜならandroid 7.0 FBE(File-Based Encryption):異なる鍵を使用して異なるファイルを暗号化し、これらのファイルを個別に復号することができます(具体的には、ドキュメントを参照してください:https://source.android.com/security/encryption/file-based)FBEが有効になっているデバイスでは、各ユーザに2つのアプリケーションで使用可能な記憶場所があります.
注意:direct rootは、現在のデバイスが起動しているが、ユーザーがデバイスをロックしていないことを示します.android Nバージョンでは、このセキュリティモードが導入されています.アプリケーションがdirect rootモードで実行するときにデータにアクセスする必要がある場合は、DEストレージを使用します.DEストレージには、デバイスが認証起動を正常に実行した後にのみ、鍵を使用して暗号化されたデータが含まれています.ダイレクトスタート(direct root)モードの公式リファレンスドキュメント:https://developer.android.com/training/articles/direct-boot.html?hl=zh-cn
Android 7.0のAccountManagerのストレージにもこの機能が導入されています.対応するストレージの場所は次のとおりです.
また、android 7.0以前のバージョンの格納場所:/data/system/users/0/accounts.db