Module webauthn_rs::prelude
source · Expand description
A prelude of types that are used by Webauthn
Re-exports§
pub use crate::Webauthn;
pub use crate::WebauthnBuilder;
Structs§
- A structure representing an Attestation CA and other options associated to this CA.
- A list of AttestationCas and associated options.
- AttestedPasskey
attestation
An attested passkey for a user. This is a specialisation of Passkey as you can limit the make and models of authenticators that a user may register. Additionally these keys will always enforce user verification. - AttestedPasskeyAuthentication
attestation
An in progress authentication session for a AttestedPasskey. - AttestedPasskeyRegistration
attestation
An in progress registration session for a AttestedPasskey. - AttestedResidentKey
resident-key-support
An attested resident key belonging to a user. These are a specialisation of AttestedPasskey where the devices in use can be attested. In addition this type enforces keys to be resident on the authenticator. - AttestedResidentKeyAuthentication
resident-key-support
An in progress authentication session for a AttestedResidentKey. - AttestedResidentKeyRegistration
resident-key-support
An in progress registration session for an AttestedResidentKey. - Information about the authentication that occurred.
- The in progress state of an authentication attempt. You must persist this associated to the UserID requesting the registration.
- Serde wrapper for
Vec<u8>
which always emits URL-safe, non-padded Base64, and accepts Base64 and binary formats. - A COSE Elliptic Curve Public Key. This is generally the provided credential that an authenticator registers, and is used to authenticate the user. You will likely never need to interact with this value, as it is part of the Credential API.
- A COSE Key as provided by the Authenticator. You should never need to alter or change these values.
- A COSE Elliptic Curve Public Key. This is generally the provided credential that an authenticator registers, and is used to authenticate the user. You will likely never need to interact with this value, as it is part of the Credential API.
- A COSE RSA PublicKey. This is a provided credential from a registered authenticator. You will likely never need to interact with this value, as it is part of the Credential API.
- A JSON serializable challenge which is issued to the user’s web browser for handling. This is meant to be opaque, that is, you should not need to inspect or alter the content of the struct - you should serialise it and transmit it to the client only.
- DiscoverableAuthentication
conditional-ui
An in progress authentication session for a DiscoverableKey. Passkey and AttestedResidentKey can be used with these workflows. - DiscoverableKey
conditional-ui
A key that can be used in discoverable workflows. Within this library Passkeys may be discoverable on an opportunistic bases, and AttestedResidentKeys will always be discoverable. - The processed attestation and its metadata
- A Passkey for a user. A passkey is a term that covers all possible authenticators that may exist. These could be roaming credentials such as Apple’s Account back passkeys, they could be a users Yubikey, a Windows Hello TPM, or even a password manager softtoken.
- An in progress authentication session for a Passkey.
- An in progress registration session for a Passkey.
- A client response to an authentication challenge. This contains all required information to asses and assert trust in a credentials legitimacy, followed by authentication to a user.
- A client response to a registration challenge. This contains all required information to assess and assert trust in a credential’s legitimacy, followed by registration to a user.
- A JSON serializable challenge which is issued to the user’s webbrowser for handling. This is meant to be opaque, that is, you should not need to inspect or alter the content of the struct - you should serialise it and transmit it to the client only.
- A Security Key for a user. These are the legacy “second factor” method of security tokens.
- An in progress authentication session for a SecurityKey.
- An in progress registration session for a SecurityKey.
- A parsed URL record.
- A Universally Unique Identifier (UUID).
Enums§
- The type of attestation on the credential
- The processed Attestation that the Authenticator is providing in its AttestedCredentialData. This metadata may allow identification of the device and its specific properties.
- The authenticator attachment hint. This is NOT enforced, and is only used to help a user select a relevant authenticator type.
- A COSE signature algorithm, indicating the type of key and hash type that should be used. You shouldn’t need to alter or use this value.
- The type of Key contained within a COSE value. You should never need to alter or change this type.
- The numeric if of the COSEKeyType used in the CBOR fields.
- An ECDSACurve identifier. You probably will never need to alter or use this value, as it is set inside the Credential for you.
- An EDDSACurve identifier. You probably will never need to alter or use this value, as it is set inside the Credential for you.
- The processed Attestation that the Authenticator is providing in its AttestedCredentialData
- Possible errors that may occur during Webauthn Operation processing.
Type Aliases§
- Credential
danger-credential-internals
The current latest Credential Format - The ID of this Credential
- A wrapper for
Result<T, WebauthnError>