Extensible Authentication Protocol Host

Overview of the Extensible Authentication Protocol Host technology.

To develop Extensible Authentication Protocol Host, you need these headers:

For programming guidance for this technology, see:

Enumerations

 
EAP_ATTRIBUTE_TYPE

Defines the set of possible EAP attribute types available on an authenticating entity.
EAP_AUTHENTICATOR_SEND_TIMEOUT

Indicates to the authenticator method the amount of time to wait for user input after the packet is sent. The timeout value can be set to none.
EAP_CONFIG_INPUT_FIELD_TYPE

Defines a set of possible input field types available when querying for user credentials.
EAP_INTERACTIVE_UI_DATA_TYPE

Specifies the set of types of interactive UI context data supplied to certain supplicant API calls.
EAP_METHOD_AUTHENTICATOR_RESPONSE_ACTION

Defines the set of response instructions sent by the authenticator to the supplicant or EAP peer method.
EAP_METHOD_PROPERTY_TYPE

Specifies the set of possible EAP method properties.
EAP_METHOD_PROPERTY_VALUE_TYPE

Defines the set of possible data types for an EAP method property value.
EapCode

Defines the set of EAP packet types.
EapCredentialType

Defines the set of possible EAP credentials that can be passed to the EapPeerGetConfigBlobAndUserBlob function.
EAPHOST_AUTH_STATUS

Defines the set of possible EAP authentication session status values during the authentication process.
EapHostPeerAuthParams

Defines the set of possible authentication parameter values.
EapHostPeerMethodResultReason

Defines the set of possible reasons that describe the results returned by an EAP method to a supplicant.
EapHostPeerResponseAction

Defines the set of actions an EAP authenticator or peer method can indicate to a supplicant during authentication.
EapPeerMethodResponseAction

Defines the set of actions an EAP authenticator can indicate to a supplicant or EAP peer method during authentication.
EapPeerMethodResultReason

Defines the set of results of an EAP authentication session returned by an EAP authenticator method to an EAP peer method.
ISOLATION_STATE

Defines the set of possible isolation state values of a machine.

Functions

 
EapHostPeerBeginSession

Starts an EAP authentication session.
EapHostPeerClearConnection

Clears the authentication session connection.
EapHostPeerConfigBlob2Xml

Converts the configuration BLOB to XML. (EapHostPeerConfigBlob2Xml)
EapHostPeerConfigXml2Blob

Converts XML into the configuration BLOB. (EapHostPeerConfigXml2Blob)
EapHostPeerCredentialsXml2Blob

Generates the credentials BLOB.
EapHostPeerEndSession

Terminates the current EAP authentication session between EAPHost and the calling supplicant, and clears data stored for the session.
EapHostPeerFreeEapError

Frees EAP_ERROR structures returned by EAPHost run-time APIs.
EapHostPeerFreeErrorMemory

Frees memory allocated to an EAP_ERROR structure.
EapHostPeerFreeMemory

Frees memory returned by the configuration APIs.
EapHostPeerFreeRuntimeMemory

Releases the memory space used during run-time.
EapHostPeerGetAuthStatus

Obtains the supplicant's current EAP authentication status from EAPHost.
EapHostPeerGetDataToUnplumbCredentials

Returns the Connection Id,User Impersonation Token and Eaphost Process Id used by EAPHost to save the credentials for SSO. This data is needed to unplumb previously plumbed credentials.
EapHostPeerGetIdentity

This function is called by tunnel methods to request identity information from the inner methods. This function returns the identity and user credential information.
EapHostPeerGetMethodProperties

Used to retrieve the properties of an EAP method given the connection and user data.
EapHostPeerGetMethods

Enumerates all EAP methods installed and available for use, including legacy EAP Methods.
EapHostPeerGetResponseAttributes

Obtains an array of EAP authentication attributes from EAPHost.
EapHostPeerGetResult

Obtains the authentication result for the specified EAP authentication session.
EapHostPeerGetSendPacket

Is called by the supplicant when the supplicant needs to obtains a packet from EAPHost to send to the authenticator.
EapHostPeerGetUIContext

Obtains the user interface context for the supplicant from EAPHost if the UI is to be raised.
EapHostPeerInitialize

Initializes an EAPHost authentication session.
EapHostPeerInvokeConfigUI

Starts the configuration user interface of the specified EAP method.
EapHostPeerInvokeIdentityUI

This function is called by tunnel methods to invoke the identity UI of the inner methods. This function returns the identity as well as credentials to use in order to start the authentication.
EapHostPeerInvokeInteractiveUI

Raises an interactive user interface used to get credentials from the user.
EapHostPeerProcessReceivedPacket

Is called by the supplicant every time the supplicant receives a packet that EAPHost needs to process.
EapHostPeerQueryCredentialInputFields

Allows the user to determine what kind of credentials are required by the methods to perform authentication in a Single-Sign-On (SSO) scenario.
EapHostPeerQueryInteractiveUIInputFields

Obtains the input fields for interactive UI components to be raised on the supplicant.
EapHostPeerQueryUIBlobFromInteractiveUIInputFields

Converts user information into a user BLOB that can be consumed by EAPHost run-time functions. (EapHostPeerQueryUIBlobFromInteractiveUIInputFields)
EapHostPeerQueryUserBlobFromCredentialInputFields

Obtains a credential BLOB that can be used to start authentication from user input received from the Single-Sign-On (SSO) UI.
EapHostPeerSetResponseAttributes

Provides updated EAP authentication attributes to EAPHost.
EapHostPeerSetUIContext

Provides a new or updated user interface context to the EAP peer method loaded on EAPHost after the UI has been raised.
EapHostPeerUninitialize

Uninitializes all EAPHost authentication sessions.
EapMethodAuthenticatorBeginSession

Creates a new EAP authentication session on the server EAPHost.
EapMethodAuthenticatorEndSession

Closes an EAP authentication session on the server EAPHost.
EapMethodAuthenticatorFreeErrorMemory

Releases error-specific memory allocated by the EAP authenticator method.
EapMethodAuthenticatorFreeMemory

Releases all memory associated with an opaque user interface context data buffer. (EapMethodAuthenticatorFreeMemory)
EapMethodAuthenticatorGetAttributes

Obtains an array of EAP authentication attributes from the EAP authenticator method.
EapMethodAuthenticatorGetInfo

Obtains a set of function pointers for an implementation of the loaded EAP authenticator method.EapMethodAuthenticatorGetInfo is a function prototype.
EapMethodAuthenticatorGetResult

Obtains the authentication result from the EAP authenticator method.
EapMethodAuthenticatorInitialize

Initializes an EAP authenticator method for the server EAPHost.
EapMethodAuthenticatorInvokeConfigUI

Defines a function that raises the EAP method's connection configuration user interface dialog box on the client.
EapMethodAuthenticatorReceivePacket

Processes an EAP authentication packet received by the server EAPHost and returns a response action.
EapMethodAuthenticatorSendPacket

Obtains an authentication packet from the EAP authenticator method to send to the supplicant.
EapMethodAuthenticatorSetAttributes

Provides updated EAP authentication attributes to set on the EAP authenticator method.
EapMethodAuthenticatorShutdown

Shuts down the EAP authenticator method and prepares to unload it from the server EAPHost.
EapMethodAuthenticatorUpdateInnerMethodParams

Updates the EAP authentication session settings previous established by a call to EapMethodAuthenticatorBeginSession from the server EAPHost.
EapPeerBeginSession

Starts an EAP authentication session on the peer EAPHost using the EAP method.
EapPeerConfigBlob2Xml

Converts the configuration BLOB to XML. (EapPeerConfigBlob2Xml)
EapPeerConfigXml2Blob

Converts XML into the configuration BLOB. (EapPeerConfigXml2Blob)
EapPeerCredentialsXml2Blob

Converts XML into the configuration BLOB. (EapPeerCredentialsXml2Blob)
EapPeerEndSession

Ends an EAP authentication session for the EAP method.
EapPeerFreeErrorMemory

Releases error-specific memory allocated by the EAP peer method.
EapPeerFreeMemory

Releases all memory associated with an opaque user interface context data buffer. (EapPeerFreeMemory)
EapPeerGetConfigBlobAndUserBlob

Allows EAP method developers to provide the various connection properties and user properties supported by the method. EAPHost invokes this function to create the connection property and user property of the EAP method.
EapPeerGetIdentity

Returns the user data and user identity after being called by EAPHost.
EapPeerGetInfo

Obtains a set of function pointers for an implementation of the EAP peer method EapPeerGetInfo currently loaded on the EAPHost service.
EapPeerGetMethodProperties

EAP method-specific function that retrieves the properties of an EAP method given the connection and user data.
EapPeerGetResponseAttributes

Obtains an array of EAP response attributes from the EAP method.
EapPeerGetResponsePacket

Obtains a response packet from the EAP method.
EapPeerGetResult

Obtains the result of an authentication session from the EAP method.
EapPeerGetUIContext

Obtains the user interface context from the EAP method.
EapPeerInitialize

Initializes an EAP peer method for EAPHost.
EapPeerInvokeConfigUI

Raises the EAP method's specific connection configuration user interface dialog on the client.
EapPeerInvokeIdentityUI

Raises a custom interactive user interface dialog to obtain user identity information for the EAP method on the client.
EapPeerInvokeInteractiveUI

Raises a custom interactive user interface dialog for the EAP method on the client.
EapPeerProcessRequestPacket

Processes a packet received by EAPHost from a supplicant.
EapPeerQueryCredentialInputFields

Defines the implementation of an EAP method-specific function that obtains the EAP Single-Sign-On (SSO) credential input fields for an EAP method.
EapPeerQueryInteractiveUIInputFields

Defines the implementation of an EAP method API that provides the input fields for interactive UI components to be raised on the supplicant.
EapPeerQueryUIBlobFromInteractiveUIInputFields

Converts user information into a user BLOB that can be consumed by EAPHost run-time functions. (EapPeerQueryUIBlobFromInteractiveUIInputFields)
EapPeerQueryUserBlobFromCredentialInputFields

Defines the implementation of an EAP method function that obtains the user BLOB data provided in an interactive Single-Sign-On (SSO) UI raised on the supplicant.
EapPeerSetCredentials

Supplies new or updated authentication credentials to the EAP method.
EapPeerSetResponseAttributes

Provides an updated array of EAP response attributes to the EAP method.
EapPeerSetUIContext

Provides a user interface context to the EAP method. This function is called after the UI has been raised through the EapPeerGetUIContext function.
EapPeerShutdown

Shuts down the EAP method and prepares to unload its corresponding DLL.
NotificationHandler

Notifies the supplicant that there is a change in the Statement of Health (SoH) and re-authentication of a Network Access Protection (NAP) system connection is required.

Structures

 
EAP_ATTRIBUTE

Contains an EAP attribute.
EAP_ATTRIBUTES

Contains an array of EAP attributes.
EAP_AUTHENTICATOR_METHOD_ROUTINES

Contains a set of function pointers to the EAPHost Authenticator Method APIs.
EAP_CONFIG_INPUT_FIELD_ARRAY

Contains a set of EAP_CONFIG_INPUT_FIELD_DATA structures that collectively contain the user input field data obtained from the user.
EAP_CONFIG_INPUT_FIELD_DATA

Contains the data associated with a single input field.
EAP_CRED_EXPIRY_REQ

Contains both the old and new EAP credentials for credential expiry operations.
EAP_ERROR

Contains information about an error that occurred during an EAPHost operation.
EAP_INTERACTIVE_UI_DATA

Contains configuration information for interactive UI components raised on an EAP supplicant.
EAP_METHOD_AUTHENTICATOR_RESULT

Contains authentication results returned by an EAP authenticator method.
EAP_METHOD_INFO

Contains information about an EAP method. (EAP_METHOD_INFO)
EAP_METHOD_INFO_ARRAY

Contains information on EAP methods installed on the client computer.
EAP_METHOD_INFO_ARRAY_EX

Contains information about all of the EAP methods installed on the client computer.
EAP_METHOD_INFO_EX

Contains information about an EAP method. (EAP_METHOD_INFO_EX)
EAP_METHOD_PROPERTY

Contains an EAP method property.
EAP_METHOD_PROPERTY_ARRAY

Contains an array of EAP method properties.
EAP_METHOD_PROPERTY_VALUE

Contains the value of an EAP method property.
EAP_METHOD_PROPERTY_VALUE_BOOL

Contains a Boolean value of an EAP method property.
EAP_METHOD_PROPERTY_VALUE_DWORD

Contains the DWORD value of an EAP method property.
EAP_METHOD_PROPERTY_VALUE_STRING

Contains the string value of an EAP method property.
EAP_METHOD_TYPE

Contains type, identification, and author information about an EAP method.
EAP_PEER_METHOD_ROUTINES

Contains a set of function pointers to the EAPHost Peer Method APIs.
EAP_TYPE

Contains type and vendor identification information for an EAP method.
EAP_UI_DATA_FORMAT

The EAP_UI_DATA_FORMAT union specifies the value of the attribute stored in the pbUiData member of the EAP_INTERACTIVE_UI_DATA structure.
EapCertificateCredential

Contains information about the certificate that the EAP method uses for authentication.
EapCredential

Contains information about the credentials type and the appropriate credentials. This is passed as an input to the EapPeerGetConfigBlobAndUserBlob API.
EAPHOST_AUTH_INFO

Describes current authentication information throughout different stages of the EAP authentication process.
EapHostPeerMethodResult

Contains the result data generated by EAPHost during an authentication session that is then passed to an EAP method.
EapPacket

Contains a packet of opaque data sent during an EAP authentication session.
EapPeerMethodOutput

Contains the action information returned by an EAP peer method.
EapPeerMethodResult

Contains result data generated by an EAP method during authentication.
EapSimCredential

Contains information about the SIM that is used by the EAP method for authentication.
EapUsernamePasswordCredential

Contains the username and password that is used by the EAP method for authenticating the user.