Tunnel メソッド API 呼び出しシーケンス
このトピックでは、Tunnel メソッドの API 呼び出しシーケンスについて説明します
Tunnel メソッドの呼び出しシーケンスの概要
Supplicant がユーザー ID とユーザー データの要求を取得すると、通常、次の API 呼び出しフローが発生します。
- サプリカントは、EapHost 上で EapHostPeerProcessReceivedPacket を呼び出して、認証者から受信したパケットを処理します。
- このパケットを処理すると、EAPHost はそれを IdentityRequest パケットとして判断し、トンネル メソッドで EapPeerGetIdentity を呼び出して、認証に使用するユーザー ID を取得します。
- トンネル メソッドが内部メソッドからユーザー ID を取得する必要がある場合は、内部 EAPHost で EAPHostPeerGetIdentity を呼び出し、内部メソッドで EapPeerGetIdentity を呼び出します。
Tunnel メソッド API 呼び出しフローを使用したユーザー操作
特定のケースでは、ID が利用できない場合や、ユーザーが追加情報を提供する必要がある場合、Eap Method はサプリカントにユーザー インターフェイス ダイアログ ボックスを表示します。
このような場合、通常、ユーザーから直接情報を取得するために次の呼び出しシーケンスが実行されます。
Tunnel Eap メソッドは、UI を EapHost に呼び出すアクション コードを返します。 サプリカントは EapHostPeerGetUIContext を呼び出して、ユーザー インターフェイス ダイアログ ボックスの現在のユーザー インターフェイス コンテキスト情報を取得します。
その後、Supplicant は EapHostPeerInvokeInteractiveUI. を呼び出します。この関数は、UI コンテキスト情報を使用して、ユーザーから資格情報を取得するために使用される対話型ユーザー インターフェイスを生成します。 UI プロセスは Eappcfg.dll を読み込み、EapPeerInvokeInteractiveUI と EapPeerFreeMemory へのポインターを取得します。
Note
UI プロセスは通常、UI を収集するか、対話型 UI を処理します。これはサプリカント プロセスとは別です。 2 つのプロセスを分離することは EAPHost の要件ではありませんが、これを行うと、UI プロセスがデスクトップとやり取りできるという利点があります。
EapHost はトンネル メソッド EapPeerInvokeIdentityUI を呼び出して、ユーザー ID 情報を取得します。
内部メソッドからユーザー ID を取得するために、トンネル メソッドは内部 EAPHost EapHostPeerInvokeIdentityUI を呼び出します。
内部 EAPHost は、内部メソッド EapPeerInvokeIdentityUI を呼び出して、ユーザー ID UI を呼び出します。
EapHostPeerSetUIContext は、UI が発生した後に EAPHost に読み込まれた EAP ピア メソッドに新しい UI コンテキスト情報または更新された UI コンテキスト情報を提供します。
次の図では、Tunnel メソッドの API 呼び出しシーケンスについて説明します
関連トピック