Condividi tramite


ConfirmationPrompt Classe

Definizione

Classe usata per visualizzare le richieste di conferma.

[Android.Runtime.Register("android/security/ConfirmationPrompt", ApiSince=28, DoNotGenerateAcw=true)]
public class ConfirmationPrompt : Java.Lang.Object
[<Android.Runtime.Register("android/security/ConfirmationPrompt", ApiSince=28, DoNotGenerateAcw=true)>]
type ConfirmationPrompt = class
    inherit Object
Ereditarietà
ConfirmationPrompt
Attributi

Commenti

Classe usata per visualizzare le richieste di conferma.

Le richieste di conferma vengono richieste visualizzate all'utente per confermare un determinato testo e vengono implementate in modo che una risposta positiva indica con alta attendibilità che l'utente ha visto il testo specificato, anche se il framework Android (incluso il kernel) è stato compromesso. L'implementazione di richieste di conferma con queste garanzie richiede supporto hardware dedicato e potrebbe non essere sempre disponibile.

Le richieste di conferma vengono in genere usate con un'entità esterna, la Relying Party , nel modo seguente. I passaggi di installazione sono i seguenti: <ul><li> Prima dell'uso, l'applicazione genera una coppia di chiavi con il android.security.keystore.KeyGenParameterSpec.Builder#setUserConfirmationRequired CONFIRMATION tag set. L'attestazione della chiave AndroidKeyStore, ad esempio, android.security.keystore.KeyGenParameterSpec.Builder#setAttestationChallenge(byte[]) viene usata per generare una catena di certificati che include la chiave pubblica (Kpub nella seguente) della chiave appena generata. <li> L'applicazione invia Kpub e la catena di certificati risultante dall'attestazione del dispositivo alla Relying Party. <li> La Relying Party convalida la catena di certificati che implica il controllo del certificato radice è quello previsto (ad esempio un certificato da Google), ogni certificato firma il successivo nella catena, terminando con Kpube che il certificato di attestazione asserisce che Kpub ha il android.security.keystore.KeyGenParameterSpec.Builder#setUserConfirmationRequired CONFIRMATION tag set. Inoltre, la relying party archivia Kpub e la associa al dispositivo ricevuto. </ul>

La Relying Party è in genere un dispositivo esterno (ad esempio connesso tramite Bluetooth) o un server applicazioni.

Prima di eseguire una transazione che richiede un'elevata garanzia del contenuto utente, l'applicazione esegue le operazioni seguenti: <ul><li> L'applicazione ottiene un nonce crittografico dalla Relying Party e lo passa come extraData (tramite la classe helper Builder) al #presentPrompt presentPrompt() metodo. La Relying Party archivia il nonce in locale perché lo userà in un passaggio successivo. <li> Se l'utente approva il prompt di una risposta di conferma viene restituito nel ConfirmationCallback#onConfirmed onConfirmed(byte[]) callback come dataThatWasConfirmed parametro. Questo BLOB contiene il testo visualizzato all'utente, al extraData parametro e eventualmente ad altri dati. <li> L'applicazione firma la risposta di conferma con la chiave creata in precedenza e invia il BLOB e la firma alla Relying Party. <li> La Relying Party controlla che la firma sia stata effettuata con Kpub e quindi estraa promptText corrisponde a ciò che è previsto e extraData corrisponde al nonce creato in precedenza. Se vengono superati tutti i controlli, la transazione viene eseguita. </ul>

Nota: è fondamentale controllare promptText perché questa è l'unica parte che l'utente ha approvato. Per evitare di scrivere parser per tutte le impostazioni locali possibili, è consigliabile che Relying Party usi lo stesso generatore di stringhe usato nel dispositivo ed esegue un semplice confronto tra stringhe.

Documentazione Java per android.security.ConfirmationPrompt.

Le parti di questa pagina sono modifiche in base al lavoro creato e condiviso dal Android Open Source e usato in base ai termini descritti nella .

Costruttori

ConfirmationPrompt(IntPtr, JniHandleOwnership)

Classe usata per visualizzare le richieste di conferma.

Proprietà

Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Handle

Handle all'istanza di Android sottostante.

(Ereditato da Object)
JniIdentityHashCode

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
JniPeerMembers

Classe usata per visualizzare le richieste di conferma.

PeerReference

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
ThresholdClass

Classe usata per visualizzare le richieste di conferma.

ThresholdType

Classe usata per visualizzare le richieste di conferma.

Metodi

CancelPrompt()

Annulla una richiesta attualmente visualizzata.

Clone()

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
Dispose()

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
Dispose(Boolean)

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
Equals(Object)

Indica se un altro oggetto è "uguale a" questo.

(Ereditato da Object)
GetHashCode()

Restituisce un valore del codice hash per l'oggetto.

(Ereditato da Object)
IsSupported(Context)

Verifica se il dispositivo supporta le richieste di conferma.

JavaFinalize()

Chiamato dal Garbage Collector in un oggetto quando Garbage Collection determina che non sono presenti più riferimenti all'oggetto.

(Ereditato da Object)
Notify()

Riattiva un singolo thread in attesa del monitoraggio dell'oggetto.

(Ereditato da Object)
NotifyAll()

Riattiva tutti i thread in attesa del monitoraggio dell'oggetto.

(Ereditato da Object)
PresentPrompt(IExecutor, ConfirmationCallback)

Richiede una richiesta di conferma da presentare all'utente.

SetHandle(IntPtr, JniHandleOwnership)

Imposta la proprietà Handle.

(Ereditato da Object)
ToArray<T>()

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
ToString()

Restituisce una rappresentazione in formato stringa dell'oggetto.

(Ereditato da Object)
UnregisterFromRuntime()

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
Wait()

Causa l'attesa del thread corrente fino a quando non viene svegliata, in genere eseguendo>una notifica</em o <em interrotto</>em>>.<

(Ereditato da Object)
Wait(Int64)

Causa l'attesa del thread corrente fino a quando non viene svegliata, in genere <>eseguendo una notifica</em o <em interrotto/>>em>o fino a quando non è trascorsa< una determinata quantità di tempo reale.

(Ereditato da Object)
Wait(Int64, Int32)

Causa l'attesa del thread corrente fino a quando non viene svegliata, in genere <>eseguendo una notifica</em o <em interrotto/>>em>o fino a quando non è trascorsa< una determinata quantità di tempo reale.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

IJavaPeerable.Disposed()

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
IJavaPeerable.DisposeUnlessReferenced()

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
IJavaPeerable.Finalized()

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
IJavaPeerable.JniManagedPeerState

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Classe usata per visualizzare le richieste di conferma.

(Ereditato da Object)

Metodi di estensione

JavaCast<TResult>(IJavaObject)

Esegue una conversione dei tipi controllati dal runtime Android.

JavaCast<TResult>(IJavaObject)

Classe usata per visualizzare le richieste di conferma.

GetJniTypeName(IJavaPeerable)

Classe usata per visualizzare le richieste di conferma.

Si applica a