Credential storage triggers unlock when keystore is locked.
If the phone is in the unlocked state and keystore is locked, storing credentials asks for a password that does not exist to the user. Replace this workflow with a key guard confirmation, asking the user to unlock the screen in the same way they would normally unlock their phone. Bug: 68298609 Test: adb push sample_credentials.p12 /sdcard/ Test: adb shell su 1000 service call android.security.keystore 9 i32 0 Test: adb shell am start -a android.credentials.INSTALL --user 10 Test: adb shell su 1000 service call android.security.keystore 9 i32 10 Change-Id: I8a3068a5d7de508fb417016acdf41b1712a2e7cc
This commit is contained in:
@@ -1,53 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (C) 2011 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<LinearLayout
|
||||
android:orientation="vertical"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:padding="15dip">
|
||||
|
||||
<TextView android:id="@+id/hint"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="10sp"/>
|
||||
|
||||
<TextView android:id="@+id/error"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="10sp"
|
||||
android:textColor="@color/red"
|
||||
android:textStyle="bold"
|
||||
android:visibility="gone"/>
|
||||
|
||||
<TextView android:id="@+id/old_password_prompt"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/credentials_old_password"
|
||||
android:visibility="gone"/>
|
||||
|
||||
<EditText android:id="@+id/old_password"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:password="true"
|
||||
android:singleLine="true"
|
||||
android:visibility="gone"/>
|
||||
</LinearLayout>
|
||||
</ScrollView>
|
@@ -5613,27 +5613,12 @@
|
||||
<string name="credential_for_vpn_and_apps">Installed for VPN and apps</string>
|
||||
<!-- Sub-heading for a user credential installed to be used as part of a Wi-Fi configuration. [CHAR LIMIT=NONE]. -->
|
||||
<string name="credential_for_wifi">Installed for Wi-Fi</string>
|
||||
|
||||
<!-- Title of dialog to enable credential storage [CHAR LIMIT=30] -->
|
||||
<string name="credentials_unlock"></string>
|
||||
<!-- Description of dialog to enable credential storage [CHAR LIMIT=NONE] -->
|
||||
<string name="credentials_unlock_hint">Type the password for credential storage.</string>
|
||||
<!-- Description of the input box for the old password [CHAR LIMIT=30] -->
|
||||
<string name="credentials_old_password">Current password:</string>
|
||||
<!-- Description of dialog to reset credential storage [CHAR LIMIT=NONE] -->
|
||||
<string name="credentials_reset_hint">Remove all the contents?</string>
|
||||
<!-- Error message [CHAR LIMIT=NONE] -->
|
||||
<string name="credentials_wrong_password">Incorrect password.</string>
|
||||
<!-- Error message [CHAR LIMIT=NONE] -->
|
||||
<string name="credentials_reset_warning">Incorrect password. You have one more chance before credential storage is erased.</string>
|
||||
<!-- Error message [CHAR LIMIT=NONE] -->
|
||||
<string name="credentials_reset_warning_plural">Incorrect password. You have <xliff:g id="number" example="5">%1$d</xliff:g> more chances before credential storage is erased.</string>
|
||||
<!-- Toast message [CHAR LIMIT=30] -->
|
||||
<string name="credentials_erased">Credential storage is erased.</string>
|
||||
<!-- Toast message [CHAR LIMIT=30] when credential storage containing private keys and certificates could not be erased (opposite of string credentials_erased) -->
|
||||
<string name="credentials_not_erased">Credential storage couldn\u2019t be erased.</string>
|
||||
<!-- Toast message [CHAR LIMIT=30] -->
|
||||
<string name="credentials_enabled">Credential storage is enabled.</string>
|
||||
<!-- This string is in a dialog, and the dialog shows up on a device that's managed by a user's company. It lets the user know that they need to have a secure lock screen (PIN, password, or pattern) before they can use credential storage [CHAR LIMIT=NONE] -->
|
||||
<string name="credentials_configure_lock_screen_hint">Before you can use credential storage, your device need to have a secure lock screen</string>
|
||||
<!-- This string is for the content of the button that leads user to lock screen settings [CHAR LIMIT=20] -->
|
||||
|
Reference in New Issue
Block a user