AuthenticatorAssertionResponse

Struct AuthenticatorAssertionResponse 

Source
pub struct AuthenticatorAssertionResponse {
    pub client_data_json: Bytes,
    pub authenticator_data: Bytes,
    pub signature: Bytes,
    pub user_handle: Option<Bytes>,
    pub attestation_object: Option<Bytes>,
}
Expand description

This type represents an authenticator’s response to a client’s request for generation of a new authentication assertion given the Relying Party’s challenge and OPTIONAL list of credentials it is aware of. This response contains a cryptographic signature proving possession of the credential private key, and optionally evidence of user consent to a specific transaction.

https://w3c.github.io/webauthn/#iface-authenticatorassertionresponse

Fields§

§client_data_json: Bytes

This attribute contains the JSON serialization of CollectedClientData passed to the authenticator by the client in order to generate this credential. The exact JSON serialization MUST be preserved, as the hash of the serialized client data has been computed over it.

§authenticator_data: Bytes

This attribute contains the authenticator data returned by the authenticator. See AuthenticatorData.

§signature: Bytes

This attribute contains the raw signature returned from the authenticator.

§user_handle: Option<Bytes>

This attribute contains the user handle returned from the authenticator, or null if the authenticator did not return a user handle.

This mirrors the PublicKeyCredentialUserEntity::id field.

§attestation_object: Option<Bytes>

This OPTIONAL attribute contains an attestation object, if the authenticator supports attestation in assertions. The attestation object, if present, includes an attestation statement. Unlike the AuthenticatorAttestationResponse::attestation_object, it does not contain an authData key because the authenticator data is provided directly above in AuthenticatorAssertionResponse::authenticator_data structure. For more details on attestation, see Attestation in assertions.

Trait Implementations§

Source§

impl Debug for AuthenticatorAssertionResponse

Source§

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

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

impl<'de> Deserialize<'de> for AuthenticatorAssertionResponse

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 AuthenticatorAssertionResponse

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
Source§

impl AuthenticatorResponse for AuthenticatorAssertionResponse

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>,