estrutura PPP_EAP_OUTPUT (raseapif.h)
O protocolo de autenticação usa a estrutura PPP_EAP_OUTPUT para comunicar solicitações e status informações à Gerenciador de Conexões no retorno de chamadas para RasEapMakeMessage.
Sintaxe
typedef struct _PPP_EAP_OUTPUT {
DWORD dwSizeInBytes;
PPP_EAP_ACTION Action;
DWORD dwAuthResultCode;
RAS_AUTH_ATTRIBUTE *pUserAttributes;
BOOL fInvokeInteractiveUI;
PBYTE pUIContextData;
DWORD dwSizeOfUIContextData;
BOOL fSaveConnectionData;
PBYTE pConnectionData;
DWORD dwSizeOfConnectionData;
BOOL fSaveUserData;
PBYTE pUserData;
DWORD dwSizeOfUserData;
NgcTicketContext *pNgcKerbTicket;
BOOL fSaveToCredMan;
} PPP_EAP_OUTPUT, *PPPP_EAP_OUTPUT;
Membros
dwSizeInBytes
Especifica o tamanho dessa estrutura.
Action
Especifica um valor PPP_EAP_ACTION . O Gerenciador de Conexões executa essa ação em nome do protocolo de autenticação.
dwAuthResultCode
Especifica se a autenticação foi bem-sucedida. Qualquer valor diferente de zero para dwAuthResultCode indica falha. O código de falha deve vir de Winerror.h, Raserror.h ou Mprerror.h. Esse membro só será válido se o membro Action tiver um valor de EAPACTION_Done ou EAPACTION_SendAndDone.
pUserAttributes
Ponteiro para uma matriz opcional de estruturas de RAS_AUTH_ATTRIBUTE . A matriz é encerrada por uma estrutura com um membro raaType que tem um valor de raatMinimum (consulte RAS_AUTH_ATTRIBUTE_TYPE).
Esse membro deve ser definido no lado do autenticador quando a Ação é EAPACTION_Authenticate ou quando Action é EAPACTION_Done ou EAPACTION_SendAndDone e dwAuthResultCode é zero.
Quando a Ação é EAPACTION_Authenticate, a matriz pode conter atributos adicionais necessários para autenticar o usuário, por exemplo, a senha do usuário. Se o protocolo de autenticação passar apenas o nome de usuário, o RAS não invocará o provedor de autenticação para autenticar o usuário. Em vez disso, o RAS apenas passará de volta os atributos atuais para o usuário.
Quando Action é EAPACTION_Done ou EAPACTION_SendAndDone e dwAuthResultCode é zero, a matriz pode conter atributos adicionais a serem atribuídos ao usuário. Esses atributos substituem todos os atributos do mesmo tipo retornados pelo provedor de autenticação.
O protocolo de autenticação libera essa memória em sua função RasEapEnd .
fInvokeInteractiveUI
Especifica se o RAS deve invocar a interface do usuário interativa do protocolo de autenticação. Se o protocolo de autenticação definir esse membro como TRUE, RAS invocará a interface do usuário interativa chamando a função RasEapInvokeInteractiveUI fornecida pelo protocolo de autenticação.
pUIContextData
Ponteiro para dados de contexto que RAS deve passar na chamada para RasEapInvokeInteractiveUI. O protocolo de autenticação deve liberar essa memória em sua implementação de RasEapEnd.
dwSizeOfUIContextData
Especifica o tamanho dos dados de contexto que o RAS deve passar na chamada para RasEapInvokeInteractiveUI.
fSaveConnectionData
Especifica se o RAS deve salvar as informações apontadas pelo membro pConnectionData . Se fSaveConnectionData for TRUE, RAS salvará os dados na lista telefônica. Válido apenas para o processo que está sendo autenticado.
pConnectionData
Identifica dados específicos da conexão, ou seja, dados não específicos a nenhum usuário específico. Se o membro fSaveConnectionData for TRUE, RAS salvará os dados de conexão na lista telefônica. O protocolo de autenticação deve liberar a memória ocupada por esses dados durante a chamada para RasEapEnd.
dwSizeOfConnectionData
Especifica o tamanho, em bytes, dos dados apontados pelo membro pConnectionData .
fSaveUserData
Especifica se o RAS deve salvar os dados do usuário apontados pelo membro pUserData . Se esse parâmetro for TRUE, RAS salvará os dados específicos do usuário no registro em HKEY_CURRENT_USER.
pUserData
Ponteiro para os dados do usuário que o RAS deve salvar no registro. RAS salva esses dados no registro em HKEY_CURRENT_USER. O protocolo de autenticação deve liberar essa memória durante a chamada para RasEapEnd.
dwSizeOfUserData
Especifica o tamanho em bytes dos dados apontados por pUserData.
pNgcKerbTicket
fSaveToCredMan
Comentários
Use a função RasEapMakeMessage para passar a estrutura PPP_EAP_OUTPUT entre o protocolo de autenticação e o Gerenciador de Conexões.
O protocolo de autenticação pode usar a estrutura PPP_EAP_OUTPUT para retornar as chaves de sessão MPPE (Criptografia Ponto a Ponto) da Microsoft. O protocolo de autenticação deve colocar as chaves de sessão no campo de valor de um sub-atributo contido no campo de valor de um atributo do tipo raatVendorSpecific (consulte RAS_AUTH_ATTRIBUTE_TYPE). O sub-atributo deve ter uma ID do fornecedor 311 (Microsoft) e tipo de fornecedor de MS-MPPE-Recv-Keys (17) e MS-MPPE-Send-Keys (16). O protocolo de autenticação deve definir o membro pUserAttributes para apontar para o atributo raatVendorSpecific e definir o membro Action como EAPACTION_Done ou EAPACTION_SendAndDone. Para obter mais informações sobre o formato do subpropósitório MPPE, consulte Atributos RADIUS específicos do fornecedor da Microsoft. Para obter mais informações sobre formatos de atributo, consulte RAS_AUTH_ATTRIBUTE, RAS_AUTH_ATTRIBUTE_TYPE e RFC 2865.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho | raseapif.h |