[−]Struct roa::jwt::Validation
Contains the various validations that are applied after decoding a token.
All time validation happen on UTC timestamps.
use jsonwebtoken::Validation; // Default value let validation = Validation::default(); // Changing one parameter let mut validation = Validation {leeway: 60, ..Default::default()}; // Setting audience let mut validation = Validation::default(); validation.set_audience(&"Me"); // string validation.set_audience(&["Me", "You"]); // array of strings
Fields
leeway: i64
Add some leeway (in seconds) to the exp
, iat
and nbf
validation to
account for clock skew.
Defaults to 0
.
validate_exp: bool
Whether to validate the exp
field.
It will return an error if the time in the exp
field is past.
Defaults to true
.
validate_nbf: bool
Whether to validate the nbf
field.
It will return an error if the current timestamp is before the time in the nbf
field.
Defaults to false
.
aud: Option<Value>
If it contains a value, the validation will check that the aud
field is the same as the
one provided and will error otherwise.
Since aud
can be either a String or a Vec
Defaults to None
.
iss: Option<String>
If it contains a value, the validation will check that the iss
field is the same as the
one provided and will error otherwise.
Defaults to None
.
sub: Option<String>
If it contains a value, the validation will check that the sub
field is the same as the
one provided and will error otherwise.
Defaults to None
.
algorithms: Vec<Algorithm>
If it contains a value, the validation will check that the alg
of the header is contained
in the ones provided and will error otherwise.
Defaults to vec![Algorithm::HS256]
.
Methods
impl Validation
pub fn new(alg: Algorithm) -> Validation
Create a default validation setup allowing the given alg
pub fn set_audience<T>(&mut self, audience: &T) where
T: Serialize,
T: Serialize,
Since aud
can be either a String or an array of String in the JWT spec, this method will take
care of serializing the value.
Trait Implementations
impl Clone for Validation
fn clone(&self) -> Validation
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for Validation
impl Default for Validation
fn default() -> Validation
impl PartialEq<Validation> for Validation
fn eq(&self, other: &Validation) -> bool
fn ne(&self, other: &Validation) -> bool
impl StructuralPartialEq for Validation
Auto Trait Implementations
impl RefUnwindSafe for Validation
impl Send for Validation
impl Sync for Validation
impl Unpin for Validation
impl UnwindSafe for Validation
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> State for T where
T: 'static + Send + Sync,
[src]
T: 'static + Send + Sync,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,