Enum rocket_contrib::helmet::ExpectCt

source ·
pub enum ExpectCt {
    Enforce(Duration),
    Report(Duration, Uri<'static>),
    ReportAndEnforce(Duration, Uri<'static>),
}
Expand description

The Expect-CT header: enables Certificate Transparency to detect and prevent misuse of TLS certificates.

Certificate Transparency solves a variety of problems with public TLS/SSL certificate management and is valuable measure for all public applications. If you’re just getting started with certificate transparency, ensure that your site is in compliance before you enable enforcement with ExpectCt::Enforce or ExpectCt::ReportAndEnforce. Failure to do so will result in the browser refusing to communicate with your application. You have been warned.

Variants§

§

Enforce(Duration)

Enforce certificate compliance for the next Duration. Ensure that your certificates are in compliance before turning on enforcement. (SpaceHelmet default).

§

Report(Duration, Uri<'static>)

Report to Uri, but do not enforce, compliance violations for the next Duration. Doesn’t provide any protection but is a good way make sure things are working correctly before turning on enforcement in production.

§

ReportAndEnforce(Duration, Uri<'static>)

Enforce compliance and report violations to Uri for the next Duration.

Trait Implementations§

source§

impl Default for ExpectCt

Defaults to [ExpectCt::Enforce(Duration::days(30))], enforce CT compliance, see draft standard for more.

source§

fn default() -> ExpectCt

Returns the “default value” for a type. Read more
source§

impl<'a> Into<Header<'static>> for &'a ExpectCt

source§

fn into(self) -> Header<'static>

Converts this type into the (usually inferred) input type.
source§

impl Policy for ExpectCt

source§

const NAME: &'static str = "Expect-CT"

The actual name of the HTTP header. Read more
source§

fn header(&self) -> Header<'static>

Returns the Header to attach to all outgoing responses. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T, I> AsResult<T, I> for T
where I: Input,

source§

fn as_result(self) -> Result<T, ParseErr<I>>

source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> IntoCollection<T> for T

§

fn into_collection<A>(self) -> SmallVec<A>
where A: Array<Item = T>,

Converts self into a collection.
§

fn mapped<U, F, A>(self, f: F) -> SmallVec<A>
where F: FnMut(T) -> U, A: Array<Item = U>,

source§

impl<T> IntoSql for T

source§

fn into_sql<T>(self) -> Self::Expression
where Self: Sized + AsExpression<T>,

Convert self to an expression for Diesel’s query builder. Read more
source§

fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression

Convert &self to an expression for Diesel’s query builder. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Err>

source§

impl<T> Typeable for T
where T: Any,

source§

fn get_type(&self) -> TypeId

Get the TypeId of this object.
source§

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

source§

fn vzip(self) -> V