diff --git a/services/core/java/com/android/server/biometrics/BiometricServiceBase.java b/services/core/java/com/android/server/biometrics/BiometricServiceBase.java index d7877581831f0..ebb9e060317b6 100644 --- a/services/core/java/com/android/server/biometrics/BiometricServiceBase.java +++ b/services/core/java/com/android/server/biometrics/BiometricServiceBase.java @@ -43,6 +43,7 @@ import android.os.IBinder; import android.os.IHwBinder; import android.os.IRemoteCallback; import android.os.PowerManager; +import android.os.Process; import android.os.RemoteException; import android.os.ServiceManager; import android.os.SystemClock; @@ -958,6 +959,10 @@ public abstract class BiometricServiceBase extends SystemService int pid, int userId) { checkUseBiometricPermission(); + + if (Binder.getCallingUid() == Process.SYSTEM_UID) { + return true; // System process (BiometricService, etc) is always allowed + } if (isKeyguard(opPackageName)) { return true; // Keyguard is always allowed }