Compartir a través de


estructura EAP_PEER_METHOD_ROUTINES (eapmethodpeerapis.h)

Contiene un conjunto de punteros de función a las API del método del mismo nivel de EAPHost.

Sintaxis

typedef struct _EAP_PEER_METHOD_ROUTINES {
  DWORD    dwVersion;
  EAP_TYPE *pEapType;
  DWORD((EAP_ERROR **ppEapError)   * )EapPeerInitialize;
  DWORD(lags,DWORD dwSizeofConnectionData, const BYTE *pConnectionData,DWORD dwSizeofUserData, const BYTE *pUserData,HANDLE hTokenImpersonateUser,BOOL *pfInvokeUI,DWORD *pdwSizeOfUserDataOut,BYTE **ppUserDataOut,WCHAR **ppwszIdentity,EAP_ERROR **ppEapError)   * )(DWORD fEapPeerGetIdentity;
  DWORD(RD dwFlags, const EapAttributes * const pAttributeArray,HANDLE hTokenImpersonateUser,DWORD dwSizeofConnectionData,BYTE *pConnectionData,DWORD dwSizeofUserData,BYTE *pUserData,DWORD dwMaxSendPacketSize,EAP_SESSION_HANDLE *pSessionHandle,EAP_ERROR **ppEapError)   * )(DWOEapPeerBeginSession;
  DWORD(AP_SESSION_HANDLE sessionHandle,WCHAR *pwszIdentity,WCHAR *pwszPassword,EAP_ERROR **ppEapError)   * )(EEapPeerSetCredentials;
  DWORD(AP_SESSION_HANDLE sessionHandle,DWORD cbReceivePacket,EapPacket *pReceivePacket,EapPeerMethodOutput *pEapOutput,EAP_ERROR **ppEapError)   * )(EEapPeerProcessRequestPacket;
  DWORD(AP_SESSION_HANDLE sessionHandle,DWORD *pcbSendPacket,EapPacket *pSendPacket,EAP_ERROR **ppEapError)   * )(EEapPeerGetResponsePacket;
  DWORD(EAP_SESSION_HANDLE sessionHandle,EapPeerMethodResultReason reason,EapPeerMethodResult *ppResult,EAP_ERROR **ppEapError)   * )(EapPeerGetResult;
  DWORD(P_SESSION_HANDLE sessionHandle,DWORD *dwSizeOfUIContextData,BYTE **pUIContextData,EAP_ERROR **ppEapError)   * )(EAEapPeerGetUIContext;
  DWORD(AP_SESSION_HANDLE sessionHandle,DWORD dwSizeOfUIContextData, const BYTE *pUIContextData,EapPeerMethodOutput *pEapOutput,EAP_ERROR **ppEapError)   * )(EEapPeerSetUIContext;
  DWORD(EAP_SESSION_HANDLE sessionHandle,EapAttributes *pAttribs,EAP_ERROR **ppEapError)   * )(EapPeerGetResponseAttributes;
  DWORD(AP_SESSION_HANDLE sessionHandle,EapAttributes *pAttribs,EapPeerMethodOutput *pEapOutput,EAP_ERROR **ppEapError)   * )(EEapPeerSetResponseAttributes;
  DWORD((EAP_SESSION_HANDLE sessionHandle,EAP_ERROR **ppEapError)   * )EapPeerEndSession;
  DWORD((EAP_ERROR **ppEapError)   * )EapPeerShutdown;
} EAP_PEER_METHOD_ROUTINES;

Miembros

dwVersion

Versión de la estructura definida por el implementador.

Nota Microsoft no define los valores de este campo.
 

pEapType

Puntero a una estructura de EAP_TYPE que contiene la información del proveedor sobre el implementador de las API a las que apuntan los miembros de esta estructura.

EapPeerInitialize

Puntero de función para EapPeerInitialize.

pEapError

Puntero a la estructura EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse pasando un puntero a EapPeerFreeErrorMemory.

EapPeerGetIdentity

Puntero de función para EapPeerGetIdentity.

Dwflags

Combinación de marcas EAP que describen el comportamiento de la sesión de autenticación de EAP.

dwSizeofConnectionData

Especifica el tamaño, en bytes, del búfer de datos de conexión proporcionado en pConnectionData.

pConnectionData

Puntero a un búfer de bytes que contiene el BLOB de datos de configuración opaco.

dwSizeOfUserData

Especifica el tamaño, en bytes, del búfer de datos de usuario proporcionado en pUserData.

pUserData

Puntero a los datos de usuario específicos de esta autenticación que se usan para rellenar previamente los datos de usuario. Cuando se llama a esta API por primera vez o cuando se inicia una nueva sesión de autenticación, este parámetro es NULL. De lo contrario, establezca este parámetro en el miembro pUserData de la estructura a la que apunta el parámetro ppResult recibido por EapPeerGetResult.

hTokenImpersonateUser

Especifica un identificador para el token de suplantación del usuario que se está autenticando. Este identificador será NULL al realizar la autenticación de la máquina. Con este identificador, un método EAP puede suplantar al usuario para obtener información específica del usuario, como el nombre de usuario, el nombre de dominio y las credenciales.

pfInvokeUI

Devuelve TRUE si la identidad del usuario y el blob de datos de usuario no se devuelven correctamente y el método busca recopilar la información del usuario a través del cuadro de diálogo de la interfaz de usuario.

pdwSizeOfUserDataOut

Especifica el tamaño, en bytes, del búfer ppUserDataOut .

ppUserDataOut

Puntero a un puntero a los datos de usuario devueltos. Los datos se pasan a EapPeerBeginSession como entrada pUserData.

ppwszIdentity

Puntero a la identidad de usuario devuelta. El puntero se incluirá en el paquete de respuesta de identidad y se devolverá al servidor.

ppEapError

Puntero al puntero a una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse llamando a EapPeerFreeErrorMemory.

EapPeerBeginSession

Puntero de función para EapPeerBeginSession.

dwFlags

Combinación de marcas EAP que describen el nuevo comportamiento de sesión de autenticación de EAP.

pAttributeArray

Puntero a una estructura de matriz EAP_ATTRIBUTES que especifica los atributos EAP de la entidad que se van a autenticar.

hTokenImpersonateUser

Especifica un identificador para el token de suplantación de usuario que se usará en esta sesión.

dwSizeOfConnectionData

Especifica el tamaño, en bytes, del búfer de datos de conexión proporcionado en pConnectionData.

pConnectionData

Puntero a un búfer de bytes que contiene el BLOB de datos de configuración opaco.

dwSizeOfUserData

Especifica el tamaño en bytes del búfer de datos de usuario proporcionado en pUserData.

pUserData

Puntero a un búfer de bytes que contiene el BLOB de datos de usuario opaco.

dwMaxSendPacketSize

Especifica el tamaño máximo en bytes de un paquete EAP enviado durante la sesión. Si el método necesita enviar un paquete mayor que el tamaño máximo, el método debe acomodar la fragmentación y el reaensamblaje.

pSessionHandle

Puntero a una estructura de EAP_SESSION_HANDLE que contiene el identificador único de la nueva sesión de autenticación de EAP en EAPHost

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados por EAPHost durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse llamando a EapPeerFreeErrorMemory.

EapPeerSetCredentials

Puntero de función para EapPeerSetCredentials.

sessionHandle

Puntero a una estructura de EAP_SESSION_HANDLE que contiene el identificador único de esta sesión de autenticación de EAP en el servidor EAPHost. Este identificador se devuelve en el parámetro pSessionHandle en una llamada anterior a EapPeerBeginSession.

pwszIdentity

Puntero que especifica la identidad de usuario para la que se van a establecer las credenciales. Esta cadena de identidad de usuario se obtiene mediante una llamada a la función EapPeerGetIdentity .

pwszPassword

Puntero que contiene la contraseña de texto no cifrado para la identidad del usuario.

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse llamando a EapPeerFreeErrorMemory.

EapPeerProcessRequestPacket

Puntero de función para EapPeerProcessRequestPacket.

sessionHandle

EAP_SESSION_HANDLE valor que contiene el identificador específico de la sesión de autenticación de EAP en EAPHost. Este identificador se obtiene mediante una llamada anterior a EapPeerBeginSession.

cbReceivePacket

Tamaño en bytes del paquete de solicitud especificado en pReceivePacket.

pReceivePacket

Puntero a una estructura EapPacket que contiene el paquete de solicitud que se va a procesar.

pEapOutput

Puntero a una estructura EapPeerMethodOutput que contiene la salida de la operación de proceso de paquete.

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse llamando a EapPeerFreeErrorMemory.

EapPeerGetResponsePacket

Puntero de función para EapPeerGetResponsePacket.

sessionHandle

EAP_SESSION_HANDLE valor que contiene el identificador específico de la sesión de autenticación de EAP en EAPHost. Este identificador se obtiene mediante una llamada anterior a EapPeerBeginSession.

pcbSendPacket

Puntero a un valor que contiene el tamaño en bytes del búfer asignado para el paquete de respuesta. A la devolución, este parámetro recibe un puntero al tamaño real en bytes de pSendPacket.

pSendPacket

Puntero a una estructura EapPacket que contiene el paquete de respuesta.

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse llamando aEapPeerFreeErrorMemory.

EapPeerGetResult

Puntero de función para EapPeerGetResult.

sessionHandle

EAP_SESSION_HANDLE valor que contiene el identificador específico para la sesión de autenticación de EAP en EAPHost. Este identificador se obtiene mediante una llamada anterior a EapPeerBeginSession.

reason

Valor de enumeración que especifica el código de motivo del resultado de autenticación devuelto en ppResult.

ppResult

Puntero a una estructura EapHostPeerMethodResult que contiene los resultados de autenticación.

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse pasando un puntero a EapPeerFreeErrorMemory.

EapPeerGetUIContext

Puntero de función para EapPeerGetUIContext.

sessionHandle

EAP_SESSION_HANDLE valor que contiene el identificador específico para la sesión de autenticación de EAP en EAPHost. Este identificador se obtiene mediante una llamada anterior a EapPeerBeginSession.

pdwSizeOfUIContextData

Puntero a un valor que especifica el tamaño del búfer de bytes de datos de contexto de la interfaz de usuario devuelto en ppUIContextData.

ppUIContextData

Puntero a una dirección que contiene un búfer de bytes con los datos de contexto de la interfaz de usuario supplicantes de EAPHost.

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse pasando un puntero a los datos de error a EapPeerFreeErrorMemory.

EapPeerSetUIContext

Puntero de función para EapPeerSetUIContext.

sessionHandle

EAP_SESSION_HANDLE valor que contiene el identificador específico para la sesión de autenticación de EAP en EAPHost. Este identificador se obtiene mediante una llamada anterior a EapPeerBeginSession.

dwSizeOfUIContextData

Puntero a un valor que especifica el tamaño del búfer de bytes de datos de contexto de la interfaz de usuario proporcionado en pUIContextData.

pUIContextData

Puntero a una dirección que contiene un búfer de bytes con los nuevos datos de contexto de interfaz de usuario supplicantes que se van a establecer en EAPHost.

pEapOutput

Puntero a una estructura EapPeerMethodOutput que contiene la salida de la operación de proceso de paquetes.

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse pasando un puntero a EapPeerFreeErrorMemory.

EapPeerGetResponseAttributes

Puntero de función para EapPeerGetResponseAttributes.

sessionHandle

EAP_SESSION_HANDLE valor que contiene el identificador específico para la sesión de autenticación de EAP en EAPHost. Este identificador se obtiene mediante una llamada anterior a EapPeerBeginSession.

pAttribs

Recibe un puntero a una estructura de EAP_ATTRIBUTES que contiene una matriz de atributos de respuesta de autenticación EAP para el supplicante.

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse llamando aEapPeerFreeErrorMemory.

EapPeerSetResponseAttributes

Puntero de función para EapPeerSetResponseAttributes.

sessionHandle

EAP_SESSION_HANDLE valor que contiene el identificador específico para la sesión de autenticación de EAP en EAPHost. Este identificador se obtiene mediante una llamada anterior a EapPeerBeginSession.

pAttribs

Puntero a una estructura de EAP_ATTRIBUTES que contiene una matriz de nuevos atributos de respuesta de autenticación EAP que se van a establecer para el supplicante en EAPHost.

pEapOutput

Puntero a una estructura EapPeerMethodOutput que especifica la acción sugerida que el suplicante debe realizar como respuesta a los atributos actualizados.

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse llamando a EapPeerFreeErrorMemory.

EapPeerEndSession

Puntero de función para EapPeerEndSession.

sessionHandle

EAP_SESSION_HANDLE valor que contiene el identificador específico de la sesión de autenticación de EAP para cerrarse en EAPHost. Este identificador se obtiene mediante una llamada anterior a EapPeerBeginSession.

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse llamando a EapPeerFreeErrorMemory.

EapPeerShutdown

Puntero de función para EapPeerShutdown.

ppEapError

Puntero a la dirección de una estructura de EAP_ERROR que contiene los errores generados durante la ejecución de esta llamada de función. Después de consumir los datos de error, esta memoria debe liberarse pasando un puntero a EapPeerFreeErrorMemory.

Comentarios

Cada DLL de método de EAP debe implementar las SIGUIENTES API:

Estas API corresponden a las llamadas realizadas por un supplicante y sirven como proxy entre las llamadas API del supplicante y las API públicas expuestas en el archivo DLL del método EAP. Por lo tanto, cuando un supplicante realiza una llamada a un EAPHost basado en pares para establecer una sesión de autenticación o para realizar una operación durante esa sesión, EAPHost llama a la función implementada correspondiente en el archivo DLL del método EAP con los datos de parámetro proporcionados. Las funciones del método EAP se administran mediante punteros a sus respectivos puntos de entrada.

Las demás funciones del conjunto de API del método del mismo nivel de EAP se llaman mediante un EAPHost basado en el mismo nivel sin una llamada suplicante correspondiente y se usan para la validación de conexiones o las operaciones de generación de la interfaz de usuario.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado eapmethodpeerapis.h

Consulte también

Estructuras de método del mismo nivel de EAPHost

EapPeerGetInfo