다음을 통해 공유


EAP_AUTHENTICATOR_METHOD_ROUTINES 구조체(eapmethodauthenticatorapis.h)

EAPHost Authenticator 메서드 API에 대한 함수 포인터 집합을 포함합니다.

구문

typedef struct _EAP_AUTHENTICATOR_METHOD_ROUTINES {
  DWORD           dwSizeInBytes;
  EAP_METHOD_TYPE *pEapType;
  DWORD(EAP_METHOD_TYPE *pEapType,EAP_ERROR **ppEapError)          * )(EapMethodAuthenticatorInitialize;
  DWORD(ORD dwFlags,LPCWSTR pwszIdentity, const EapAttributes * const pAttributeArray,DWORD dwSizeofConnectionData, const BYTE * const pConnectionData,DWORD dwMaxSendPacketSize,EAP_SESSION_HANDLE *pSessionHandle,EAP_ERROR **ppEapError)          * )(DWEapMethodAuthenticatorBeginSession;
  DWORD(AP_SESSION_HANDLE sessionHandle,DWORD dwFlags, const WCHAR *pwszIdentity, const EapAttributes * const pAttributeArray,EAP_ERROR **ppEapError)          * )(EEapMethodAuthenticatorUpdateInnerMethodParams;
  DWORD(AP_SESSION_HANDLE sessionHandle,DWORD cbReceivePacket, const EapPacket * const pReceivePacket,EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION *pEapOutput,EAP_ERROR **ppEapError)          * )(EEapMethodAuthenticatorReceivePacket;
  DWORD(P_SESSION_HANDLE sessionHandle,BYTE bPacketId,DWORD *pcbSendPacket,EapPacket *pSendPacket,EAP_AUTHENTICATOR_SEND_TIMEOUT *pTimeout,EAP_ERROR **ppEapError)          * )(EAEapMethodAuthenticatorSendPacket;
  DWORD(EAP_SESSION_HANDLE sessionHandle,EapAttributes *pAttribs,EAP_ERROR **ppEapError)          * )(EapMethodAuthenticatorGetAttributes;
  DWORD(AP_SESSION_HANDLE sessionHandle, const EapAttributes * const pAttribs,EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION *pEapOutput,EAP_ERROR **ppEapError)          * )(EEapMethodAuthenticatorSetAttributes;
  DWORD(EAP_SESSION_HANDLE sessionHandle,EAP_METHOD_AUTHENTICATOR_RESULT *pResult,EAP_ERROR **ppEapError)          * )(EapMethodAuthenticatorGetResult;
  DWORD((EAP_SESSION_HANDLE sessionHandle,EAP_ERROR **ppEapError)          * )EapMethodAuthenticatorEndSession;
  DWORD(EAP_METHOD_TYPE *pEapType,EAP_ERROR **ppEapError)          * )(EapMethodAuthenticatorShutdown;
} EAP_AUTHENTICATOR_METHOD_ROUTINES, *PEAP_AUTHENTICATOR_METHOD_ROUTINES;

멤버

dwSizeInBytes

구현자가 정의한 구조체 버전입니다.

참고 이 필드의 값은 Microsoft에서 정의하지 않습니다.
 

pEapType

이 구조체의 멤버가 가리키는 API 의 구현자에 대한 공급업체 정보를 포함하는 EAP_METHOD_TYPE 구조체에 대한 포인터입니다.

EapMethodAuthenticatorInitialize

EapMethodAuthenticatorInitialize에 대한 함수 포인터입니다.

pEapType

EAP_METHOD_TYPE 이 세션에 사용할 EAP 인증 유형을 지정하는 열거형 값입니다.

ppEapError

이 함수 호출을 실행하는 동안 EAPHost에서 발생한 오류를 포함하는 EAP_ERROR 구조체의 주소에 대한 포인터입니다. 오류 데이터를 사용한 후에는 오류 데이터에 대한 포인터를 EapPeerFreeErrorMemory에 전달하여 이 메모리를 해제해야 합니다.

EapMethodAuthenticatorBeginSession

EapMethodAuthenticatorBeginSession에 대한 함수 포인터입니다.

dwFlags

EAP 인증 세션 동작을 설명하는 EAP 플래그의 조합입니다.

pwszIdentity

인증할 사용자의 ID를 포함하는 0으로 끝나는 유니코드 문자열입니다.

pAttributeArray

인증할 엔터티의 EAP 특성을 지정하는 EapAttributes 배열 구조체에 대한 포인터입니다.

dwSizeOfConnectionData

pConnectionData에 제공된 연결 데이터 버퍼의 크기(바이트)를 지정합니다.

pConnectionData

불투명 구성 데이터 BLOB을 포함하는 바이트 버퍼에 대한 포인터입니다.

dwMaxSendPacketSize

세션 중에 전송된 EAP 패킷의 최대 크기(바이트)를 지정합니다.

pSessionHandle

EAPHost 서버의 새 EAP 인증 세션에 대한 고유 ID를 포함하는 EAP_SESSION_HANDLE 구조체에 대한 포인터를 받습니다.

ppEapError

이 함수 호출을 실행하는 동안 EAPHost에서 발생한 오류를 포함하는 EAP_ERROR 구조체의 주소에 대한 포인터입니다. 오류 데이터를 사용한 후에는 오류 데이터에 대한 포인터를 EapPeerFreeErrorMemory에 전달하여 이 메모리를 해제해야 합니다.

EapMethodAuthenticatorUpdateInnerMethodParams

EapMethodAuthenticatorUpdateInnerMethodParams에 대한 함수 포인터입니다.

sessionHandle

EAP_SESSION_HANDLE EAPHost 서버의 EAP 인증 세션에 대한 특정 핸들을 포함하는 값입니다. 이 핸들은 EapMethodAuthenticatorBeginSession에 대한 이전 호출을 통해 가져옵니다.

dwFlags

EAP 인증 세션 동작을 설명하는 EAP 플래그의 조합입니다.

pwszIdentity

인증할 사용자의 업데이트된 ID를 포함하는 0으로 끝나는 유니코드 문자열입니다.

pAttributeArray

인증할 엔터티의 업데이트된 EAP 특성을 지정하는 EapAttributes 배열 구조체에 대한 포인터입니다.

ppEapError

이 함수 호출을 실행하는 동안 발생한 오류를 포함하는 EAP_ERROR 구조체의 주소에 대한 포인터입니다. 오류 데이터를 사용한 후에는 오류 데이터에 대한 포인터를 EapMethodAuthenticatorFreeErrorMemory에 전달하여 이 메모리를 해제해야 합니다.

EapMethodAuthenticatorReceivePacket

EapMethodAuthenticatorReceivePacket에 대한 함수 포인터입니다.

sessionHandle

EAP_SESSION_HANDLE EAPHost 서버의 EAP 인증 세션에 대한 특정 핸들을 포함하는 값입니다. 이 핸들은 EapMethodAuthenticatorBeginSession에 대한 이전 호출을 통해 가져옵니다.

cbReceivePacket

pReceivePacket의 크기(바이트)입니다.

pReceivePacket

EAPHost 서버에서 지원자로부터 받은 EAP 인증 세션 패킷을 포함하는 EapPacket 구조체에 대한 포인터입니다.

pEapOutput

EAP 인증 세션에서 지원자가 수행해야 하는 다음 작업을 나타내는 EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION 열거형 값에 대한 포인터를 받습니다.

ppEapError

이 함수 호출을 실행하는 동안 EAPHost에서 발생한 오류를 포함하는 EAP_ERROR 구조체의 주소에 대한 포인터입니다. 오류 데이터를 사용한 후에는 오류 데이터에 대한 포인터를 EapMethodAuthenticatorFreeErrorMemory에 전달하여 이 메모리를 해제해야 합니다.

EapMethodAuthenticatorSendPacket

EapMethodAuthenticatorSendPacket에 대한 함수 포인터입니다.

sessionHandle

EAP_SESSION_HANDLE EAPHost 서버의 EAP 인증 세션에 대한 특정 핸들을 포함하는 값입니다. 이 핸들은 EapMethodAuthenticatorBeginSession에 대한 이전 호출을 통해 가져옵니다.

bPacketId

보낼 패킷의 숫자 ID 값을 지정합니다.

pcbSendPacket

보낼 패킷의 최대 크기(바이트)를 지정합니다. 반환 시 이 매개 변수는 pEapPacket에서 반환된 패킷의 크기(바이트)를 받습니다.

pSendPacket

지원자에게 보낼 패킷이 포함된 EapPacket 구조체에 대한 포인터를 받습니다.

pTimeout

패킷의 시간 제한을 지정하는 EAP_AUTHENTICATOR_SEND_TIMEOUT 값에 대한 포인터를 받습니다.

ppEapError

이 함수 호출을 실행하는 동안 발생한 오류를 포함하는 EAP_ERROR 구조체의 주소에 대한 포인터입니다. 오류 데이터를 사용한 후 오류 데이터에 대한 포인터를 EapMethodAuthenticatorFreeErrorMemory에 전달하여 이 메모리를 해제해야 합니다.

EapMethodAuthenticatorGetAttributes

EapMethodAuthenticatorGetAttributes에 대한 함수 포인터입니다.

sessionHandle

EAP_SESSION_HANDLE EAPHost 서버의 EAP 인증 세션에 대한 특정 핸들을 포함하는 값입니다. 이 핸들은 EapMethodAuthenticatorBeginSession에 대한 이전 호출을 통해 가져옵니다.

pAttribs

지원자의 EAP 인증 응답 특성 배열을 포함하는 EapAttributes 구조체에 대한 포인터를 받습니다.

ppEapError

이 함수 호출을 실행하는 동안 발생한 오류를 포함하는 EAP_ERROR 구조체의 주소에 대한 포인터입니다. 오류 데이터를 사용한 후 오류 데이터에 대한 포인터를 EapMethodAuthenticatorFreeErrorMemory에 전달하여 이 메모리를 해제해야 합니다.

EapMethodAuthenticatorSetAttributes

EapMethodAuthenticatorSetAttributes에 대한 함수 포인터입니다.

sessionHandle

EAP_SESSION_HANDLE EAPHost 서버의 EAP 인증 세션에 대한 특정 핸들을 포함하는 값입니다. 이 핸들은 EapMethodAuthenticatorBeginSession에 대한 이전 호출을 통해 가져옵니다.

pAttribs

EAPHost의 supplicant에 대해 설정할 새 EAP 인증 응답 특성의 배열을 포함하는 EapAttributes 구조체에 대한 포인터입니다.

pEapOutput

지원자가 업데이트된 특성에 대한 응답으로 수행해야 하는 제안된 작업을 지정하는 EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION 열거형 값에 대한 포인터를 받습니다.

ppEapError

이 함수 호출을 실행하는 동안 발생한 오류를 포함하는 EAP_ERROR 구조체의 주소에 대한 포인터입니다. 오류 데이터를 사용한 후에는 오류 데이터에 대한 포인터를 EapMethodAuthenticatorFreeErrorMemory에 전달하여 이 메모리를 해제해야 합니다.

EapMethodAuthenticatorGetResult

EapMethodAuthenticatorGetResult에 대한 함수 포인터입니다.

sessionHandle

EAP_SESSION_HANDLE EAPHost 서버의 EAP 인증 세션에 대한 특정 핸들을 포함하는 값입니다. 이 핸들은 EapMethodAuthenticatorBeginSession에 대한 이전 호출을 통해 가져옵니다.

pResult

인증 결과가 포함된 EAP_METHOD_AUTHENTICATOR_RESULT 구조에 대한 포인터를 받습니다.

ppEapError

이 함수 호출을 실행하는 동안 EAPHost에서 발생한 오류를 포함하는 EAP_ERROR 구조체의 주소에 대한 포인터입니다. 오류 데이터를 사용한 후에는 오류 데이터에 대한 포인터를 EapMethodAuthenticatorFreeErrorMemory에 전달하여 이 메모리를 해제해야 합니다.

EapMethodAuthenticatorEndSession

EapMethodAuthenticatorEndSession에 대한 함수 포인터입니다.

sessionHandle

서버 EAPHost에서 닫을 EAP 인증 세션에 대한 특정 핸들을 포함하는 EAP_SESSION_HANDLE 값입니다. 이 핸들은 EapMethodAuthenticatorBeginSession에 대한 이전 호출을 통해 가져옵니다.

ppEapError

이 함수 호출을 실행하는 동안 EAPHost에서 발생한 오류를 포함하는 EAP_ERROR 구조체의 주소에 대한 포인터입니다. 오류 데이터를 사용한 후에는 오류 데이터에 대한 포인터를 EapMethodAuthenticatorFreeErrorMemory에 전달하여 이 메모리를 해제해야 합니다.

EapMethodAuthenticatorShutdown

EapMethodAuthenticatorShutdown에 대한 함수 포인터입니다.

pEapType

세션에서 사용되는 EAP 인증 유형을 지정하는 EAP_METHOD_TYPE 열거형 값입니다.

ppEapError

이 함수 호출을 실행하는 동안 발생한 오류가 포함된 EAP_ERROR 구조체의 주소에 대한 포인터입니다. 오류 데이터를 사용한 후에는 오류 데이터에 대한 포인터를 EapMethodAuthenticatorFreeErrorMemory에 전달하여 이 메모리를 해제해야 합니다.

설명

모든 EAP 인증자 메서드 DLL에는 다음 API의 공용 구현이 있어야 합니다.

이러한 API는 인증자(서버) EAPHost가 피어(클라이언트) EAP 메서드에서 특정 해당 원격 프로시저 호출을 수신할 때 EAP 인증자 메서드에서 호출됩니다. EAP 피어 메서드와 EAP 인증자 메서드 사이에는 완전한 일대일 대응이 없습니다. 특정 EAP 인증자 메서드 API 호출은 EAP 인증자 메서드 API 호출 구현의 요구 사항에 따라 수행해야 합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
머리글 eapmethodauthenticatorapis.h

추가 정보

EAPHost Authenticator 메서드 구조

EapMethodAuthenticatorGetInfo