Struct jwt_compact_preview::Claims[][src]

pub struct Claims<T> {
    pub expiration_date: Option<DateTime<Utc>>,
    pub not_before: Option<DateTime<Utc>>,
    pub issued_at: Option<DateTime<Utc>>,
    pub custom: T,
}

Claims encoded in a token.

Claims are comprised of a “standard” part (exp, nbf and iat claims as per JWT spec), and custom fields. iss, sub and aud claims are not in the standard part due to a variety of data types they can be reasonably represented by.

Fields

expiration_date: Option<DateTime<Utc>>

Expiration date of the token.

not_before: Option<DateTime<Utc>>

Minimum date at which token is valid.

issued_at: Option<DateTime<Utc>>

Date of token issuance.

custom: T

Custom claims.

Implementations

impl Claims<Empty>[src]

pub fn empty() -> Self[src]

Creates an empty claims instance.

impl<T> Claims<T>[src]

pub fn new(custom_claims: T) -> Self[src]

Creates a new instance with the provided custom claims.

pub fn set_duration(self, duration: Duration) -> Self[src]

Sets expiration_date claim so that the token has the specified duration.

pub fn set_duration_and_issuance(self, duration: Duration) -> Self[src]

Atomically sets issued_at and expiration_date claims: first to the current time, and the second to match the specified duration of the token.

pub fn set_not_before(self, moment: DateTime<Utc>) -> Self[src]

Sets the nbf claim.

pub fn validate_expiration(
    &self,
    options: TimeOptions
) -> Result<&Self, ValidationError>
[src]

Validates the expiration claim.

This method will return an error if the claims do not feature an expiration date, or if it is in the past (subject to the provided options).

pub fn validate_maturity(
    &self,
    options: TimeOptions
) -> Result<&Self, ValidationError>
[src]

Validates the maturity date (nbf claim).

This method will return an error if the claims do not feature a maturity date, or if it is in the future (subject to the provided options).

Trait Implementations

impl<T: Clone> Clone for Claims<T>[src]

impl<T: Debug> Debug for Claims<T>[src]

impl<'de, T> Deserialize<'de> for Claims<T> where
    T: Deserialize<'de>, 
[src]

impl<T: PartialEq> PartialEq<Claims<T>> for Claims<T>[src]

impl<T> Serialize for Claims<T> where
    T: Serialize
[src]

impl<T> StructuralPartialEq for Claims<T>[src]

Auto Trait Implementations

impl<T> RefUnwindSafe for Claims<T> where
    T: RefUnwindSafe

impl<T> Send for Claims<T> where
    T: Send

impl<T> Sync for Claims<T> where
    T: Sync

impl<T> Unpin for Claims<T> where
    T: Unpin

impl<T> UnwindSafe for Claims<T> where
    T: UnwindSafe

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<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

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

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

impl<T> Same<T> for T

type Output = T

Should always be Self

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.

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