ConfirmationPrompt Klasse
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.
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.
[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
- Vererbung
- Attribute
Hinweise
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird.
Bestätigungsaufforderungen sind Aufforderungen, die dem Benutzer angezeigt werden, um einen bestimmten Text zu bestätigen, und werden so implementiert, dass eine positive Antwort mit hoher Zuverlässigkeit anzeigt, dass der Benutzer den angegebenen Text gesehen hat, auch wenn das Android-Framework (einschließlich des Kernels) kompromittiert wurde. Die Implementierung von Bestätigungsaufforderungen mit diesen Garantien erfordert dedizierte Hardwareunterstützung und ist möglicherweise nicht immer verfügbar.
Bestätigungsaufforderungen werden in der Regel mit einer externen Entität – der vertrauenden Seite – wie folgt verwendet. Die Einrichtungsschritte lauten wie folgt: <ul><li> Vor der ersten Verwendung generiert die Anwendung ein Schlüsselpaar mit dem android.security.keystore.KeyGenParameterSpec.Builder#setUserConfirmationRequired CONFIRMATION tag
Satz. Der AndroidKeyStore-Schlüsselnachweis wird z. B. verwendet, um eine Zertifikatkette zu generieren, android.security.keystore.KeyGenParameterSpec.Builder#setAttestationChallenge(byte[])
die den öffentlichen Schlüssel (Kpub
im Folgenden) des neu generierten Schlüssels enthält. <li> Die Anwendung sendet Kpub
und die Zertifikatkette, die sich aus dem Gerätenachweis an die vertrauende Seite ergibt. <Li> Die vertrauende Seite überprüft die Zertifikatkette, bei der überprüft wird, ob das Stammzertifikat erwartungsgemäß ist (z. B. ein Zertifikat von Google), jedes Zertifikat signiert das nächste Zertifikat in der Kette und endet mit Kpub
, und dass das Nachweiszertifikat bestätigt, dass Kpub
der android.security.keystore.KeyGenParameterSpec.Builder#setUserConfirmationRequired CONFIRMATION tag
festgelegt ist. Darüber hinaus speichert Kpub
und ordnet die vertrauende Seite es dem Gerät zu, von dem sie empfangen wurde. </ul>
Die vertrauende Seite ist in der Regel ein externes Gerät (z. B. über Bluetooth verbunden) oder ein Anwendungsserver.
Vor dem Ausführen einer Transaktion, die eine hohe Sicherheit des Benutzerinhalts erfordert, führt die Anwendung Folgendes aus: <ul><li> Die Anwendung ruft eine kryptografische Nonce von der vertrauenden Seite ab und übergibt diese ( extraData
über die Builder-Hilfsklasse) an die #presentPrompt presentPrompt()
-Methode. Die vertrauende Seite speichert die Nonce lokal, da sie sie in einem späteren Schritt verwendet. <li> Wenn der Benutzer die Eingabeaufforderung genehmigt, wird im ConfirmationCallback#onConfirmed onConfirmed(byte[])
Rückruf eine Bestätigungsantwort als dataThatWasConfirmed
Parameter zurückgegeben. Dieses Blob enthält den Text, der dem Benutzer angezeigt wurde, den extraData
Parameter und möglicherweise andere Daten. <li> Die Anwendung signiert die Bestätigungsantwort mit dem zuvor erstellten Schlüssel und sendet das Blob und die Signatur an die vertrauende Seite. <li> Die vertrauende Seite überprüft, ob die Signatur mit Kpub
erstellt wurde, und extrahiert promptText
dann, was erwartet wird, und extraData
entspricht der zuvor erstellten Nonce. Wenn alle Überprüfungen erfolgreich sind, wird die Transaktion ausgeführt. </ul>
Hinweis: Es ist wichtig, die promptText
zu überprüfen, da dies der einzige Teil ist, den der Benutzer genehmigt hat. Um das Schreiben von Parsern für alle möglichen Gebietsschemas zu vermeiden, wird empfohlen, dass die vertrauende Seite den gleichen Zeichenfolgengenerator wie auf dem Gerät verwendet und einen einfachen Zeichenfolgenvergleich durchführt.
Java-Dokumentation für android.security.ConfirmationPrompt
.
Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
ConfirmationPrompt(IntPtr, JniHandleOwnership) |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. |
Eigenschaften
Class |
Gibt die Laufzeitklasse dieses |
Handle |
Das Handle für die zugrunde liegende Android-instance. (Geerbt von Object) |
JniIdentityHashCode |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
JniPeerMembers |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. |
PeerReference |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
ThresholdClass |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. |
ThresholdType |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. |
Methoden
CancelPrompt() |
Bricht eine Eingabeaufforderung ab, die derzeit angezeigt wird. |
Clone() |
Erstellt und gibt eine Kopie dieses Objekts zurück. (Geerbt von Object) |
Dispose() |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
Dispose(Boolean) |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem objekt ist. (Geerbt von Object) |
GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
IsSupported(Context) |
Überprüft, ob das Gerät Bestätigungsaufforderungen unterstützt. |
JavaFinalize() |
Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection feststellt, dass keine Verweise mehr auf das Objekt vorhanden sind. (Geerbt von Object) |
Notify() |
Aktiviert einen einzelnen Thread, der auf den Monitor dieses Objekts wartet. (Geerbt von Object) |
NotifyAll() |
Aktiviert alle Threads, die auf den Monitor dieses Objekts warten. (Geerbt von Object) |
PresentPrompt(IExecutor, ConfirmationCallback) |
Fordert eine Bestätigungsaufforderung an, die dem Benutzer angezeigt wird. |
SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
ToArray<T>() |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
UnregisterFromRuntime() |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
Wait() |
Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert ist, in der Regel durch <>Benachrichtigung</em> oder <em>interrupted</em>. (Geerbt von Object) |
Wait(Int64) |
Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert ist, in der Regel durch>< Benachrichtigung</em> oder <em>interrupted</em>, oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Wait(Int64, Int32) |
Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert ist, in der Regel durch>< Benachrichtigung</em> oder <em>interrupted</em>, oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
IJavaPeerable.Disposed() |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
IJavaPeerable.Finalized() |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
IJavaPeerable.JniManagedPeerState |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. (Geerbt von Object) |
Erweiterungsmethoden
JavaCast<TResult>(IJavaObject) |
Führt eine Typkonvertierung mit Überprüfung der Android-Laufzeit aus. |
JavaCast<TResult>(IJavaObject) |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. |
GetJniTypeName(IJavaPeerable) |
Klasse, die zum Anzeigen von Bestätigungsaufforderungen verwendet wird. |