Struct biscuit::ValidationOptions
source · 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<StringOrUri>,
pub audience: Validation<StringOrUri>,
}
Expand description
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<StringOrUri>
Validation options for iss
or Issuer
claim if present
Parameter must match the issuer in the token exactly.
audience: Validation<StringOrUri>
Validation options for aud
or Audience
claim if present
Token must include an audience with the value of the parameter
Trait Implementations
sourceimpl Clone for ValidationOptions
impl Clone for ValidationOptions
sourcefn clone(&self) -> ValidationOptions
fn clone(&self) -> ValidationOptions
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresourceimpl Default for ValidationOptions
impl Default for ValidationOptions
sourceimpl PartialEq<ValidationOptions> for ValidationOptions
impl PartialEq<ValidationOptions> for ValidationOptions
sourcefn eq(&self, other: &ValidationOptions) -> bool
fn eq(&self, other: &ValidationOptions) -> bool
impl Eq for ValidationOptions
impl StructuralEq for ValidationOptions
impl StructuralPartialEq for ValidationOptions
Auto Trait Implementations
impl RefUnwindSafe for ValidationOptions
impl Send for ValidationOptions
impl Sync for ValidationOptions
impl Unpin for ValidationOptions
impl UnwindSafe for ValidationOptions
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.