KeyGenParameterSpec.Builder.SetUnlockedDeviceRequired(Boolean) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Legt fest, ob dieser Schlüssel nur verwendet werden kann, wenn das Gerät entsperrt ist.
[Android.Runtime.Register("setUnlockedDeviceRequired", "(Z)Landroid/security/keystore/KeyGenParameterSpec$Builder;", "", ApiSince=28)]
public Android.Security.Keystore.KeyGenParameterSpec.Builder SetUnlockedDeviceRequired(bool unlockedDeviceRequired);
[<Android.Runtime.Register("setUnlockedDeviceRequired", "(Z)Landroid/security/keystore/KeyGenParameterSpec$Builder;", "", ApiSince=28)>]
member this.SetUnlockedDeviceRequired : bool -> Android.Security.Keystore.KeyGenParameterSpec.Builder
Parameter
- unlockedDeviceRequired
- Boolean
Gibt zurück
- Attribute
Hinweise
Legt fest, ob dieser Schlüssel nur verwendet werden kann, wenn das Gerät entsperrt ist.
Das Gerät gilt als gesperrt für einen Benutzer, wenn auf die Apps des Benutzers derzeit nicht zugegriffen werden kann und eine Form der Sperrbildschirmauthentifizierung erforderlich ist, um wieder auf sie zuzugreifen. Die vollständige Definition finden Sie unter KeyguardManager.isDeviceLocked().
Öffentliche Schlüsselvorgänge sind nicht durch setUnlockedDeviceRequired(true) eingeschränkt und können auch dann ausgeführt werden, wenn das Gerät gesperrt ist. In Android 11 (API-Ebene 30) und niedrigeren Verschlüsselungs- und Überprüfungsvorgängen mit symmetrischen Schlüsseln wurden auch nicht eingeschränkt.
Schlüssel, die setUnlockedDeviceRequired(true) verwenden, können importiert und generiert werden, auch wenn das Gerät gesperrt ist, solange das Gerät seit dem letzten Neustart mindestens einmal entsperrt wurde. Solche Schlüssel können jedoch nicht verwendet werden (mit Ausnahme der oben genannten uneingeschränkten Vorgänge), bis das Gerät entsperrt ist. Apps, die Daten verschlüsseln müssen, während das Gerät gesperrt ist, sodass es nur entschlüsselt werden kann, während das Gerät entsperrt ist, können einen Schlüssel generieren und die Daten in der Software verschlüsseln, den Schlüssel mithilfe von setUnlockedDeviceRequired(true) in Keystore importieren und den ursprünglichen Schlüssel nullisieren.
setUnlockedDeviceRequired(true) ist mit "setUserAuthenticationRequired(true)" verknüpft. setUnlockedDeviceRequired(true) erfordert, dass das Gerät entsperrt wird, während setUserAuthenticationRequired(true) erfordert, dass innerhalb eines bestimmten Zeitraums eine bestimmte Art von starker Authentifizierung erfolgt ist. Sie können zusammen oder separat verwendet werden; es gibt Fälle, in denen eine Anforderung erfüllt werden kann, aber nicht die andere.
Warnung: Achten Sie darauf, setUnlockedDeviceRequired(true) unter Android 14 (API-Ebene 34) und niedriger zu verwenden, da die folgenden Fehler in Android 12 bis 14 aufgetreten sind: Wenn der Benutzer keinen sicheren Sperrbildschirm hat, konnten nicht entsperrte, für das Gerät erforderliche Schlüssel generiert, importiert oder verwendet werden; Wenn der sichere Sperrbildschirm des Benutzers entfernt wurde, wurden alle entsperrten geräterelevanten Schlüssel automatisch gelöscht; Das Entsperren des Geräts mit einer nicht starken biometrischen Daten, wie z. B. Gesichtserkennung auf vielen Geräten, hat die Verwendung entsperrter schlüssel erforderlicher Schlüssel nicht erneut autorisiert; Durch die Entsperrung des Geräts mit einer biometrischen Daten wurde die Verwendung entsperrter schlüssel erforderlicher Geräte in Profilen, die die Sperre des übergeordneten Benutzers gemeinsam nutzen, nicht erneut autorisiert. Diese Probleme wurden in Android 15 behoben, sodass Apps diese mithilfe von setUnlockedDeviceRequired(true) nur unter Android 15 und höher vermeiden können. Apps, die sowohl setUnlockedDeviceRequired(true) als auch setUserAuthenticationRequired(true) verwenden, sind von den ersten beiden Problemen nicht betroffen, da die ersten beiden Probleme das erwartete Verhalten für setUserAuthenticationRequired(true) beschreiben.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.