summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/java/android/app/admin/flags/flags.aconfig7
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/ActiveAdmin.java44
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyEngine.java20
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java5
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/EnforcingAdmin.java2
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/PolicyState.java7
6 files changed, 62 insertions, 23 deletions
diff --git a/core/java/android/app/admin/flags/flags.aconfig b/core/java/android/app/admin/flags/flags.aconfig
index 5a41c65535e6..bbd07b8c21ea 100644
--- a/core/java/android/app/admin/flags/flags.aconfig
+++ b/core/java/android/app/admin/flags/flags.aconfig
@@ -41,3 +41,10 @@ flag {
description: "Improve access to security logging in the context of Zero Trust."
bug: "295324350"
}
+
+flag {
+ name: "dumpsys_policy_engine_migration_enabled"
+ namespace: "enterprise"
+ description: "Update DumpSys to include information about migrated APIs in DPE"
+ bug: "304999634"
+}
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/ActiveAdmin.java b/services/devicepolicy/java/com/android/server/devicepolicy/ActiveAdmin.java
index c42a4573d2e3..17638fcaba68 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/ActiveAdmin.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/ActiveAdmin.java
@@ -21,6 +21,8 @@ import static android.app.admin.DevicePolicyManager.PASSWORD_COMPLEXITY_NONE;
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED;
import static android.app.admin.WifiSsidPolicy.WIFI_SSID_POLICY_TYPE_ALLOWLIST;
import static android.app.admin.WifiSsidPolicy.WIFI_SSID_POLICY_TYPE_DENYLIST;
+import static android.app.admin.flags.Flags.dumpsysPolicyEngineMigrationEnabled;
+import static android.app.admin.flags.Flags.policyEngineMigrationV2Enabled;
import static android.net.NetworkCapabilities.NET_ENTERPRISE_ID_1;
import static com.android.server.devicepolicy.DevicePolicyManagerService.LOG_TAG;
@@ -1295,8 +1297,29 @@ class ActiveAdmin {
pw.print("encryptionRequested=");
pw.println(encryptionRequested);
- pw.print("disableCamera=");
- pw.println(disableCamera);
+ if (!dumpsysPolicyEngineMigrationEnabled()) {
+ pw.print("disableCamera=");
+ pw.println(disableCamera);
+
+ pw.print("disableScreenCapture=");
+ pw.println(disableScreenCapture);
+
+ pw.print("requireAutoTime=");
+ pw.println(requireAutoTime);
+
+ if (permittedInputMethods != null) {
+ pw.print("permittedInputMethods=");
+ pw.println(permittedInputMethods);
+ }
+
+ pw.println("userRestrictions:");
+ UserRestrictionsUtils.dumpRestrictions(pw, " ", userRestrictions);
+ }
+
+ if (!policyEngineMigrationV2Enabled() || !dumpsysPolicyEngineMigrationEnabled()) {
+ pw.print("mUsbDataSignaling=");
+ pw.println(mUsbDataSignalingEnabled);
+ }
pw.print("disableCallerId=");
pw.println(disableCallerId);
@@ -1307,12 +1330,6 @@ class ActiveAdmin {
pw.print("disableBluetoothContactSharing=");
pw.println(disableBluetoothContactSharing);
- pw.print("disableScreenCapture=");
- pw.println(disableScreenCapture);
-
- pw.print("requireAutoTime=");
- pw.println(requireAutoTime);
-
pw.print("forceEphemeralUsers=");
pw.println(forceEphemeralUsers);
@@ -1330,11 +1347,6 @@ class ActiveAdmin {
pw.println(permittedAccessiblityServices);
}
- if (permittedInputMethods != null) {
- pw.print("permittedInputMethods=");
- pw.println(permittedInputMethods);
- }
-
if (permittedNotificationListeners != null) {
pw.print("permittedNotificationListeners=");
pw.println(permittedNotificationListeners);
@@ -1368,9 +1380,6 @@ class ActiveAdmin {
pw.println(organizationName);
}
- pw.println("userRestrictions:");
- UserRestrictionsUtils.dumpRestrictions(pw, " ", userRestrictions);
-
pw.print("defaultEnabledRestrictionsAlreadySet=");
pw.println(defaultEnabledRestrictionsAlreadySet);
@@ -1442,9 +1451,6 @@ class ActiveAdmin {
pw.print("mAdminCanGrantSensorsPermissions=");
pw.println(mAdminCanGrantSensorsPermissions);
- pw.print("mUsbDataSignaling=");
- pw.println(mUsbDataSignalingEnabled);
-
pw.print("mWifiMinimumSecurityLevel=");
pw.println(mWifiMinimumSecurityLevel);
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyEngine.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyEngine.java
index 323d387eff1a..e0232b1e1fc5 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyEngine.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyEngine.java
@@ -59,6 +59,7 @@ import android.os.UserHandle;
import android.os.UserManager;
import android.telephony.TelephonyManager;
import android.util.AtomicFile;
+import android.util.IndentingPrintWriter;
import android.util.Log;
import android.util.SparseArray;
import android.util.Xml;
@@ -1578,6 +1579,25 @@ final class DevicePolicyEngine {
}
}
+ public void dump(IndentingPrintWriter pw) {
+ synchronized (mLock) {
+ pw.println("Local Policies: ");
+ for (int i = 0; i < mLocalPolicies.size(); i++) {
+ for (PolicyKey policy : mLocalPolicies.get(mLocalPolicies.keyAt(i)).keySet()) {
+ PolicyState<?> policyState = mLocalPolicies.get(
+ mLocalPolicies.keyAt(i)).get(policy);
+ pw.println(policyState);
+ }
+ }
+ pw.println();
+ pw.println("Global Policies: ");
+ for (PolicyKey policy : mGlobalPolicies.keySet()) {
+ PolicyState<?> policyState = mGlobalPolicies.get(policy);
+ pw.println(policyState);
+ }
+ }
+ }
+
private void write() {
synchronized (mLock) {
Log.d(TAG, "Writing device policies to file.");
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
index 5f2d87cf7e80..1ff117e2c60b 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
@@ -219,6 +219,7 @@ import static android.app.admin.ProvisioningException.ERROR_REMOVE_NON_REQUIRED_
import static android.app.admin.ProvisioningException.ERROR_SETTING_PROFILE_OWNER_FAILED;
import static android.app.admin.ProvisioningException.ERROR_SET_DEVICE_OWNER_FAILED;
import static android.app.admin.ProvisioningException.ERROR_STARTING_PROFILE_FAILED;
+import static android.app.admin.flags.Flags.dumpsysPolicyEngineMigrationEnabled;
import static android.app.admin.flags.Flags.policyEngineMigrationV2Enabled;
import static android.content.Intent.ACTION_MANAGED_PROFILE_AVAILABLE;
import static android.content.Intent.ACTION_MANAGED_PROFILE_UNAVAILABLE;
@@ -11022,6 +11023,10 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
pw.println();
mStatLogger.dump(pw);
pw.println();
+ if (dumpsysPolicyEngineMigrationEnabled()) {
+ mDevicePolicyEngine.dump(pw);
+ pw.println();
+ }
pw.println("Encryption Status: " + getEncryptionStatusName(getEncryptionStatus()));
pw.println("Logout user: " + getLogoutUserIdUnchecked());
pw.println();
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/EnforcingAdmin.java b/services/devicepolicy/java/com/android/server/devicepolicy/EnforcingAdmin.java
index 006642235615..49ffb0d01019 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/EnforcingAdmin.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/EnforcingAdmin.java
@@ -327,6 +327,6 @@ final class EnforcingAdmin {
public String toString() {
return "EnforcingAdmin { mPackageName= " + mPackageName + ", mComponentName= "
+ mComponentName + ", mAuthorities= " + mAuthorities + ", mUserId= "
- + mUserId + ", mIsRoleAuthority= " + mIsRoleAuthority + " }";
+ + mUserId + ", mIsRoleAuthority= " + mIsRoleAuthority + " }\n";
}
}
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/PolicyState.java b/services/devicepolicy/java/com/android/server/devicepolicy/PolicyState.java
index 22464d5c5241..c2e370eeec44 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/PolicyState.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/PolicyState.java
@@ -189,9 +189,10 @@ final class PolicyState<V> {
@Override
public String toString() {
- return "PolicyState { mPolicyDefinition= " + mPolicyDefinition + ", mPoliciesSetByAdmins= "
- + mPoliciesSetByAdmins + ", mCurrentResolvedPolicy= " + mCurrentResolvedPolicy
- + " }";
+ return "\nPolicyKey - " + mPolicyDefinition.getPolicyKey()
+ + "\nmPolicyDefinition= \n\t" + mPolicyDefinition
+ + "\nmPoliciesSetByAdmins= \n\t" + mPoliciesSetByAdmins
+ + ",\nmCurrentResolvedPolicy= \n\t" + mCurrentResolvedPolicy + " }";
}
void saveToXml(TypedXmlSerializer serializer) throws IOException {