[][src]Struct headers::StrictTransportSecurity

pub struct StrictTransportSecurity { /* fields omitted */ }

StrictTransportSecurity header, defined in RFC6797

This specification defines a mechanism enabling web sites to declare themselves accessible only via secure connections and/or for users to be able to direct their user agent(s) to interact with given sites only over secure connections. This overall policy is referred to as HTTP Strict Transport Security (HSTS). The policy is declared by web sites via the Strict-Transport-Security HTTP response header field and/or by other means, such as user agent configuration, for example.

ABNF

     [ directive ]  *( ";" [ directive ] )

     directive                 = directive-name [ "=" directive-value ]
     directive-name            = token
     directive-value           = token | quoted-string

Example values

  • max-age=31536000
  • max-age=15768000 ; includeSubdomains

Example

use std::time::Duration;
use headers::StrictTransportSecurity;

let sts = StrictTransportSecurity::including_subdomains(Duration::from_secs(31_536_000));

Implementations

impl StrictTransportSecurity[src]

pub fn including_subdomains(max_age: Duration) -> StrictTransportSecurity[src]

Create an STS header that includes subdomains

pub fn excluding_subdomains(max_age: Duration) -> StrictTransportSecurity[src]

Create an STS header that excludes subdomains

pub fn include_subdomains(&self) -> bool[src]

Get whether this should include subdomains.

pub fn max_age(&self) -> Duration[src]

Get the max-age.

Trait Implementations

impl Clone for StrictTransportSecurity[src]

impl Debug for StrictTransportSecurity[src]

impl Header for StrictTransportSecurity[src]

impl PartialEq<StrictTransportSecurity> for StrictTransportSecurity[src]

impl StructuralPartialEq for StrictTransportSecurity[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<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.