KeyGenParameterSpec.Builder.SetUnlockedDeviceRequired(Boolean) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Imposta se questa chiave è autorizzata a essere usata solo quando il dispositivo è sbloccato.
[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
Parametri
- unlockedDeviceRequired
- Boolean
Valori restituiti
- Attributi
Commenti
Imposta se questa chiave è autorizzata a essere usata solo quando il dispositivo è sbloccato.
Il dispositivo viene considerato bloccato per un utente quando le app dell'utente sono attualmente inaccessibili e alcune forme di autenticazione della schermata di blocco sono necessarie per riottenere l'accesso. Per la definizione completa, vedere KeyguardManager.isDeviceLocked().
Le operazioni con chiave pubblica non sono limitate da setUnlockedDeviceRequired(true) e possono essere eseguite anche mentre il dispositivo è bloccato. In Android 11 (livello API 30) e versioni inferiori, le operazioni di crittografia e verifica con chiavi simmetriche non sono state limitate.
Le chiavi che usano setUnlockedDeviceRequired(true) possono essere importate e generate anche mentre il dispositivo è bloccato, purché il dispositivo sia stato sbloccato almeno una volta dall'ultimo riavvio. Tuttavia, tali chiavi non possono essere usate (ad eccezione delle operazioni senza restrizioni indicate in precedenza) fino a quando il dispositivo non viene sbloccato. Le app che devono crittografare i dati mentre il dispositivo è bloccato in modo che possano essere decrittografate solo mentre il dispositivo è sbloccato può generare una chiave e crittografare i dati nel software, importare la chiave nell'archivio chiavi usando setUnlockedDeviceRequired(true) e zeroizzare la chiave originale.
setUnlockedDeviceRequired(true) è correlato a ma distinto da setUserAuthenticationRequired(true). setUnlockedDeviceRequired(true) richiede che il dispositivo venga sbloccato, mentre setUserAuthenticationRequired(true) richiede che si sia verificato un tipo specifico di autenticazione avanzata entro un periodo di tempo specifico. Possono essere utilizzati insieme o separatamente; vi sono casi in cui un requisito può essere soddisfatto, ma non l'altro.
Avviso: prestare attenzione usando setUnlockedDeviceRequired(true) in Android 14 (livello API 34) e inferiore, poiché i bug seguenti esistevano in Android da 12 a 14: quando l'utente non ha una schermata di blocco sicura, non è stato possibile generare, importare o usare le chiavi necessarie per il dispositivo sbloccato; Quando la schermata di blocco sicura dell'utente è stata rimossa, tutte le chiavi sbloccate dell'utente sono state eliminate automaticamente; Sbloccare il dispositivo con una biometria non avanzata, ad esempio il viso in molti dispositivi, non ha autorizzato di nuovo l'uso di chiavi sbloccate-dispositivo-richieste; Lo sblocco del dispositivo con una biometria non ha autorizzato nuovamente l'uso di chiavi sbloccate-dispositivo-richieste nei profili che condividono il blocco dell'utente padre. Questi problemi vengono risolti in Android 15, quindi le app possono evitarle usando setUnlockedDeviceRequired(true) solo in Android 15 e versioni successive. Le app che usano setUnlockedDeviceRequired(true) e setUserAuthenticationRequired(true) non sono interessate dai primi due problemi, poiché i primi due problemi descrivono il comportamento previsto per setUserAuthenticationRequired(true).
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.