Función RasEapGetIdentity (raseapif.h)
El administrador de conexiones RAS llama a la función RasEapGetIdentity para obtener información de identidad para el usuario que solicita autenticación.
Sintaxis
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
);
Parámetros
[in] dwEapTypeId
Especifica el protocolo de autenticación para el que se va a invocar la interfaz de usuario de identidad.
[in] hwndParent
Controlar en la ventana primaria del cuadro de diálogo de la interfaz de usuario. Si el parámetro dwFlags contiene la marca RAS_EAP_FLAG_NON_INTERACTIVE, hwndParent es NULL.
[in] dwFlags
Especifica cero o más de las marcas siguientes que califican el proceso de autenticación.
[in] pwszPhonebook
Puntero a una cadena Unicode terminada en null que especifica la ruta de acceso completa del archivo de libreta telefónica (PBK). Si este parámetro es NULL, la función usa la libreta telefónica del sistema.
[in] pwszEntry
Puntero a una cadena Unicode terminada en null que especifica un nombre de entrada existente.
[in] pConnectionDataIn
Puntero a los datos específicos de la conexión almacenados actualmente en la entrada de la libreta de teléfonos.
[in] dwSizeOfConnectionDataIn
Especifica el tamaño de los datos específicos de la conexión almacenados actualmente en la entrada de la libreta de teléfonos.
[in] pUserDataIn
Puntero a los datos específicos del usuario almacenados actualmente para este usuario en el registro.
[in] dwSizeOfUserDataIn
Especifica el tamaño de los datos específicos del usuario almacenados actualmente para este usuario en el registro.
[out] ppUserDataOut
Puntero a un puntero que, al devolverse correctamente, apunta a los datos de identidad del usuario. Estos datos se pasarán al protocolo de autenticación en el miembro pUserData de PPP_EAP_INPUT durante la llamada a RasEapBegin.
El protocolo de autenticación debe asignar el búfer de memoria para los datos de identidad. RAS liberará esta memoria llamando a RasEapFreeMemory.
[out] pdwSizeOfUserDataOut
Puntero a una variable DWORD que recibe el tamaño de los datos a los que apunta el parámetro ppUserDataOut .
[out] ppwszIdentityOut
Puntero a un puntero que, al devolverse correctamente, apunta a una cadena Unicode terminada en null que identifica al usuario que solicita autenticación. Esta cadena se pasa al protocolo de autenticación en el miembro pszIdentity de PPP_EAP_INPUT durante la llamada a RasEapBegin.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es NO_ERROR.
Si la función no pudo asignar memoria para los datos de usuario, el valor devuelto debe ser ERROR_NOT_ENOUGH_MEMORY.
Si se llama a la función con la marca RAS_EAP_FLAG_NON_INTERACTIVE, pero debe invocar una interfaz de usuario para determinar la identidad del usuario, la función debe devolver ERROR_INTERACTIVE_MODE.
Si se produce un error en la función de alguna otra manera, el valor devuelto debe ser un código de error adecuado de Winerror.h, Raserror.h o Mprerror.h.
Comentarios
El archivo DLL que implementa RasEapGetIdentity y RasEapFreeMemory pueden admitir más de un protocolo de autenticación. El parámetro dwEapTypeId especifica para qué protocolo se va a invocar la interfaz de usuario de identidad.
Los protocolos IEEE 802.1X y PPP no llaman a RasEapGetIdentity sin una implementación de RasEapFreeMemory.
El protocolo de autenticación recibe los datos devueltos por RasEapGetIdentity en el miembro pUserData de PPP_EAP_INPUT durante RasEapBegin. Para almacenar los datos de este usuario en el Registro, el protocolo de autenticación debe establecer el miembro pUserData de PPP_EAP_OUTPUT para que apunte a los datos y el miembro fSaveUserData de PPP_EAP_OUTPUT en TRUE.
La función RAS llama a esta función, RasGetEapUserIdentity.
Si RasEapGetIdentity muestra una interfaz de usuario, la interfaz de usuario debe admitir WM_COMMAND mensajes en los que LOWORD(wParam) sea igual a IDCANCEL.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | raseapif.h |
Consulte también
Referencia del protocolo de autenticación extensible