diff options
author | Svet Ganov <svetoslavganov@google.com> | 2015-07-21 19:23:17 -0700 |
---|---|---|
committer | Svet Ganov <svetoslavganov@google.com> | 2015-07-21 19:23:21 -0700 |
commit | 2062eeff0156bc4e119398f1736e699d90ad8345 (patch) | |
tree | 1b11b4b5231c3c7c492c2acfe7f01d8d54edc753 | |
parent | 81adda25b396ee3db794bc9a7946b579d01c2aa0 (diff) | |
download | frameworks_base-2062eeff0156bc4e119398f1736e699d90ad8345.zip frameworks_base-2062eeff0156bc4e119398f1736e699d90ad8345.tar.gz frameworks_base-2062eeff0156bc4e119398f1736e699d90ad8345.tar.bz2 |
Add a privileged permission to get user accounts
bug:22602794
Change-Id: I6e5429f0eb5f2cb274d4740755070e588735e179
-rw-r--r-- | api/current.txt | 1 | ||||
-rw-r--r-- | api/system-current.txt | 1 | ||||
-rw-r--r-- | core/res/AndroidManifest.xml | 4 | ||||
-rw-r--r-- | services/core/java/com/android/server/accounts/AccountManagerService.java | 3 |
4 files changed, 8 insertions, 1 deletions
diff --git a/api/current.txt b/api/current.txt index 79d5ea0..8df19c0 100644 --- a/api/current.txt +++ b/api/current.txt @@ -66,6 +66,7 @@ package android { field public static final java.lang.String FACTORY_TEST = "android.permission.FACTORY_TEST"; field public static final java.lang.String FLASHLIGHT = "android.permission.FLASHLIGHT"; field public static final java.lang.String GET_ACCOUNTS = "android.permission.GET_ACCOUNTS"; + field public static final java.lang.String GET_ACCOUNTS_PRIVILEGED = "android.permission.GET_ACCOUNTS_PRIVILEGED"; field public static final java.lang.String GET_PACKAGE_SIZE = "android.permission.GET_PACKAGE_SIZE"; field public static final deprecated java.lang.String GET_TASKS = "android.permission.GET_TASKS"; field public static final java.lang.String GLOBAL_SEARCH = "android.permission.GLOBAL_SEARCH"; diff --git a/api/system-current.txt b/api/system-current.txt index 0af72d5..9b5ffb9 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -95,6 +95,7 @@ package android { field public static final java.lang.String FORCE_BACK = "android.permission.FORCE_BACK"; field public static final java.lang.String FORCE_STOP_PACKAGES = "android.permission.FORCE_STOP_PACKAGES"; field public static final java.lang.String GET_ACCOUNTS = "android.permission.GET_ACCOUNTS"; + field public static final java.lang.String GET_ACCOUNTS_PRIVILEGED = "android.permission.GET_ACCOUNTS_PRIVILEGED"; field public static final java.lang.String GET_APP_OPS_STATS = "android.permission.GET_APP_OPS_STATS"; field public static final java.lang.String GET_PACKAGE_IMPORTANCE = "android.permission.GET_PACKAGE_IMPORTANCE"; field public static final java.lang.String GET_PACKAGE_SIZE = "android.permission.GET_PACKAGE_SIZE"; diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index 0c0ba7f..5324c70 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -1746,6 +1746,10 @@ <!-- ==================================== --> <eat-comment /> + <!-- @SystemApi Allows access to the list of accounts in the Accounts Service. --> + <permission android:name="android.permission.GET_ACCOUNTS_PRIVILEGED" + android:protectionLevel="signature|privileged" /> + <!-- @SystemApi Allows applications to RW to diagnostic resources. <p>Not for use by third-party applications. --> <permission android:name="android.permission.DIAGNOSTIC" diff --git a/services/core/java/com/android/server/accounts/AccountManagerService.java b/services/core/java/com/android/server/accounts/AccountManagerService.java index cb294fd..32fd56a 100644 --- a/services/core/java/com/android/server/accounts/AccountManagerService.java +++ b/services/core/java/com/android/server/accounts/AccountManagerService.java @@ -3799,7 +3799,8 @@ public class AccountManagerService * access accounts of the specified account. */ boolean isPermitted = - isPermitted(callingUid, Manifest.permission.GET_ACCOUNTS); + isPermitted(callingUid, Manifest.permission.GET_ACCOUNTS, + Manifest.permission.GET_ACCOUNTS_PRIVILEGED); boolean isAccountManagedByCaller = isAccountManagedByCaller(accountType, callingUid); Log.w(TAG, String.format( "isReadAccountPermitted: isPermitted: %s, isAM: %s", |