pub struct TLSOptionSpec {
pub alpn_protocols: Option<Vec<String>>,
pub cipher_suites: Option<Vec<String>>,
pub client_auth: Option<TLSOptionClientAuth>,
pub curve_preferences: Option<Vec<String>>,
pub max_version: Option<String>,
pub min_version: Option<String>,
pub prefer_server_cipher_suites: Option<bool>,
pub sni_strict: Option<bool>,
}
Expand description
TLSOptionSpec defines the desired state of a TLSOption.
Fields§
§alpn_protocols: Option<Vec<String>>
ALPNProtocols defines the list of supported application level protocols for the TLS handshake, in order of preference. More info: https://doc.traefik.io/traefik/v3.3/https/tls/#alpn-protocols
cipher_suites: Option<Vec<String>>
CipherSuites defines the list of supported cipher suites for TLS versions up to TLS 1.2. More info: https://doc.traefik.io/traefik/v3.3/https/tls/#cipher-suites
client_auth: Option<TLSOptionClientAuth>
ClientAuth defines the server’s policy for TLS Client Authentication.
curve_preferences: Option<Vec<String>>
CurvePreferences defines the preferred elliptic curves in a specific order. More info: https://doc.traefik.io/traefik/v3.3/https/tls/#curve-preferences
max_version: Option<String>
MaxVersion defines the maximum TLS version that Traefik will accept. Possible values: VersionTLS10, VersionTLS11, VersionTLS12, VersionTLS13. Default: None.
min_version: Option<String>
MinVersion defines the minimum TLS version that Traefik will accept. Possible values: VersionTLS10, VersionTLS11, VersionTLS12, VersionTLS13. Default: VersionTLS10.
prefer_server_cipher_suites: Option<bool>
PreferServerCipherSuites defines whether the server chooses a cipher suite among his own instead of among the client’s. It is enabled automatically when minVersion or maxVersion is set. Deprecated: https://github.com/golang/go/issues/45430
sni_strict: Option<bool>
SniStrict defines whether Traefik allows connections from clients connections that do not specify a server_name extension.
Implementations§
Source§impl TLSOptionSpec
impl TLSOptionSpec
Sourcepub fn builder() -> TLSOptionSpecBuilder<((), (), (), (), (), (), (), ())>
pub fn builder() -> TLSOptionSpecBuilder<((), (), (), (), (), (), (), ())>
Create a builder for building TLSOptionSpec
.
On the builder, call .alpn_protocols(...)
(optional), .cipher_suites(...)
(optional), .client_auth(...)
(optional), .curve_preferences(...)
(optional), .max_version(...)
(optional), .min_version(...)
(optional), .prefer_server_cipher_suites(...)
(optional), .sni_strict(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of TLSOptionSpec
.
Trait Implementations§
Source§impl Clone for TLSOptionSpec
impl Clone for TLSOptionSpec
Source§fn clone(&self) -> TLSOptionSpec
fn clone(&self) -> TLSOptionSpec
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for TLSOptionSpec
impl Debug for TLSOptionSpec
Source§impl Default for TLSOptionSpec
impl Default for TLSOptionSpec
Source§fn default() -> TLSOptionSpec
fn default() -> TLSOptionSpec
Source§impl<'de> Deserialize<'de> for TLSOptionSpec
impl<'de> Deserialize<'de> for TLSOptionSpec
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for TLSOptionSpec
impl JsonSchema for TLSOptionSpec
Source§fn schema_name() -> String
fn schema_name() -> String
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
$ref
keyword. Read moreSource§impl PartialEq for TLSOptionSpec
impl PartialEq for TLSOptionSpec
Source§impl Serialize for TLSOptionSpec
impl Serialize for TLSOptionSpec
impl StructuralPartialEq for TLSOptionSpec
Auto Trait Implementations§
impl Freeze for TLSOptionSpec
impl RefUnwindSafe for TLSOptionSpec
impl Send for TLSOptionSpec
impl Sync for TLSOptionSpec
impl Unpin for TLSOptionSpec
impl UnwindSafe for TLSOptionSpec
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§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