diff options
| author | 2021-01-14 11:42:37 +0000 | |
|---|---|---|
| committer | 2021-01-14 11:42:37 +0000 | |
| commit | d03ee56a05a316a8a4b96901f0eb418b64697308 (patch) | |
| tree | 774689b221ef7c71632e215e4672d2b075be1141 | |
| parent | 76f6a644f24f2d1320968d7f7a7c2caefb261256 (diff) | |
| parent | a1485a6980cfdbe17be2c640d9754a47f893a387 (diff) | |
Merge "ESID access for Delegated Cert Installer"
4 files changed, 7 insertions, 6 deletions
diff --git a/core/java/android/app/admin/DevicePolicyManager.java b/core/java/android/app/admin/DevicePolicyManager.java index f6d18109a7d9..ecb96e120e47 100644 --- a/core/java/android/app/admin/DevicePolicyManager.java +++ b/core/java/android/app/admin/DevicePolicyManager.java @@ -12875,7 +12875,7 @@ public class DevicePolicyManager { } try { - return mService.getEnrollmentSpecificId(); + return mService.getEnrollmentSpecificId(mContext.getPackageName()); } catch (RemoteException re) { throw re.rethrowFromSystemServer(); } diff --git a/core/java/android/app/admin/IDevicePolicyManager.aidl b/core/java/android/app/admin/IDevicePolicyManager.aidl index aaa5f7ce4cb0..e855a1cb71ef 100644 --- a/core/java/android/app/admin/IDevicePolicyManager.aidl +++ b/core/java/android/app/admin/IDevicePolicyManager.aidl @@ -491,6 +491,6 @@ interface IDevicePolicyManager { void setNextOperationSafety(int operation, boolean safe); - String getEnrollmentSpecificId(); + String getEnrollmentSpecificId(String callerPackage); void setOrganizationIdForUser(in String callerPackage, in String enterpriseId, int userId); } diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/BaseIDevicePolicyManager.java b/services/devicepolicy/java/com/android/server/devicepolicy/BaseIDevicePolicyManager.java index 8b7f83f4edb5..55ba6c902e47 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/BaseIDevicePolicyManager.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/BaseIDevicePolicyManager.java @@ -109,7 +109,7 @@ abstract class BaseIDevicePolicyManager extends IDevicePolicyManager.Stub { return false; } - public String getEnrollmentSpecificId() { + public String getEnrollmentSpecificId(String callerPackage) { return ""; } diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index 422704fad876..0f1fab509728 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -15699,14 +15699,15 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager { } @Override - public String getEnrollmentSpecificId() { + public String getEnrollmentSpecificId(String callerPackage) { if (!mHasFeature) { return ""; } - final CallerIdentity caller = getCallerIdentity(); + final CallerIdentity caller = getCallerIdentity(callerPackage); Preconditions.checkCallAuthorization( - isDeviceOwner(caller) || isProfileOwner(caller)); + isDeviceOwner(caller) || isProfileOwner(caller) + || isCallerDelegate(caller, DELEGATION_CERT_INSTALL)); synchronized (getLockObject()) { final ActiveAdmin requiredAdmin = getDeviceOrProfileOwnerAdminLocked( |