RasEapGetIdentity 関数 (raseapif.h)
RAS 接続マネージャーは RasEapGetIdentity 関数を呼び出して、認証を要求しているユーザーの ID 情報を取得します。
構文
DWORD RasEapGetIdentity(
[in] DWORD dwEapTypeId,
[in] HWND hwndParent,
[in] DWORD dwFlags,
[in] const WCHAR *pwszPhonebook,
[in] const WCHAR *pwszEntry,
[in] BYTE *pConnectionDataIn,
[in] DWORD dwSizeOfConnectionDataIn,
[in] BYTE *pUserDataIn,
[in] DWORD dwSizeOfUserDataIn,
[out] BYTE **ppUserDataOut,
[out] DWORD *pdwSizeOfUserDataOut,
[out] WCHAR **ppwszIdentityOut
);
パラメーター
[in] dwEapTypeId
ID ユーザー インターフェイスを呼び出す認証プロトコルを指定します。
[in] hwndParent
ユーザー インターフェイス ダイアログの親ウィンドウへのハンドル。 dwFlags パラメーターに RAS_EAP_FLAG_NON_INTERACTIVE フラグが含まれている場合、hwndParent は NULL です。
[in] dwFlags
認証プロセスを修飾する次のフラグを 0 個以上指定します。
[in] pwszPhonebook
電話帳 (PBK) ファイルの完全なパスを指定する null で終わる Unicode 文字列へのポインター。 このパラメーターが NULL の場合、関数はシステム電話帳を使用します。
[in] pwszEntry
既存のエントリ名を指定する null で終わる Unicode 文字列へのポインター。
[in] pConnectionDataIn
電話帳エントリに現在格納されている接続固有のデータへのポインター。
[in] dwSizeOfConnectionDataIn
電話帳エントリに現在格納されている接続固有のデータのサイズを指定します。
[in] pUserDataIn
レジストリにこのユーザー用に現在格納されているユーザー固有のデータへのポインター。
[in] dwSizeOfUserDataIn
レジストリにこのユーザー用に現在格納されているユーザー固有のデータのサイズを指定します。
[out] ppUserDataOut
正常に戻った場合に、ユーザーの ID データを指すポインターへのポインター。 このデータは、RasEapBegin の呼び出し中に、PPP_EAP_INPUT の pUserData メンバーの認証プロトコルに渡されます。
認証プロトコルは、ID データのメモリ バッファーを割り当てる必要があります。 RAS は RasEapFreeMemory を呼び出すことによってこのメモリを解放します。
[out] pdwSizeOfUserDataOut
ppUserDataOut パラメーターが指すデータのサイズを受け取る DWORD 変数へのポインター。
[out] ppwszIdentityOut
正常に戻った場合に、認証を要求しているユーザーを識別する null で終わる Unicode 文字列を指すポインターへのポインター。 この文字列は、RasEapBegin の呼び出し中に、PPP_EAP_INPUT の pszIdentity メンバーの認証プロトコルに渡されます。
戻り値
関数が成功した場合、戻り値は NO_ERROR。
関数がユーザー データにメモリを割り当てられなかった場合は、戻り値を ERROR_NOT_ENOUGH_MEMORYする必要があります。
関数が RAS_EAP_FLAG_NON_INTERACTIVE フラグを使用して呼び出されるが、ユーザーの ID を判断するためにユーザー インターフェイスを呼び出す必要がある場合、関数は ERROR_INTERACTIVE_MODEを返す必要があります。
関数が他の方法で失敗した場合、戻り値は Winerror.h、Raserror.h、または Mprerror.h からの適切なエラー コードである必要があります。
注釈
RasEapGetIdentity と RasEapFreeMemory を実装する DLL では、複数の認証プロトコルがサポートされている場合があります。 dwEapTypeId パラメーターは、ID ユーザー インターフェイスを呼び出すプロトコルを指定します。
IEEE 802.1X および PPP プロトコルでは、RasEapFreeMemory を実装しないと RasEapGetIdentity は呼び出されません。
認証プロトコルは、RasEapBegin 中に PPP_EAP_INPUT の pUserData メンバーの RasEapGetIdentity から返されたデータを受け取ります。 このユーザーのデータをレジストリに格納するには、認証プロトコルで、データを指すように PPP_EAP_OUTPUT の pUserData メンバーを設定し、PPP_EAP_OUTPUTの fSaveUserData メンバーを TRUE に設定する必要があります。
この関数は、 RAS 関数 RasGetEapUserIdentity によって呼び出されます。
RasEapGetIdentity にユーザー インターフェイスが表示される場合、ユーザー インターフェイスは LOWORD(wParam) が IDCANCEL と等しいWM_COMMANDメッセージをサポートする必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | raseapif.h |