Fonction RasEapGetIdentity (raseapif.h)
Le gestionnaire de connexions RAS appelle la fonction RasEapGetIdentity pour obtenir des informations d’identité pour l’utilisateur qui demande l’authentification.
Syntaxe
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
);
Paramètres
[in] dwEapTypeId
Spécifie le protocole d’authentification pour lequel appeler l’interface utilisateur de l’identité.
[in] hwndParent
Gérez la fenêtre parente pour la boîte de dialogue de l’interface utilisateur. Si le paramètre dwFlags contient l’indicateur RAS_EAP_FLAG_NON_INTERACTIVE, hwndParent a la valeur NULL.
[in] dwFlags
Spécifie zéro ou plusieurs des indicateurs suivants qui qualifient le processus d’authentification.
[in] pwszPhonebook
Pointeur vers une chaîne Unicode terminée par un caractère Null qui spécifie le chemin d’accès complet du fichier d’annuaire téléphonique (PBK). Si ce paramètre a la valeur NULL, la fonction utilise l’annuaire téléphonique système.
[in] pwszEntry
Pointeur vers une chaîne Unicode terminée par null qui spécifie un nom d’entrée existant.
[in] pConnectionDataIn
Pointeur vers les données spécifiques à la connexion actuellement stockées dans l’entrée de l’annuaire téléphonique.
[in] dwSizeOfConnectionDataIn
Spécifie la taille des données spécifiques à la connexion actuellement stockées dans l’entrée de l’annuaire téléphonique.
[in] pUserDataIn
Pointeur vers les données spécifiques à l’utilisateur actuellement stockées pour cet utilisateur dans le Registre.
[in] dwSizeOfUserDataIn
Spécifie la taille des données spécifiques à l’utilisateur actuellement stockées pour cet utilisateur dans le Registre.
[out] ppUserDataOut
Pointeur vers un pointeur qui, en cas de retour réussi, pointe vers les données d’identité de l’utilisateur. Ces données seront passées au protocole d’authentification dans le membre pUserData de PPP_EAP_INPUT lors de l’appel à RasEapBegin.
Le protocole d’authentification doit allouer la mémoire tampon pour les données d’identité. RAS libérera cette mémoire en appelant RasEapFreeMemory.
[out] pdwSizeOfUserDataOut
Pointeur vers une variable DWORD qui reçoit la taille des données pointées par le paramètre ppUserDataOut .
[out] ppwszIdentityOut
Pointeur vers un pointeur qui, en cas de retour réussi, pointe vers une chaîne Unicode terminée par null qui identifie l’utilisateur qui demande l’authentification. Cette chaîne est passée au protocole d’authentification dans le membre pszIdentity de PPP_EAP_INPUT lors de l’appel à RasEapBegin.
Valeur retournée
Si la fonction réussit, la valeur de retour est NO_ERROR.
Si la fonction n’a pas pu allouer de mémoire pour les données utilisateur, la valeur de retour doit être ERROR_NOT_ENOUGH_MEMORY.
Si la fonction est appelée avec l’indicateur RAS_EAP_FLAG_NON_INTERACTIVE, mais doit appeler une interface utilisateur pour déterminer l’identité de l’utilisateur, la fonction doit retourner ERROR_INTERACTIVE_MODE.
Si la fonction échoue d’une autre manière, la valeur de retour doit être un code d’erreur approprié de Winerror.h, Raserror.h ou Mprerror.h.
Remarques
La DLL qui implémente RasEapGetIdentity et RasEapFreeMemory peut prendre en charge plusieurs protocoles d’authentification. Le paramètre dwEapTypeId spécifie pour quel protocole appeler l’interface utilisateur d’identité.
Les protocoles IEEE 802.1X et PPP n’appellent pas RasEapGetIdentity sans une implémentation de RasEapFreeMemory.
Le protocole d’authentification reçoit les données retournées par RasEapGetIdentity dans le membre pUserData de PPP_EAP_INPUT pendant RasEapBegin. Pour stocker les données de cet utilisateur dans le Registre, le protocole d’authentification doit définir le membre pUserData de PPP_EAP_OUTPUT pour qu’il pointe vers les données, et le membre fSaveUserData de PPP_EAP_OUTPUT sur TRUE.
Cette fonction est appelée par la fonction RAS, RasGetEapUserIdentity.
Si RasEapGetIdentity affiche une interface utilisateur, l’interface utilisateur doit prendre en charge WM_COMMAND messages où LOWORD(wParam) est égal à IDCANCEL.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | raseapif.h |
Voir aussi
Informations de référence sur le protocole d’authentification extensible