Função WlanSetProfileEapUserData (wlanapi.h)

A função WlanSetProfileEapUserData define as credenciais de usuário do Protocolo de Autenticação Extensível (EAP), conforme especificado pelos dados brutos do EAP. As credenciais do usuário se aplicam a um perfil em uma interface.

Sintaxe

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
);

Parâmetros

[in] hClientHandle

O identificador de sessão do cliente, obtido por uma chamada anterior para a função WlanOpenHandle .

[in] pInterfaceGuid

O GUID da interface.

[in] strProfileName

O nome do perfil associado aos dados do usuário do EAP. Os nomes de perfil diferenciam maiúsculas de minúsculas. Essa cadeia de caracteres deve ser terminada em NULL.

[in] eapType

Uma estrutura EAP_METHOD_TYPE que contém o método para o qual o chamador está fornecendo credenciais de usuário EAP.

[in] dwFlags

Um conjunto de sinalizadores que modificam o comportamento da função.

No Windows Vista e no Windows Server 2008, esse parâmetro é reservado e deve ser definido como zero.

No Windows 7, Windows Server 2008 R2 e posterior, esse parâmetro pode ser um dos valores a seguir.

Valor Significado
WLAN_SET_EAPHOST_DATA_ALL_USERS
0x00000001
Defina dados de host EAP para todos os usuários desse perfil.

[in] dwEapUserDataSize

O tamanho, em bytes, dos dados apontados por pbEapUserData.

[in] pbEapUserData

Um ponteiro para os dados brutos do EAP usados para definir as credenciais do usuário.

No Windows Vista e no Windows Server 2008, esse parâmetro não deve ser NULL.

No Windows 7, Windows Server 2008 R2 e posterior, esse parâmetro pode ser definido como NULL para excluir as credenciais armazenadas para esse perfil se o parâmetro dwFlags contiver WLAN_SET_EAPHOST_DATA_ALL_USERS e o parâmetro dwEapUserDataSize for 0.

pReserved

Reservado para uso futuro. Deve ser definido como NULL.

Retornar valor

Se a função obtiver êxito, o valor retornado será ERROR_SUCCESS.

Se a função falhar, o valor retornado poderá ser um dos seguintes códigos de retorno.

Código de retorno Descrição
ERROR_ACCESS_DENIED
Acesso negado. Esse valor será retornado se o chamador não tiver acesso de gravação ao perfil.
ERROR_INVALID_PARAMETER
Um parâmetro está incorreto. Esse valor será retornado se qualquer uma das seguintes condições ocorrer:
  • hClientHandle é NULL.
  • pInterfaceGuid é NULL.
  • strProfileName é NULL
  • pvReserved não é NULL.

No Windows Vista e no Windows Server 2008, esse valor será retornado se o parâmetro pbEapUserData for NULL.

No Windows 7, Windows Server 2008 R2 e posterior, esse erro será retornado se o parâmetro pbEapUserData for NULL, mas o parâmetro dwEapUserDataSize não for 0 ou o parâmetro dwFlags não contiver WLAN_SET_EAPHOST_DATA_ALL_USERS.

ERROR_INVALID_HANDLE
Um identificador é inválido. Esse erro será retornado se o identificador hClientHandle não tiver sido encontrado na tabela de identificadores.
ERROR_NOT_ENOUGH_MEMORY
Não há armazenamento suficiente disponível para processar esse comando.
ERROR_NOT_SUPPORTED
A solicitação não terá suporte.

Esse valor é retornado quando as configurações de perfil não permitem o armazenamento de dados do usuário. Isso pode ocorrer quando o SSO (logon único) está habilitado ou quando a solicitação era para excluir as credenciais armazenadas para esse perfil (o parâmetro pbEapUserData era NULL, o parâmetro dwFlags contém WLAN_SET_EAPHOST_DATA_ALL_USERS e o parâmetro dwEapUserDataSize é 0).

Em Windows 10, Windows Server 2016 e posterior, esse valor será retornado se a função WlanSetProfileEapUserData for chamada em um perfil que usa um método diferente de 802.1X para autenticação.

Esse valor também será retornado se essa função tiver sido chamada de um Windows XP com SP3 ou API lan sem fio para Windows XP com cliente SP2.

ERROR_SERVICE_NOT_ACTIVE
O serviço não foi iniciado. Esse valor será retornado se o serviço lan sem fio não estiver em execução.
RPC_STATUS
Vários códigos de erro.

Comentários

A função WlanSetProfileEapUserData define as credenciais de usuário do EAP a serem usadas em um perfil. No Windows Vista e no Windows Server 2008, essas credenciais só podem ser usadas pelo chamador.

O parâmetro eapType é uma estrutura EAP_METHOD_TYPE que contém informações de tipo, identificação e autor sobre um método EAP. O membro eapType da estrutura EAP_METHOD_TYPE é uma estrutura EAP_TYPE que contém as informações de identificação do tipo e do fornecedor para um método EAP.

Para obter mais informações sobre a alocação de tipos de método EAP, consulte a seção 6.2 do RFC 3748 publicado pelo IETF.

No Windows 7, Windows Server 2008 R2 e posterior, a função WlanSetProfileEapUserData é aprimorada. As credenciais de usuário do EAP poderão ser definidas para todos os usuários de um perfil se o parâmetro dwFlagscontiver WLAN_SET_EAPHOST_DATA_ALL_USERS. As credenciais de usuário do EAP em um perfil também podem ser excluídas. Para excluir as credenciais de usuário do EAP em um perfil, o parâmetro pbEapUserData deve ser NULL, o parâmetro dwFlags deve ser igual a WLAN_SET_EAPHOST_DATA_ALL_USERS e o parâmetro dwEapUserDataSize deve ser 0.

Todas as funções lan sem fio exigem um GUID de interface para a interface sem fio ao executar operações de perfil. Quando uma interface sem fio é removida, seu estado é removido do WLANSVC (Wireless LAN Service) e nenhuma operação de perfil é possível.

A função WlanSetProfileEapUserData poderá falhar com ERROR_INVALID_PARAMETER se a interface sem fio especificada no parâmetro pInterfaceGuid tiver sido removida do sistema (um adaptador sem fio USB que foi removido, por exemplo).

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho wlanapi.h (inclua Wlanapi.h)
Biblioteca Wlanapi.lib
DLL Wlanapi.dll

Confira também

EAP_METHOD_TYPE

EAP_TYPE

WlanGetProfile

WlanGetProfileCustomUserData

WlanGetProfileList

WlanSetProfile

WlanSetProfileEapXmlUserData