Commit Graph

46 Commits

Author SHA1 Message Date
Dmitry Dementyev
e9e48a5b95 Return GK_PW_HANDLE after remote LSKF verification.
Handle is returned when LSKF is set after successful verification.
It is used by SUW to add biometrics without asking for LSKF.

Bug: 272807192
Test: manual
Change-Id: I3fe6ed7fd6401421090ccd684509dfede9106076
2023-03-20 18:01:52 -07:00
Dmitry Dementyev
1ab3fe5a9e Use updated lockscreen validation API in Settings.
Test: manual
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.password
Bug: 269256333
Change-Id: I660dea98eace96ed241b0a90f12ddeb742381dc0
2023-03-08 22:09:25 +00:00
Brian Lee
d4f8e5802e Support remote device credentials validation in UI.
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.password
Test: Manual
Bug: 258505917

Change-Id: Ifb9f15728eb8396b34c844d28f71a8e6e1aad837
2023-02-15 23:23:17 -08:00
chengfeitao
3f0864af1b Better biometric subtitle with createConfirmDeviceCredentialIntent() API
Test: Tested manually with repro steps

Fixes: 224967328
Change-Id: I7e83392f5a2df3c258c07e77a9332b2cfde95225
2022-12-22 00:28:00 +00:00
kholoud mohamed
90afe190e8 RESTRICT AUTOMERGE Refactor device policy resource APIs to a separate class
Bug: 217388602
Bug: 218875965
Test: atest EnterpriseResourcesTests
Test: manual
Change-Id: I4775d7741c7819fd811c3fc4eda1636b1e04b398
(cherry picked from commit de78149c16)
Merged-In: I4775d7741c7819fd811c3fc4eda1636b1e04b398
2022-03-25 11:38:34 +00:00
Jonathan Scott
e0d439472f Allow Device Management Role Holder to update Settings strings.
Test: manual
Bug: 188414370
Change-Id: I6e1a06619799a9e99382d791e72e2e4518f93cac
2022-01-25 19:03:24 +00:00
Pavel Grafov
a8c12b4298 Check user validity before retrying authentication
When managed profile gets wiped Settings may crash with SecurityException
when trying to retry authentication for no longer valid user.

Test: manually with TestDPC
Bug: 201513984
Change-Id: Ib7309abf89be76fcc1bf756c37c09d6b60c6b95c
2021-11-24 16:24:38 +00:00
Joe Bolinger
2482d43493 Delay invoking biometric prompt.
Fix: 169323687
Test: manual
Change-Id: Iff00caaace97df6da476fd429ebf24bb6b1e14e1
2021-06-11 00:40:26 +00:00
Alex Johnston
a942f3fdd1 Correct string ConfirmDeviceCredentialActivity
* If there is a managed profile but a separate
  profile challenge is not enabled, use the device
  title and subtitle in ConfirmDeviceCredentialActivity.

Manual testing
* Set device PIN
* Create a work profile using TestDPC
* adb shell am start --user 10 -a android.app.action.CONFIRM_DEVICE_CREDENTIAL
* Verify title says 'Enter your device...'
* Add a work profile PIN
* adb shell am start --user 10 -a android.app.action.CONFIRM_DEVICE_CREDENTIAL
* Verify title says 'Enter your work...'
* Do the same for pattern and password

Bug: 163108636
Test: manual testing
Change-Id: I8b61e7d2df5792cbdb2e12b19e5a5582ea2290b7
2021-04-27 16:35:42 +01:00
Kevin Chyn
d7b6b3d54e Revert "Set ConfirmDeviceCredentialActivity non-external in FRP"
This reverts commit ba5e25e3b1.

Reason for revert: b/183706857
Bug: b/171950236

Change-Id: Icdd1c76ed650539520a2ebf8ece078f17cdf9deb
2021-04-14 07:24:16 +00:00
Pasty Chang
ba5e25e3b1 Set ConfirmDeviceCredentialActivity non-external in FRP
FRP ConfirmDeviceCredentialActivity launched in initial setup flow should belong to internal flow, so it needs to set the external flag to false. It can  transmit setup intent extra to the stencil library to make the screen be applied to the stencil and BC layout.

Bug: 171950236
Test: Manual test & RunSettingsGoogleRoboTests
Change-Id: Ia98d1bb4fc3a1687992b202b1e58afc1463efaf4
2021-02-25 08:05:07 +00:00
Kevin Chyn
7b0867c6d3 4/n: Remove challenge from choose/confirm, use new path
Biometric enrollment will not request a Gatekeeper HAT during
initial credential setup or credential confirmation anymore.
Instead, it is broken down into the following steps now.

Bug: 161765592

1) Request credential setup / confirmation to return a
   Gatekeeper Password
2) Biometric enrollment will generate a challenge
3) Biometric enrollment will request LockSettingsService to
   verify(GatekeeperPassword, challenge), and upon verification,
   the Gatekeeper HAT will be returned.

Since both LockSettingsService and Biometric enroll/settings
make use of biometric challenges, this allows us to make the
challenge ownership/lifecycle clear (vs. previously, where
LockSettingsService has no idea who the challenge belongs to).

Exempt-From-Owner-Approval:For files not owned by our team,
(StorageWizard), this change is just a method rename

Test: RunSettingsRoboTests

Run the following on face/fingerprint devices
Test: Remove credential
      adb shell am start -a android.app.action.SET_NEW_PASSWORD
      Set up credential + fingerprint
Test: Remove credential,
      adb shell am start -a android.settings.FINGERPRINT_SETTINGS
      This tests the ChooseLock* logic in FingerprintSettings
Test: Set up credential,
      adb shell am start -a android.settings.FINGERPRINT_SETTINGS
      This tests the ConfirmLock* logic in FingerprintSettings
Test: Remove device credential, enroll fingerprint/face. Succeeds.
      This tests the ChooseLock* returning SP path from
      BiometricEnrollIntro
Test: With credential and fingerprint/face enrolled, go to
      fingerprint/face settings and enroll. This tests the
      ConfirmLock* path in Fingerprint/FaceSettings
Test: Remove device credential, enroll credential-only, enroll
      fingerprint/face separately. Succeeds. This tests the
      ConfirmLock* returning SP path in BiometricEnrollIntro
Test: In SUW, set up credential, then biometric. This tests
      the ChooseLock* path in SUW
Test: In SUW, set up credential, go back, then set up biometric.
      This tests the ConfirmLock* path in SUW

Change-Id: Idf6fcb43f7497323d089eb9c37125294e7a7f5dc
2020-08-07 12:49:15 -07:00
Treehugger Robot
726531266c Merge "Update language to comply with Android's inclusive language guidance" am: 7df1fb2af1 am: 4d421a47dc am: 7b10a29318 am: 9b63618b47 am: 0c65a47568
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1374789

Change-Id: Iddfb1a01a496149d0aa6c0accd7f2cb92254ac46
2020-07-29 09:24:48 +00:00
Treehugger Robot
7b10a29318 Merge "Update language to comply with Android's inclusive language guidance" am: 7df1fb2af1 am: 4d421a47dc
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1374789

Change-Id: I47066c39d6fced154b263febab7a3fb0a1e56049
2020-07-29 08:26:22 +00:00
Curtis Belmonte
bd8f120e95 Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference
 
Test: Presubmit
Bug: 161896447

Change-Id: I89dbc737c62a796d3622cf17437f9eac930c99b3
2020-07-28 20:12:49 +00:00
Kevin Chyn
b13bc50542 1/n: Make ChooseLockSettingsHelper into a builder
The multitude of slightly different launchConfirmationActivity(*)
methods are a big unsustainable pyramid. It's too difficult to
read, too difficult to track which clients are interested in which
parameters, and too difficult to add new parameters, since we need to

1) Read through all of them and find one that's the closest
2) Try not to affect other callers, so potentially add yet another
3) Modify the internal paths, which all basically call each other
   until it reaches the biggest launchConfirmationActivity which
   has ALL of the parameters

This change should have no behavioral change.

Note: CredentialStorage doesn't need returnCredentials anymore as of
      ag/6073449

Test: make -j56 RunSettingsRoboTests
Test: Manually traced code paths for each invocation. A few hidden
      dependencies (such as explicitly setting challenge=0 with
      hasChallenge=true) were found. Left them the way they were in
      case they were intended
Test: Enroll face, fingerprint
Test: Enable developer options
Test: Change to PIN, Pattern, Password, then back to PIN (so each
      type requests confirmation)
Test: adb shell am start -a android.app.action.CONFIRM_DEVICE_CREDENTIAL,
      authenticate
Test: adb shell am start -a android.app.action.CONFIRM_FRP_CREDENTIAL
      (shows confirm credential screen)
Fixes: 138453993

Change-Id: Ic82ef3c3ac2e14d624281921f2d816bcdacbd82b
2020-07-24 11:13:13 -07:00
Kevin Chyn
af90bd5c11 Remove setActiveUser together with frameworks/base (see 12/n)
setActiveUser is removed from the @hide API surface and is no longer
necessary. The framework ensures that the correct user is set without
an explicit call, since userId is sent as a parameter to each of the
methods already.

Bug: 157790417
Test: See testing from frameworks/base change (12/n) from the same
      gerrit topic
Change-Id: Id88b818ed0bb1f75f18ac8e9ba7aff2a9b80b319
2020-06-16 14:52:15 -07:00
TreeHugger Robot
bcf9d9e97f Merge "Fix disappearing biometric prompt for the managed profile" into rvc-dev am: 4d44702659 am: e3e2ce74f7 am: a9df21b508 am: 43a459cb1b
Change-Id: I0ffcb7bfd8fed9aa2f769a144e1c33c330d7c9ff
2020-05-27 12:37:04 +00:00
Eran Messeri
4f2090ddc0 Fix disappearing biometric prompt for the managed profile
In several circumstances, the ConfirmDeviceCredentialActivity
may be started while the device is being unlocked - particularly, when
the managed profile on the device has a separate challenge and the user
is attempting to start an activity associated with the locked, managed
profile. For example, by double-tapping a notification from the managed
profile or trying to reply to such a notification.

When the ConfirmDeviceCredentialActivity is started after the user has
entered the primary lockscreen challenge but before the keyguard is
fully dismissed, the activity may be started and immediately paused.
If the activity then calls finish() in onPause(), the biometric prompt
will disappear and the user will not have a chance to authenticate.

Fix the issue by only calling finish() in onPause() if the biometric
prompt has not been shown.

The flag indicating whether the activity is waiting for biometric
prompt or not needs to be cleared whenever the biometric prompt invokes
the callback, so that the activity will correctly call finish() if the
user does abort authentication.

Bug: 153689182
Bug: 141470517
Test: Manual, set up a work profile and double-tap a work notification
or try to Reply to a work GMail notification.

Change-Id: I9d3d3000b99d0eb4b44b90f5a0c2856db5f32144
2020-05-21 18:42:41 +01:00
Kevin Chyn
f761b35ef5 Remove dependencies on old BiometricPrompt bundle
This moves the dependency to PromptInfo, which isn't optimal but
is still much more readable / manageable

Bug: 149067920
Test: adb shell am start -a android.app.action.CONFIRM_DEVICE_CREDENTIAL
Change-Id: I7d9ba2084db76284d08f68dd2005190f06412a1e
2020-05-13 12:01:54 -07:00
Kevin Chyn
ef28e9b75f Merge "Adjust ConfirmDeviceCredentialActivity system bars" into rvc-dev 2020-03-28 00:06:00 +00:00
Kevin Chyn
28a034d6ed Adjust ConfirmDeviceCredentialActivity system bars
CDCA is a transparent activity with the sole purpose of
requesting authentication. Since authentication is all drawn
by SystemUI, we should also stop this activity from drawing
the StatusBar.

Register to receive biometric system events (early user canceled),
so that we can finish() and start the activity transition
simultaneously. This fixes some navigation bar jank.

Bug: 148273355

Test: Set up a work profile, then install BiometricPromptDemo
      Disable one-lock and set up a password/biometric for the
      work profile. Lock/unlock screen, then open the work
      profile version of the app. No status bar jank seen.
Change-Id: I54a352527ed007dcaf1bea14a51711e4022fe028
2020-03-27 12:12:30 -07:00
Curtis Belmonte
66090dce59 Set CDC detail string as subtitle, not description
With an associated change to the UI of the BiometricPrompt credential
view, this commit preserves the current appearance of the CDC auth flow
by promoting the "details" string from the description to the subtitle
field of the prompt.

Test: Manually, using the TestDPC app

Bug: 152053691
Change-Id: If1d773f7f9a7b141520eac70a6cd64c09eb27f20
2020-03-26 13:49:27 -07:00
Rubin Xu
397ee8b563 Do not reset incorrect password attempts after biometric authentication
For work challenges, do not reset incorrect password attempts if
challenge is resolved via biometric authentication. This is the
behaviour for personal keyguard and work challenge should be
consistent.

Bug: 139438785
Test: manual: enroll work challenge with fingerprint, set failed wipe
count (3) via TestDPC and attempt two failed attempts (via cmd
lock_settings). Resolve work challenge with fingerprint and attempt one
last failed attempt. Verify work profiel is wiped.

Change-Id: Ic64d3e44f3faa5adf8ac43db09e33c8403427990
2020-03-18 11:38:30 +00:00
Curtis Belmonte
c4bcf041d2 Pass CDC text as credential-only to BiometricPrompt
Invokes the new hidden API to allow the work authentication prompt to
supply specific text to BiometricPrompt for credential auth. This
allows the prompt to use work-specific language when verifying work
credentials, while retaining more generic language when authenticating
with biometrics.

Test: Work lock prompt shows "Enter your work ___" for credential
Test: Work lock prompt now shows "Verify it's you" for face

Bug: 149003660
Change-Id: Icab8e16702ca31d08fa8b0b00f0519c9a37f609f
2020-02-13 10:12:19 -08:00
Alex Johnston
403c330135 Update work profile app lock to latest spec
* Updated text and description for PIN, password and pattern
* Added enterprise logo to work profile lock

Bug: 141290838
Test: Manual testing
      atest com.android.systemui.biometrics.AuthBiometricViewTest
      atest com.android.systemui.biometrics.AuthContainerViewTest

Change-Id: Iac6c9ca15e7446cbd7cce9fc1a1ac4e1c867bf31
2020-01-30 14:49:39 +00:00
Kevin Chyn
dbdd06ca85 No longer need to cancel authentication from ConfirmDeviceCredentialActivity
CDCA no longer needs to cancel authentication in onPause. Since it
internally invokes BiometricPrompt, and BiometricPrompt's components e.g.
BiometricService and AuthController are aware of the "top-ness" of its
client, this code is redundant.

Fixes: 145991060

Test: Follow comment#3 in the bug above, repeat 10+ times
Test: Set up work profile, set up work profile password. Open work profile
      app, but before entering password, swipe up to go to home screen.
      Authentication is cancelled as expected.

Change-Id: I0b4d7d89cb9801ddbb6e3bd07f71191035cc75ec
2020-01-17 13:29:49 -08:00
Alex Johnston
7868acfa74 Update work profile lock in Settings to latest spec
* Updated FrameLayout of work profile lock in Settings to use GlifLayout
* Removed old background image of work profile lock
* Updated text for PIN, password and pattern
* Added enterprise logo to work profile lock

Bug: 141290838
Test: Manual testing
      atest com.android.settings.password

Change-Id: Ie09974857b6c76a182a8075b9e1964a2e0af0de9
2020-01-07 14:15:28 +00:00
joshmccloskey
53ccc448c8 Using new Biometric API
Test: Verified disabling fingerprint will not allow
the user to unlock work apps with fingerprint. (But can use fingeprint
within apps.)
Test: Verified disabling face and/or iris on a fingerprint device will
continue to
allow the user to unlock work apps with fingerprint.
Test: Verified disabling face on a face authentication device
will not allow the user to unlock work apps with face authentication.
(But can use face
authentication within apps.)
Test: Verified disabling fingerprint and/or iris on a face
authentication device will continue to allow the user to unlock work
apps with face authentication.

Change-Id: I2f72a85f39ec539e6c6bc2cf710ed2f5ebeb5f9a
2019-12-18 16:18:31 -08:00
joshmccloskey
9be0899b3c Enforce policy management.
Test: Verified disabling fingerprint will not allow
the user to unlock work apps with fingerprint. (But can use fingeprint
within apps.)
Test: Verified disabling face and/or iris on a fingerprint device will
continue to
allow the user to unlock work apps with fingerprint.
Test: Verified disabling face on a face authentication device
will not allow the user to unlock work apps with face authentication.
(But can use face
authentication within apps.)
Test: Verified disabling fingerprint and/or iris on a face
authentication device will continue to allow the user to unlock work
apps with face authentication.
Bug: 141382589

Change-Id: I74135dd9f6afb1b789302ad0af3daf8a73a4181b
2019-10-16 00:05:10 +00:00
joshmccloskey
3786016993 Removed old settings device credential logic.
Bug: 140128468
Test: Verified with biometricpromptdemo that confirm device credential
still works correctly.
Change-Id: I0f608ba1256c696317402f56549452bf6933066b
2019-09-18 15:57:22 -07:00
Kevin Chyn
adef4840f3 Do not request cancel authentication unless currently authenticating
Currently we always send cancel() if ConfirmDeviceCredentialActivity
goes into the background. However, if the biometric state is no longer
authenticating, requesting cancel() in this state will result in an
inconsistent state between BiometricService/client and
ConfirmDeviceCredentials.

BiometricService/client will receive the ERROR_CANCELED message incorrectly,
while ConfirmDeviceCredential is showing / pending user password. When
the password is entered, its result is ignored.

The correct behavior is for ConfirmDeviceCredentialActivity to invoke
cancel() only if it's still authenticating. Otherwise BiometricService
and its client will receive ERROR_CANCELED, instead of the actual password
auth result.

Bug: 138279856

Test: BiometricPromptDemo, enable device credential fallback, get into
      lockout state, successfully enter password. API result is
      success instead of "canceled" now.

Change-Id: I6521e896d0402fe856dc85476f51149c9b3084a8
Merged-In: I6521e896d0402fe856dc85476f51149c9b3084a8
(cherry picked from commit 49c7d07650)
2019-07-28 22:26:26 +00:00
Kevin Chyn
0a33d62a17 Do not request cancel authentication unless currently authenticating
Currently we always send cancel() if ConfirmDeviceCredentialActivity
goes into the background. However, if the biometric state is no longer
authenticating, requesting cancel() in this state will result in an
inconsistent state between BiometricService/client and
ConfirmDeviceCredentials.

BiometricService/client will receive the ERROR_CANCELED message incorrectly,
while ConfirmDeviceCredential is showing / pending user password. When
the password is entered, its result is ignored.

The correct behavior is for ConfirmDeviceCredentialActivity to invoke
cancel() only if it's still authenticating. Otherwise BiometricService
and its client will receive ERROR_CANCELED, instead of the actual password
auth result.

Bug: 138279856

Test: BiometricPromptDemo, enable device credential fallback, get into
      lockout state, successfully enter password. API result is
      success instead of "canceled" now.

Change-Id: I6521e896d0402fe856dc85476f51149c9b3084a8
2019-07-26 11:20:10 -07:00
Kevin Chyn
eeca918ac7 ConfirmDeviceCredential should respond to cancel when launched through BP
Fixes: 128747871

Test: BiometricPrompt launched by ConfirmDeviceCredential is canceled
Test: ConfirmLock* can also now be canceled
Test: No effect on non-biometric related paths

Change-Id: I237de136e63d523fece87fad7a93f4ecd66d800b
2019-04-04 17:22:23 +00:00
Rubin Xu
e0efe27f03 Force LSKF in ConfirmCredential UI when pending escrow token exists
Escrow tokens can only be activated by user confirming their LSKF,
while ConfirmCredential allows both LSKF and biometrics by default.
By requiring LSKF, it simplifies the DPC's flow of requesting the user
to activate a pending escrow token.

This change tweaks the ConfirmCredential UI to skip biometrics if pending
token exists.

Bug: 127377026
Bug: 76084679
Bug: 79547502
Test: manual
Change-Id: Iee9b2d57d7f4de98e225b3aeff7cc35cc8e3d36a
2019-03-18 17:20:26 +00:00
Kevin Chyn
200162b06a Use BiometricPrompt description field for CC description instead
The description field handles longer strings more gracefully

Fixes: 124001277

Test: 1) Open Wi-Fi picker
      2) Select gear on the connected network
      3) Select share button
      4) On BiometricPrompt, text is not cropped

Change-Id: I945830a137a0dc203bba04728b507ceff020dfdc
2019-02-14 17:43:45 -08:00
Kevin Chyn
e264bf3f66 Retrieve effectiveUserId after userId is set/re-set
Fixes: 123502937

Test: Followed steps in comment #1 of the first bug above
      Note that the test should be done with unified lock disabled, e.g.
      have separate pin/pattern/pass for owner and work profile

Change-Id: I01d66a8a1d3ed1811497c2acb7db6158d99727a0
2019-02-06 11:23:27 -08:00
Fan Zhang
c3fd289969 Remove dead code.
Bug: n/a
Test: rebuild
Change-Id: I71f8d9d99bbff1186e8df518ec8d27db3447ffbe
2019-01-29 16:27:31 -08:00
Kevin Chyn
e56df8877a CDCA is plumbed through BP
CDCA can be invoked with a bundle extra originating from BiometricService.
This allows us to add/forward new BP builder options to CDCA without having
duplicate API each time.

Bug: 111461540
Test: test app, receives correct callbacks
Test: CDC still works

Change-Id: Ia2080d161abba87949338176b34cdf440ed4ed53
2019-01-25 18:13:38 -08:00
Kevin Chyn
29aaf60ace Revert "Plumb setRequireConfirmation to CC"
This reverts commit 56c745c38e.

Reason for revert: Adding functionality differently

Change-Id: Iadc276ff32b9bef4ea3d7dc6dc051dcfc943e134
2019-01-25 17:49:31 -08:00
Kevin Chyn
56c745c38e Plumb setRequireConfirmation to CC
Bug: 111461540

Test: Tested with modified demo app with
      original and new KeyguardManager APIs

Change-Id: I56585fbfd704195586f2f516b35e9338e91b0346
2019-01-23 18:42:47 -08:00
Kevin Chyn
127da9c73c Fix ConfirmDeviceCredentials for work profiles
1) Fixed the theme for CDCA$InternalActivity to be transparent
2) CDCA only cares about biometrics, which are tied to userId
3) Moved shared methods to a util class

Fixes: 119296586

Test: Followed the steps in comment#1 of the bug linked above


Change-Id: Ie47fc7c3a53dfb7780087937e1ca83287cc52d71
2018-11-14 11:03:57 -08:00
Kevin Chyn
b3ee23154d 3/n: Make CDCA transparent and add BiometricPrompt
ConfirmDeviceCredentials now uses BiometricPrompt instead of
FingerprintManager

Bug: 111461540

Test: FRP does not display BiometricPrompt (as expected)
      adb shell settings put global device_provisioned 0 && adb shell am start -a android.app.action.CONFIRM_FRP_CREDENTIAL
Test: Using KeyguardManager API to launch, all corner cases seem OK
Test: Tested with work profile + one lock enabled/disabled, seems OK
Test: Enroll normal FP but not work FP, BiometricPromptDemo for both works
      OK
Test: Test CC on work version of BPD, then BP on normal version of BPD,
      both accept correct FP's (no regression from P)

Change-Id: Iacdaf76ab76971850212dc79513bfa3f4b89eb9a
2018-11-01 15:14:04 -07:00
Pavel Grafov
f20e34167e Respect per-user fingerprints on profiles with unified challenge.
When an app uses KeyguardManager.createConfirmDeviceCredentialIntent to ask
the user to confirm credentials, it first goes into ConfirmDeviceCredentialActivity
and then goes into ConfirmLockPattern/ConfirmLockPassword, that incorporates
a derivative of ConfirmDeviceCredentialBaseFragment to deal with the actual credential
and fingerprint checking.

There are two bits of logic that are changed:

1) ConfirmDeviceCredentialBaseFragment gets target user id from the intent,
then uses UserManager.getCredentialOwnerProfile to find the credential owner
user id. If the target user is a work profile with unified challenge,
profile owner will be primary user, otherwise it will be the same user.
When credential confirmation dialog is invoked via
KeyguardManager.createConfirmDeviceCredentialIntent, mUserId will already
correspond to credential owner because ConfirmDeviceCredentialActivity already
calls getCredentialOwnerUserId(), so real target user is not available.
With this CL ConfirmDeviceCredentialActivity doesn't query credential owner because
it will be handled later anyway.

2) Currently when confirming credentials for work profile with unified challenge
we use mEffectiveUserId (credential owner) for fingerprints, which is incorrect,
since fingerprints are per-user and primary profile fingerprints cannot unlock
work profile apps' auth-bound keys. With this CL work profile user is used for
fingerprints.

Bug: 111821299
Test: manual, tried ConfirmCredential sample app in both profiles
Test: manual, tried CA certificate installation in both profiles
Test: manual, tried separate work challenge
Change-Id: I074f773de1bd6207b01664f259bdd04766f32d41
2018-08-09 17:20:26 +01:00
Adrian Roos
5a9a3cde62 Credential FRP: Add ACTION_CONFIRM_FRP_CREDENTIAL to ConfirmCredential
Bug: 36814845
Test: adb shell settings put global device_provisioned 0 && adb shell am start -a android.app.action.CONFIRM_FRP_CREDENTIAL
Change-Id: Id6ce6bc5ebd9c9e2a88790cc800678aff50e580f
2017-05-30 18:25:18 -07:00
Maurice Lam
2eb170cd6f Clean up choose lock intent creation
Consolidated the many variants of ChooseLock*.createIntent, so that
it will take the same set of arguments.

Also modified SetupChooseLock*.createIntent to modifyIntentForSetup,
which will take the intent created by ChooseLock* and modify it for
use with setup.

Test: cd tests/robotests && mma
Change-Id: I5ff033f459c33ec9980872a536b3996d89f2bbbb
2017-05-12 15:35:20 -07:00