diff options
| author | 2024-11-20 14:34:43 +0000 | |
|---|---|---|
| committer | 2024-11-20 14:34:43 +0000 | |
| commit | 97b1de7fcb5ecf4f4a71b5b33ca70595512eaa5f (patch) | |
| tree | 54007cf042c3b2ceedc708d18c58ae9a34bac29c | |
| parent | bee9f829cbdd23b3de4bfe658e7937a94e348e68 (diff) | |
| parent | 3153a97dacb1a88282362e60d4dd94f1e4617d00 (diff) | |
Merge "[AAPM] Rename permission" into main
8 files changed, 19 insertions, 18 deletions
diff --git a/core/api/system-current.txt b/core/api/system-current.txt index 9dd7d6583ab9..9c5eb3e20866 100644 --- a/core/api/system-current.txt +++ b/core/api/system-current.txt @@ -193,6 +193,7 @@ package android { field public static final String MANAGE_ACCESSIBILITY = "android.permission.MANAGE_ACCESSIBILITY"; field @Deprecated public static final String MANAGE_ACTIVITY_STACKS = "android.permission.MANAGE_ACTIVITY_STACKS"; field public static final String MANAGE_ACTIVITY_TASKS = "android.permission.MANAGE_ACTIVITY_TASKS"; + field @FlaggedApi("android.security.aapm_api") public static final String MANAGE_ADVANCED_PROTECTION_MODE = "android.permission.MANAGE_ADVANCED_PROTECTION_MODE"; field public static final String MANAGE_APP_HIBERNATION = "android.permission.MANAGE_APP_HIBERNATION"; field public static final String MANAGE_APP_OPS_RESTRICTIONS = "android.permission.MANAGE_APP_OPS_RESTRICTIONS"; field public static final String MANAGE_APP_PREDICTIONS = "android.permission.MANAGE_APP_PREDICTIONS"; @@ -375,7 +376,6 @@ package android { field public static final String SERIAL_PORT = "android.permission.SERIAL_PORT"; field @FlaggedApi("android.security.fsverity_api") public static final String SETUP_FSVERITY = "android.permission.SETUP_FSVERITY"; field public static final String SET_ACTIVITY_WATCHER = "android.permission.SET_ACTIVITY_WATCHER"; - field @FlaggedApi("android.security.aapm_api") public static final String SET_ADVANCED_PROTECTION_MODE = "android.permission.SET_ADVANCED_PROTECTION_MODE"; field public static final String SET_CLIP_SOURCE = "android.permission.SET_CLIP_SOURCE"; field public static final String SET_DEFAULT_ACCOUNT_FOR_CONTACTS = "android.permission.SET_DEFAULT_ACCOUNT_FOR_CONTACTS"; field public static final String SET_HARMFUL_APP_WARNINGS = "android.permission.SET_HARMFUL_APP_WARNINGS"; @@ -12817,8 +12817,8 @@ package android.security.advancedprotection { @FlaggedApi("android.security.aapm_api") public final class AdvancedProtectionManager { method @NonNull public android.content.Intent createSupportIntent(@NonNull String, @Nullable String); - method @NonNull @RequiresPermission(android.Manifest.permission.SET_ADVANCED_PROTECTION_MODE) public java.util.List<android.security.advancedprotection.AdvancedProtectionFeature> getAdvancedProtectionFeatures(); - method @RequiresPermission(android.Manifest.permission.SET_ADVANCED_PROTECTION_MODE) public void setAdvancedProtectionEnabled(boolean); + method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ADVANCED_PROTECTION_MODE) public java.util.List<android.security.advancedprotection.AdvancedProtectionFeature> getAdvancedProtectionFeatures(); + method @RequiresPermission(android.Manifest.permission.MANAGE_ADVANCED_PROTECTION_MODE) public void setAdvancedProtectionEnabled(boolean); field @FlaggedApi("android.security.aapm_api") public static final String ACTION_SHOW_ADVANCED_PROTECTION_SUPPORT_DIALOG = "android.security.advancedprotection.action.SHOW_ADVANCED_PROTECTION_SUPPORT_DIALOG"; field public static final String EXTRA_SUPPORT_DIALOG_FEATURE = "android.security.advancedprotection.extra.SUPPORT_DIALOG_FEATURE"; field public static final String EXTRA_SUPPORT_DIALOG_TYPE = "android.security.advancedprotection.extra.SUPPORT_DIALOG_TYPE"; diff --git a/core/java/android/security/advancedprotection/AdvancedProtectionManager.java b/core/java/android/security/advancedprotection/AdvancedProtectionManager.java index 9fe0dda136d1..0302fafd2f6c 100644 --- a/core/java/android/security/advancedprotection/AdvancedProtectionManager.java +++ b/core/java/android/security/advancedprotection/AdvancedProtectionManager.java @@ -281,7 +281,7 @@ public final class AdvancedProtectionManager { * @hide */ @SystemApi - @RequiresPermission(Manifest.permission.SET_ADVANCED_PROTECTION_MODE) + @RequiresPermission(Manifest.permission.MANAGE_ADVANCED_PROTECTION_MODE) public void setAdvancedProtectionEnabled(boolean enabled) { try { mService.setAdvancedProtectionEnabled(enabled); @@ -297,7 +297,7 @@ public final class AdvancedProtectionManager { */ @SystemApi @NonNull - @RequiresPermission(Manifest.permission.SET_ADVANCED_PROTECTION_MODE) + @RequiresPermission(Manifest.permission.MANAGE_ADVANCED_PROTECTION_MODE) public List<AdvancedProtectionFeature> getAdvancedProtectionFeatures() { try { return mService.getAdvancedProtectionFeatures(); diff --git a/core/java/android/security/advancedprotection/IAdvancedProtectionService.aidl b/core/java/android/security/advancedprotection/IAdvancedProtectionService.aidl index 68307632027a..1939f829c700 100644 --- a/core/java/android/security/advancedprotection/IAdvancedProtectionService.aidl +++ b/core/java/android/security/advancedprotection/IAdvancedProtectionService.aidl @@ -31,8 +31,8 @@ interface IAdvancedProtectionService { void registerAdvancedProtectionCallback(IAdvancedProtectionCallback callback); @EnforcePermission("QUERY_ADVANCED_PROTECTION_MODE") void unregisterAdvancedProtectionCallback(IAdvancedProtectionCallback callback); - @EnforcePermission("SET_ADVANCED_PROTECTION_MODE") + @EnforcePermission("MANAGE_ADVANCED_PROTECTION_MODE") void setAdvancedProtectionEnabled(boolean enabled); - @EnforcePermission("SET_ADVANCED_PROTECTION_MODE") + @EnforcePermission("MANAGE_ADVANCED_PROTECTION_MODE") List<AdvancedProtectionFeature> getAdvancedProtectionFeatures(); }
\ No newline at end of file diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index ead9b8515a14..cedcd2feafc3 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -4201,18 +4201,19 @@ android:protectionLevel="signature|installer" /> <uses-permission android:name="android.permission.MANAGE_ENHANCED_CONFIRMATION_STATES" /> - <!-- Allows an application to toggle the device's advanced protection mode status. - @FlaggedApi("android.security.aapm_api") + <!-- Allows an application to modify the device's advanced protection mode status, and query + the list of enabled features + @FlaggedApi(android.security.Flags.FLAG_AAPM_API) @SystemApi @hide --> - <permission android:name="android.permission.SET_ADVANCED_PROTECTION_MODE" + <permission android:name="android.permission.MANAGE_ADVANCED_PROTECTION_MODE" android:protectionLevel="signature|privileged" android:featureFlag="android.security.aapm_api"/> - <uses-permission android:name="android.permission.SET_ADVANCED_PROTECTION_MODE" + <uses-permission android:name="android.permission.MANAGE_ADVANCED_PROTECTION_MODE" android:featureFlag="android.security.aapm_api"/> <!-- Allows an application to query the device's advanced protection mode status. - @FlaggedApi("android.security.aapm_api") --> + @FlaggedApi(android.security.Flags.FLAG_AAPM_API) --> <permission android:name="android.permission.QUERY_ADVANCED_PROTECTION_MODE" android:protectionLevel="normal" android:featureFlag="android.security.aapm_api"/> diff --git a/data/etc/privapp-permissions-platform.xml b/data/etc/privapp-permissions-platform.xml index ba1407c3b461..af690f4449af 100644 --- a/data/etc/privapp-permissions-platform.xml +++ b/data/etc/privapp-permissions-platform.xml @@ -599,7 +599,7 @@ applications that come with the platform <!-- Permission required for CTS test - CtsAppTestCases --> <permission name="android.permission.KILL_UID" /> <!-- Permission required for CTS test - AdvancedProtectionManagerTest --> - <permission name="android.permission.SET_ADVANCED_PROTECTION_MODE" /> + <permission name="android.permission.MANAGE_ADVANCED_PROTECTION_MODE" /> <permission name="android.permission.QUERY_ADVANCED_PROTECTION_MODE" /> <!-- Permissions required for CTS test - SettingsPreferenceServiceClientTest --> <permission name="android.permission.READ_SYSTEM_PREFERENCES" /> diff --git a/packages/Shell/AndroidManifest.xml b/packages/Shell/AndroidManifest.xml index b761d6a7ab6e..b192fa942298 100644 --- a/packages/Shell/AndroidManifest.xml +++ b/packages/Shell/AndroidManifest.xml @@ -956,7 +956,7 @@ <!-- Permission required for CTS test - CtsNfcTestCases --> <uses-permission android:name="android.permission.NFC_SET_CONTROLLER_ALWAYS_ON" /> <!-- Permission required for CTS test - AdvancedProtectionManagerTest --> - <uses-permission android:name="android.permission.SET_ADVANCED_PROTECTION_MODE" + <uses-permission android:name="android.permission.MANAGE_ADVANCED_PROTECTION_MODE" android:featureFlag="android.security.aapm_api"/> <uses-permission android:name="android.permission.QUERY_ADVANCED_PROTECTION_MODE" android:featureFlag="android.security.aapm_api"/> diff --git a/services/core/java/com/android/server/security/advancedprotection/AdvancedProtectionService.java b/services/core/java/com/android/server/security/advancedprotection/AdvancedProtectionService.java index e780be490181..e8723b91a541 100644 --- a/services/core/java/com/android/server/security/advancedprotection/AdvancedProtectionService.java +++ b/services/core/java/com/android/server/security/advancedprotection/AdvancedProtectionService.java @@ -141,7 +141,7 @@ public class AdvancedProtectionService extends IAdvancedProtectionService.Stub } @Override - @EnforcePermission(Manifest.permission.SET_ADVANCED_PROTECTION_MODE) + @EnforcePermission(Manifest.permission.MANAGE_ADVANCED_PROTECTION_MODE) public void setAdvancedProtectionEnabled(boolean enabled) { setAdvancedProtectionEnabled_enforcePermission(); final long identity = Binder.clearCallingIdentity(); @@ -159,7 +159,7 @@ public class AdvancedProtectionService extends IAdvancedProtectionService.Stub } @Override - @EnforcePermission(Manifest.permission.SET_ADVANCED_PROTECTION_MODE) + @EnforcePermission(Manifest.permission.MANAGE_ADVANCED_PROTECTION_MODE) public List<AdvancedProtectionFeature> getAdvancedProtectionFeatures() { getAdvancedProtectionFeatures_enforcePermission(); List<AdvancedProtectionFeature> features = new ArrayList<>(); diff --git a/services/tests/servicestests/src/com/android/server/security/advancedprotection/AdvancedProtectionServiceTest.java b/services/tests/servicestests/src/com/android/server/security/advancedprotection/AdvancedProtectionServiceTest.java index 24bf6ca507e6..b1df0f1e9cce 100644 --- a/services/tests/servicestests/src/com/android/server/security/advancedprotection/AdvancedProtectionServiceTest.java +++ b/services/tests/servicestests/src/com/android/server/security/advancedprotection/AdvancedProtectionServiceTest.java @@ -60,7 +60,7 @@ public class AdvancedProtectionServiceTest { public void setup() throws Settings.SettingNotFoundException { mContext = mock(Context.class); mPermissionEnforcer = new FakePermissionEnforcer(); - mPermissionEnforcer.grant(Manifest.permission.SET_ADVANCED_PROTECTION_MODE); + mPermissionEnforcer.grant(Manifest.permission.MANAGE_ADVANCED_PROTECTION_MODE); mPermissionEnforcer.grant(Manifest.permission.QUERY_ADVANCED_PROTECTION_MODE); mStore = new AdvancedProtectionService.AdvancedProtectionStore(mContext) { @@ -299,7 +299,7 @@ public class AdvancedProtectionServiceTest { @Test public void testSetProtection_withoutPermission() { - mPermissionEnforcer.revoke(Manifest.permission.SET_ADVANCED_PROTECTION_MODE); + mPermissionEnforcer.revoke(Manifest.permission.MANAGE_ADVANCED_PROTECTION_MODE); assertThrows(SecurityException.class, () -> mService.setAdvancedProtectionEnabled(true)); } |