Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Overview of the WebAuthn technology, which provides Win32 apps with APIs for communicating to Windows Hello, external security keys, and plugin authenticators as part of WebAuthn and CTAP specifications.
To develop with the WebAuthn API, you need these headers:
For programming guidance for this technology, see:
Enumerations
| AUTHENTICATOR_STATE Specifies whether a plugin authenticator is enabled. |
| PLUGIN_LOCK_STATUS Specifies whether a plugin authenticator is locked. |
| WEBAUTHN_PLUGIN_PERFORM_UV_OPERATION_TYPE Specifies the type of Windows Hello user-verification operation for a plugin authenticator. |
| WEBAUTHN_PLUGIN_REQUEST_TYPE Specifies the encoding used for a plugin authenticator request payload. |
Functions
| CancelOperation Cancels an in-progress plugin authenticator operation. |
| GetAssertion Gets an assertion for a plugin authenticator request. |
| GetLockStatus Gets the current lock state of the plugin authenticator. |
| MakeCredential Creates a credential for a plugin authenticator request. |
| WEBAUTHN_PLUGIN_STATUS_CHANGE_CALLBACK An application-defined callback that Windows invokes when plugin authenticator status changes. |
| WebAuthNAuthenticatorGetAssertion Produces an assertion signature representing an assertion by the authenticator that the user has consented to a specific transaction. |
| WebAuthNAuthenticatorMakeCredential Creates a public key credential source bound to a managing authenticator and returns the credential public key associated with its credential private key. |
| WebAuthNCancelCurrentOperation Terminates operation currently in progress in the authenticator session. |
| WebAuthNDecodeGetAssertionRequest Decodes a CTAP CBOR-encoded getAssertion request. |
| WebAuthNDecodeMakeCredentialRequest Decodes a CTAP CBOR-encoded makeCredential request. |
| WebAuthNDeletePlatformCredential Removes a credential source stored on an authenticator. |
| WebAuthNEncodeGetAssertionResponse Encodes a getAssertion response as CTAP CBOR. |
| WebAuthNEncodeMakeCredentialResponse Encodes a credential attestation as a CTAP CBOR makeCredential response. |
| WebAuthNFreeAssertion Frees a previously allocated WebAuthN assertion. |
| WebAuthNFreeAuthenticatorList Frees a previously allocated authenticator details list. |
| WebAuthNFreeCredentialAttestation Frees a previously allocated credential attestation. |
| WebAuthNFreeDecodedGetAssertionRequest Frees a decoded getAssertion request. |
| WebAuthNFreeDecodedMakeCredentialRequest Frees a decoded makeCredential request. |
| WebAuthNFreePlatformCredentialList Frees the allocation for the platform credential list. |
| WebAuthNGetApiVersionNumber Gets the API version number. |
| WebAuthNGetAuthenticatorList Retrieves a list of available authenticators. |
| WebAuthNGetCancellationId Gets the cancellation ID for a canceled operation. |
| WebAuthNGetErrorName Gets the error name for an error code. |
| WebAuthNGetPlatformCredentialList Gets the list of stored credentials. |
| WebAuthNGetW3CExceptionDOMError Gets the W3C DOM error code for the last failed operation. |
| WebAuthNIsUserVerifyingPlatformAuthenticatorAvailable Determines if the platform authenticator service is available. |
| WebAuthNPluginAddAuthenticator Registers a plugin authenticator with Windows. |
| WebAuthNPluginAddAuthenticator2 Registers a plugin authenticator with Windows by using the extended add-authenticator options. |
| WebAuthNPluginAuthenticatorAddCredentials Adds cached credential metadata for a plugin authenticator. |
| WebAuthNPluginAuthenticatorFreeCredentialDetailsArray Frees an array returned by WebAuthNPluginAuthenticatorGetAllCredentials. |
| WebAuthNPluginAuthenticatorGetAllCredentials Gets all cached credential metadata for a plugin authenticator. |
| WebAuthNPluginAuthenticatorRemoveAllCredentials Removes all cached credential metadata for a plugin authenticator. |
| WebAuthNPluginAuthenticatorRemoveCredentials Removes cached credential metadata for a plugin authenticator. |
| WebAuthNPluginFreeAddAuthenticatorResponse Frees a response returned by WebAuthNPluginAddAuthenticator or EXPERIMENTAL_WebAuthNPluginAddAuthenticator2. |
| WebAuthNPluginFreePublicKeyResponse Frees a public-key buffer returned by a WebAuthN plugin public-key function. |
| WebAuthNPluginFreeUserVerificationResponse Frees a response buffer returned by a plugin user-verification function. |
| WebAuthNPluginGetAuthenticatorState Gets the current enabled or disabled state of a plugin authenticator. |
| WebAuthNPluginGetOperationSigningPublicKey Gets the operation-signing public key for a plugin authenticator. |
| WebAuthNPluginGetUserVerificationCount Gets the user-verification counter for a plugin authenticator. |
| WebAuthNPluginGetUserVerificationPublicKey Gets the public key associated with plugin user verification. |
| WebAuthNPluginPerformUserVerification Performs Windows Hello user verification for a plugin authenticator operation. |
| WebAuthNPluginPerformUserVerification2 Performs Windows Hello user verification for a plugin authenticator operation by using the extended user-verification request. |
| WebAuthNPluginRegisterStatusChangeCallback Registers a callback that is invoked when plugin authenticator status changes. |
| WebAuthNPluginRemoveAuthenticator Unregisters a plugin authenticator from Windows. |
| WebAuthNPluginUnregisterStatusChangeCallback Unregisters a previously registered plugin status-change callback. |
| WebAuthNPluginUpdateAuthenticatorDetails Updates metadata for a registered plugin authenticator. |
| WebAuthNPluginUpdateAuthenticatorDetails2 Updates metadata for a registered plugin authenticator by using the extended update-details structure. |
Interfaces
| IPluginAuthenticator Defines the COM contract that a WebAuthn plugin authenticator implements so Windows can dispatch WebAuthn operations to it. |
Structures
| CTAPCBOR_HYBRID_STORAGE_LINKED_DATA Contains hybrid transport linked device data for a CTAP authenticator. |
| WEBAUTHN_ASSERTION A structure that contains the data necessary to verify an assertion. |
| WEBAUTHN_AUTHENTICATOR_DETAILS Contains information about an available authenticator. |
| WEBAUTHN_AUTHENTICATOR_DETAILS_LIST Contains a list of authenticator details returned by WebAuthNGetAuthenticatorList. |
| WEBAUTHN_AUTHENTICATOR_DETAILS_OPTIONS Contains options for the WebAuthNGetAuthenticatorList function. |
| WEBAUTHN_AUTHENTICATOR_GET_ASSERTION_OPTIONS A structure that contains the options to get an assertion. |
| WEBAUTHN_AUTHENTICATOR_MAKE_CREDENTIAL_OPTIONS The options for the WebAuthNAuthenticatorMakeCredential operation. |
| WEBAUTHN_CLIENT_DATA A structure containing the client data that is sent to the authenticator. |
| WEBAUTHN_COMMON_ATTESTATION The structure containing the common data for an attestation. |
| WEBAUTHN_COSE_CREDENTIAL_PARAMETER The structure containing the COSE credential parameter information. |
| WEBAUTHN_COSE_CREDENTIAL_PARAMETERS The structure containing the COSE parameters for a credential. |
| WEBAUTHN_CRED_BLOB_EXTENSION The blob extension data for a credential. |
| WEBAUTHN_CRED_PROTECT_EXTENSION_IN Contains the credential protect extension information. |
| WEBAUTHN_CRED_WITH_HMAC_SECRET_SALT The structure containing the credential with SALT values. |
| WEBAUTHN_CREDENTIAL Contains information about a credential. |
| WEBAUTHN_CREDENTIAL_ATTESTATION Contains the attestation data for a credential. |
| WEBAUTHN_CREDENTIAL_DETAILS Contains the data for a credential. |
| WEBAUTHN_CREDENTIAL_DETAILS_LIST The list of credentials. |
| WEBAUTHN_CREDENTIAL_EX Data about a credential with extra information. |
| WEBAUTHN_CREDENTIAL_LIST The list of credentials that the user has registered with the authenticator. |
| WEBAUTHN_CREDENTIALS The array of credentials that the user has registered with the authenticator. |
| WEBAUTHN_CTAPCBOR_AUTHENTICATOR_OPTIONS Contains CTAP authenticator option values used with decoded plugin requests. |
| WEBAUTHN_CTAPCBOR_ECC_PUBLIC_KEY Represents an elliptic-curve public key used in CTAP CBOR extensions. |
| WEBAUTHN_CTAPCBOR_GET_ASSERTION_REQUEST Contains a decoded CTAP CBOR getAssertion request. |
| WEBAUTHN_CTAPCBOR_GET_ASSERTION_RESPONSE Contains data for a CTAP CBOR getAssertion response. |
| WEBAUTHN_CTAPCBOR_HMAC_SALT_EXTENSION Contains data for the CTAP HMAC-salt extension. |
| WEBAUTHN_CTAPCBOR_MAKE_CREDENTIAL_REQUEST Contains a decoded CTAP CBOR makeCredential request. |
| WEBAUTHN_EXTENSION Contains information about an extension. |
| WEBAUTHN_EXTENSIONS Contains a list of extensions. |
| WEBAUTHN_GET_CREDENTIALS_OPTIONS Contains the options for the WebAuthNGetPlatformCredentialsList function. |
| WEBAUTHN_HMAC_SECRET_SALT Contains the SALT values for the Hmac-Secret. |
| WEBAUTHN_HMAC_SECRET_SALT_VALUES Contains the SALT values for the HMAC secret. |
| WEBAUTHN_PLUGIN_ADD_AUTHENTICATOR_OPTIONS Contains options for registering a plugin authenticator with Windows. |
| WEBAUTHN_PLUGIN_ADD_AUTHENTICATOR_OPTIONS_2 Contains extended options for registering a plugin authenticator with Windows. |
| WEBAUTHN_PLUGIN_ADD_AUTHENTICATOR_RESPONSE Contains the response returned when a plugin authenticator is registered. |
| WEBAUTHN_PLUGIN_CANCEL_OPERATION_REQUEST Identifies an in-progress plugin authenticator operation to cancel. |
| WEBAUTHN_PLUGIN_CREDENTIAL_DETAILS Contains metadata for a credential exposed by a plugin authenticator. |
| WEBAUTHN_PLUGIN_OPERATION_REQUEST Describes a WebAuthn operation request sent to a plugin authenticator. |
| WEBAUTHN_PLUGIN_OPERATION_RESPONSE Contains the encoded response returned by a plugin authenticator. |
| WEBAUTHN_PLUGIN_UPDATE_AUTHENTICATOR_DETAILS Contains updated metadata for a registered plugin authenticator. |
| WEBAUTHN_PLUGIN_UPDATE_AUTHENTICATOR_DETAILS_2 Contains extended metadata for updating a registered plugin authenticator. |
| WEBAUTHN_PLUGIN_USER_VERIFICATION_REQUEST Describes a Windows Hello user-verification request for a plugin authenticator. |
| WEBAUTHN_PLUGIN_USER_VERIFICATION_REQUEST_2 Describes an extended Windows Hello user-verification request for a plugin authenticator. |
| WEBAUTHN_RP_ENTITY_INFORMATION Information about the Relying Party. |
| WEBAUTHN_USER_ENTITY_INFORMATION Information about a user entity. |
| WEBAUTHN_X5C The X.509 certificate chain. |