[][src]Struct biscuit::ValidationOptions

pub struct ValidationOptions {
    pub claim_presence_options: ClaimPresenceOptions,
    pub temporal_options: TemporalOptions,
    pub issued_at: Validation<Duration>,
    pub not_before: Validation<()>,
    pub expiry: Validation<()>,
    pub issuer: Validation<String>,
    pub audience: Validation<String>,
}

Options for claims validation

If a claim is missing, it passes validation unless the claim is marked as required within the claim_presence_options.

By default, no claims are required. If there are present, only expiry-related claims are validated (namely exp, nbf, iat) with zero epsilon and maximum age duration.

Should any temporal claims be required, set the appropriate fields.

To deal with clock drifts, you might want to provide an epsilon error margin in the form of a std::time::Duration to allow time comparisons to fall within the margin.

Fields

claim_presence_options: ClaimPresenceOptions

Claims marked as required will trigger a validation failure if they are missing

temporal_options: TemporalOptions

Define how to validate temporal claims

issued_at: Validation<Duration>

Validation options for iat or Issued At claim if present Parameter shows the maximum age of a token to be accepted, use Duration::max_value() if you do not want to skip validating the age of the token, and only validate it was not issued in the future

not_before: Validation<()>

Validation options for nbf or Not Before claim if present

expiry: Validation<()>

Validation options for exp or Expiry claim if present

issuer: Validation<String>

Validation options for iss or Issuer claim if present Parameter must match the issuer in the token exactly.

audience: Validation<String>

Validation options for aud or Audience claim if present Token must include an audience with the value of the parameter

Trait Implementations

impl Clone for ValidationOptions[src]

impl Default for ValidationOptions[src]

impl Eq for ValidationOptions[src]

impl PartialEq<ValidationOptions> for ValidationOptions[src]

impl StructuralEq for ValidationOptions[src]

impl StructuralPartialEq for ValidationOptions[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<Q, K> Equivalent<K> for Q where
    K: Borrow<Q> + ?Sized,
    Q: Eq + ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.