Language

ConfirmationPrompt クラス

定義

確認プロンプトを表示するために使用されるクラス。

[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
継承
ConfirmationPrompt
属性

注釈

確認プロンプトを表示するために使用されるクラス。

確認プロンプトは、特定のテキストを確認するためにユーザーに表示されるプロンプトであり、Android フレームワーク (カーネルを含む) が侵害された場合でも、ユーザーが特定のテキストを見たことを高い信頼で肯定的な応答が示す方法で実装されます。 これらの保証を使用して確認プロンプトを実装するには、専用のハードウェア サポートが必要であり、常に使用できるわけではありません。

確認プロンプトは、通常、外部エンティティ ( 証明書利用者 ) と共に次のように使用されます。 セットアップ手順は次のとおりです。 <ul><li> 最初に使用する前に、アプリケーションは android.security.keystore.KeyGenParameterSpec.Builder#setUserConfirmationRequired CONFIRMATION tag が設定されたキーペアを生成します。 AndroidKeyStore キーの構成証明 (たとえば、 android.security.keystore.KeyGenParameterSpec.Builder#setAttestationChallenge(byte[]) ) は、新しく生成されたキーの公開キー (次のKpub ) を含む証明書チェーンを生成するために使用されます。 <li> アプリケーションは Kpub と、デバイスの構成証明に起因する証明書チェーン を証明書利用者に送信します。 <li>証明書利用者は、ルート証明書の確認 (Google からの証明書など) を含む証明書チェーンを検証し、各証明書はチェーン内の次の証明書に署名し、Kpubで終わり、Kpubandroid.security.keystore.KeyGenParameterSpec.Builder#setUserConfirmationRequired CONFIRMATION tagが設定されていることを証明証明書がアサートします。 さらに、証明書利用者は Kpub を格納し、それを受信したデバイスに関連付けます。 </ul>

証明書利用者は通常、外部デバイス (たとえば、Bluetooth経由で接続) またはアプリケーション サーバーです。

ユーザー コンテンツの高い保証を必要とするトランザクションを実行する前に、アプリケーションは次の処理を行います: <ul><li> アプリケーションは 証明書利用者 から暗号化 nonce を取得し、これを (Builder ヘルパー クラスを介して) extraData として #presentPrompt presentPrompt() メソッドに渡します。 証明書利用者は、後の手順で使用するため、nonce をローカルに格納します。 <li>ユーザーがプロンプトを承認すると、コールバックでConfirmationCallback#onConfirmed onConfirmed(byte[])パラメーターとしてdataThatWasConfirmedが返されます。 この BLOB には、ユーザーに表示されたテキスト、 extraData パラメーター、および場合によっては他のデータが含まれます。 <li> アプリケーションは、前に作成したキーを使用して 確認応答 に署名し、BLOB と署名 を証明書利用者に送信します。 <li>証明書利用者は、署名がKpubで作成されたことを確認し、promptTextが想定されているものと一致し、extraData以前に作成された nonce と一致することを抽出します。 すべてのチェックに合格すると、トランザクションが実行されます。 </ul>

注: これはユーザーが承認した唯一の部分であるため、 promptText を確認することが重要です。 考えられるすべてのロケールに対してパーサーを記述しないようにするには、 証明書利用者 がデバイスで使用されているのと同じ文字列ジェネレーターを使用し、単純な文字列比較を実行することをお勧めします。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

コンストラクター

名前 説明
ConfirmationPrompt(IntPtr, JniHandleOwnership)

確認プロンプトを表示するために使用されるクラス。

プロパティ

名前 説明
Class

この Objectのランタイム クラスを返します。

(継承元 Object)
Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
JniIdentityHashCode

相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。

(継承元 Object)
JniManagedPeerState

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)
JniPeerMembers

確認プロンプトを表示するために使用されるクラス。

PeerReference

このJava ピアの JNI オブジェクト参照を取得します。

(継承元 Object)
ThresholdClass

確認プロンプトを表示するために使用されるクラス。

ThresholdType

確認プロンプトを表示するために使用されるクラス。

メソッド

名前 説明
CancelPrompt()

現在表示されているプロンプトを取り消します。

Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)
Dispose()

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
Dispose(Boolean)

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
DisposeUnlessReferenced()

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)
Equals(Object)

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
IsSupported(Context)

デバイスが確認プロンプトをサポートしているかどうかを確認します。

JavaFinalize()
古い.

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
PresentPrompt(IExecutor, ConfirmationCallback)

確認プロンプトをユーザーに表示するように要求します。

SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)
ToArray<T>()

このJava配列ラッパーからマネージド配列を作成します。

(継承元 Object)
ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
UnregisterFromRuntime()

相互運用ランタイムからこのJava ピアの登録を解除します。

(継承元 Object)
Wait()

現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)

明示的なインターフェイスの実装

名前 説明
IJavaPeerable.Disposed()

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)
IJavaPeerable.Finalized()

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

確認プロンプトを表示するために使用されるクラス。

(継承元 JavaObject)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

確認プロンプトを表示するために使用されるクラス。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象