Struct actix_web_lab::header::StrictTransportSecurity
source · pub struct StrictTransportSecurity {
pub include_subdomains: bool,
pub preload: bool,
/* private fields */
}
Expand description
HTTP Strict Transport Security (HSTS) configuration.
Care should be taken when setting up HSTS for your site; misconfiguration can potentially leave parts of your site in an unusable state.
§Default
The Default
implementation uses a 5 minute max-age
and does not include subdomains or
preloading. This default is intentionally conservative to prevent accidental misconfiguration
causing irrecoverable problems for users.
Once you have configured and tested the default HSTS config, recommended
can be used as a secure default for production.
§References
See the HSTS page on MDN for more information.
Fields§
§include_subdomains: bool
The includeSubdomains
directive.
preload: bool
The preload
directive.
Implementations§
source§impl StrictTransportSecurity
impl StrictTransportSecurity
sourcepub fn new(duration: Duration) -> Self
pub fn new(duration: Duration) -> Self
Constructs a new HSTS configuration using the given duration
.
Other values take their default.
sourcepub fn recommended() -> Self
pub fn recommended() -> Self
Constructs a secure, production-ready HSTS configuration.
Uses a max-age
of 2 years and includes subdomains.
sourcepub fn include_subdomains(self) -> Self
pub fn include_subdomains(self) -> Self
Send includeSubdomains
directive with header.
sourcepub fn preload(self) -> Self
pub fn preload(self) -> Self
Send preload
directive with header.
See https://hstspreload.org/ for more information.
Trait Implementations§
source§impl Clone for StrictTransportSecurity
impl Clone for StrictTransportSecurity
source§fn clone(&self) -> StrictTransportSecurity
fn clone(&self) -> StrictTransportSecurity
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for StrictTransportSecurity
impl Debug for StrictTransportSecurity
source§impl Default for StrictTransportSecurity
impl Default for StrictTransportSecurity
source§impl FromStr for StrictTransportSecurity
impl FromStr for StrictTransportSecurity
source§impl Header for StrictTransportSecurity
impl Header for StrictTransportSecurity
source§fn name() -> HeaderName
fn name() -> HeaderName
source§fn parse<M: HttpMessage>(msg: &M) -> Result<Self, ParseError>
fn parse<M: HttpMessage>(msg: &M) -> Result<Self, ParseError>
source§impl PartialEq for StrictTransportSecurity
impl PartialEq for StrictTransportSecurity
source§impl TryIntoHeaderValue for StrictTransportSecurity
impl TryIntoHeaderValue for StrictTransportSecurity
source§type Error = Infallible
type Error = Infallible
source§fn try_into_value(self) -> Result<HeaderValue, Self::Error>
fn try_into_value(self) -> Result<HeaderValue, Self::Error>
impl Copy for StrictTransportSecurity
impl Eq for StrictTransportSecurity
impl StructuralPartialEq for StrictTransportSecurity
Auto Trait Implementations§
impl Freeze for StrictTransportSecurity
impl RefUnwindSafe for StrictTransportSecurity
impl Send for StrictTransportSecurity
impl Sync for StrictTransportSecurity
impl Unpin for StrictTransportSecurity
impl UnwindSafe for StrictTransportSecurity
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more