AuthenticatorSelectionCriteria

Struct AuthenticatorSelectionCriteria 

Source
pub struct AuthenticatorSelectionCriteria {
    pub authenticator_attachment: Option<AuthenticatorAttachment>,
    pub resident_key: Option<ResidentKeyRequirement>,
    pub require_resident_key: bool,
    pub user_verification: UserVerificationRequirement,
}
Expand description

Relying Parties may use this type to specify their requirements regarding authenticator attributes.

https://w3c.github.io/webauthn/#dictdef-authenticatorselectioncriteria

Fields§

§authenticator_attachment: Option<AuthenticatorAttachment>

If this member is present, eligible authenticators are filtered to be only those authenticators attached with the specified AuthenticatorAttachment modality. If this member is absent, then any attachment modality is acceptable. The value SHOULD be a member of AuthenticatorAttachment but client platforms MUST ignore unknown values, treating an unknown value (None) as if the member does not exist.

See also the PublicKeyCredential::authenticator_attachment member, which can tell what authenticator attachment modality was used in a successful create() or get() operation.

§resident_key: Option<ResidentKeyRequirement>

Specifies the extent to which the Relying Party desires to create a client-side discoverable credential. For historical reasons the naming retains the deprecated “resident” terminology. The value SHOULD be a member of ResidentKeyRequirement but client platforms MUST ignore unknown values, treating an unknown value (None) as if the member does not exist. If no value is given then the effective value is required if Self::require_resident_key is true or discouraged if it is false or absent.

See ResidentKeyRequirement for the description of resident_key’s values and semantics.

§require_resident_key: bool

This member is retained for backwards compatibility with WebAuthn Level 1 and, for historical reasons, its naming retains the deprecated “resident” terminology for [discoverable credentials]. Relying Parties SHOULD set it to true if, and only if, Self::resident_key is set to required.

§user_verification: UserVerificationRequirement

This member specifies the Relying Party’s requirements regarding user verification for the create() operation. The value SHOULD be a member of UserVerificationRequirement but client platforms MUST ignore unknown values, treating an unknown value as if the member does not exist.

See UserVerificationRequirement for the description of user verification’s values and semantics.

Trait Implementations§

Source§

impl Debug for AuthenticatorSelectionCriteria

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for AuthenticatorSelectionCriteria

Source§

fn default() -> AuthenticatorSelectionCriteria

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for AuthenticatorSelectionCriteria

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for AuthenticatorSelectionCriteria

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,