Condividi tramite


Funzione WlanSetProfileEapUserData (wlanapi.h)

La funzione WlanSetProfileEapUserData imposta le credenziali utente EAP (Extensible Authentication Protocol) come specificato dai dati EAP non elaborati. Le credenziali utente si applicano a un profilo in un'interfaccia.

Sintassi

DWORD WlanSetProfileEapUserData(
  [in] HANDLE          hClientHandle,
  [in] const GUID      *pInterfaceGuid,
  [in] LPCWSTR         strProfileName,
  [in] EAP_METHOD_TYPE eapType,
  [in] DWORD           dwFlags,
  [in] DWORD           dwEapUserDataSize,
  [in] const LPBYTE    pbEapUserData,
       PVOID           pReserved
);

Parametri

[in] hClientHandle

Handle di sessione del client, ottenuto da una chiamata precedente alla funzione WlanOpenHandle .

[in] pInterfaceGuid

GUID dell'interfaccia.

[in] strProfileName

Nome del profilo associato ai dati utente EAP. I nomi dei profili fanno distinzione tra maiuscole e minuscole. Questa stringa deve essere con terminazione NULL.

[in] eapType

Struttura EAP_METHOD_TYPE che contiene il metodo per il quale il chiamante fornisce le credenziali utente EAP.

[in] dwFlags

Set di flag che modificano il comportamento della funzione.

In Windows Vista e Windows Server 2008 questo parametro è riservato e deve essere impostato su zero.

In Windows 7, Windows Server 2008 R2 e versioni successive, questo parametro può essere uno dei valori seguenti.

Valore Significato
WLAN_SET_EAPHOST_DATA_ALL_USERS
0x00000001
Impostare i dati dell'host EAP per tutti gli utenti di questo profilo.

[in] dwEapUserDataSize

Dimensione, in byte, dei dati a cui punta pbEapUserData.

[in] pbEapUserData

Puntatore ai dati EAP non elaborati usati per impostare le credenziali utente.

In Windows Vista e Windows Server 2008 questo parametro non deve essere NULL.

In Windows 7, Windows Server 2008 R2 e versioni successive, questo parametro può essere impostato su NULL per eliminare le credenziali archiviate per questo profilo se il parametro dwFlags contiene WLAN_SET_EAPHOST_DATA_ALL_USERS e il parametro dwEapUserDataSize è 0.

pReserved

Riservato per utilizzi futuri. Deve essere impostato su NULL.

Valore restituito

Se la funzione ha esito positivo, il valore restituito viene ERROR_SUCCESS.

Se la funzione ha esito negativo, il valore restituito può essere uno dei codici restituiti seguenti.

Codice restituito Descrizione
ERROR_ACCESS_DENIED
Accesso negato. Questo valore viene restituito se il chiamante non ha accesso in scrittura al profilo.
ERROR_INVALID_PARAMETER
Un parametro non è corretto. Questo valore viene restituito se si verifica una delle condizioni seguenti:
  • hClientHandle è NULL.
  • pInterfaceGuid è NULL.
  • strProfileName è NULL
  • pvReserved non è NULL.

In Windows Vista e Windows Server 2008 questo valore viene restituito se il parametro pbEapUserData è NULL.

In Windows 7, Windows Server 2008 R2 e versioni successive, questo errore viene restituito se il parametro pbEapUserData è NULL, ma il parametro dwEapUserDataSize non è 0 o il parametro dwFlags non contiene WLAN_SET_EAPHOST_DATA_ALL_USERS.

ERROR_INVALID_HANDLE
Handle non valido. Questo errore viene restituito se l'handle hClientHandle non è stato trovato nella tabella handle.
ERROR_NOT_ENOUGH_MEMORY
Non è disponibile spazio di archiviazione sufficiente per elaborare questo comando.
ERROR_NOT_SUPPORTED
La richiesta non è supportata.

Questo valore viene restituito quando le impostazioni del profilo non consentono l'archiviazione dei dati utente. Ciò può verificarsi quando è abilitato un singolo signon (SSO) o quando la richiesta doveva eliminare le credenziali archiviate per questo profilo (il parametro pbEapUserData era NULL, il parametro dwFlags contiene WLAN_SET_EAPHOST_DATA_ALL_USERS e il parametro dwEapUserDataSize è 0).

In Windows 10, Windows Server 2016 e versioni successive, questo valore viene restituito se la funzione WlanSetProfileEapUserData è stata chiamata in un profilo che usa un metodo diverso da 802.1X per l'autenticazione.

Questo valore viene restituito anche se questa funzione è stata chiamata da un'API Windows XP con SP3 o LAN wireless per Windows XP con il client SP2.

ERROR_SERVICE_NOT_ACTIVE
Il servizio non è stato avviato. Questo valore viene restituito se il servizio LAN wireless non è in esecuzione.
RPC_STATUS
Vari codici di errore.

Commenti

La funzione WlanSetProfileEapUserData imposta le credenziali utente EAP da usare in un profilo. In Windows Vista e Windows Server 2008 queste credenziali possono essere usate solo dal chiamante.

Il parametro eapType è una struttura EAP_METHOD_TYPE che contiene informazioni di tipo, identificazione e autore su un metodo EAP. Il membro eapType della struttura EAP_METHOD_TYPE è una struttura EAP_TYPE che contiene le informazioni di identificazione del tipo e del fornitore per un metodo EAP.

Per altre informazioni sull'allocazione dei tipi di metodo EAP, vedere la sezione 6.2 di RFC 3748 pubblicata da IETF.

In Windows 7, Windows Server 2008 R2 e versioni successive, la funzione WlanSetProfileEapUserData è migliorata. Le credenziali utente EAP possono essere impostate per tutti gli utenti di un profilo se il parametro dwFlags contiene WLAN_SET_EAPHOST_DATA_ALL_USERS. È anche possibile eliminare le credenziali utente EAP in un profilo. Per eliminare le credenziali utente EAP in un profilo, il parametro pbEapUserData deve essere NULL, il parametro dwFlags deve essere uguale a WLAN_SET_EAPHOST_DATA_ALL_USERS e il parametro dwEapUserDataSize deve essere 0.

Tutte le funzioni LAN wireless richiedono un GUID di interfaccia per l'interfaccia wireless durante l'esecuzione di operazioni del profilo. Quando viene rimossa un'interfaccia wireless, il relativo stato viene cancellato dal servizio LAN wireless (WLANSVC) e non è possibile eseguire alcuna operazione di profilo.

La funzione WlanSetProfileEapUserData può avere esito negativo con ERROR_INVALID_PARAMETER se l'interfaccia wireless specificata nel parametro pInterfaceGuid è stata rimossa dal sistema (ad esempio una scheda wireless USB rimossa).

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wlanapi.h (include Wlanapi.h)
Libreria Wlanapi.lib
DLL Wlanapi.dll

Vedi anche

EAP_METHOD_TYPE

EAP_TYPE

WlanGetProfile

WlanGetProfileCustomUserData

WlanGetProfileList

WlanSetProfile

WlanSetProfileEapXmlUserData