#[non_exhaustive]pub struct TlsInspectionPolicy {
pub name: String,
pub description: String,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub ca_pool: String,
pub trust_config: String,
pub exclude_public_ca_set: Option<bool>,
pub min_tls_version: TlsVersion,
pub tls_feature_profile: Profile,
pub custom_tls_features: Vec<String>,
/* private fields */
}Expand description
The TlsInspectionPolicy resource contains references to CA pools in Certificate Authority Service and associated metadata.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: StringRequired. Name of the resource. Name is of the form projects/{project}/locations/{location}/tlsInspectionPolicies/{tls_inspection_policy} tls_inspection_policy should match the pattern:(^a-z?$).
description: StringOptional. Free-text description of the resource.
create_time: Option<Timestamp>Output only. The timestamp when the resource was created.
update_time: Option<Timestamp>Output only. The timestamp when the resource was updated.
ca_pool: StringRequired. A CA pool resource used to issue interception certificates. The CA pool string has a relative resource path following the form “projects/{project}/locations/{location}/caPools/{ca_pool}”.
trust_config: StringOptional. A TrustConfig resource used when making a connection to the TLS server. This is a relative resource path following the form “projects/{project}/locations/{location}/trustConfigs/{trust_config}”. This is necessary to intercept TLS connections to servers with certificates signed by a private CA or self-signed certificates. Note that Secure Web Proxy does not yet honor this field.
exclude_public_ca_set: Option<bool>Optional. If FALSE (the default), use our default set of public CAs in addition to any CAs specified in trust_config. These public CAs are currently based on the Mozilla Root Program and are subject to change over time. If TRUE, do not accept our default set of public CAs. Only CAs specified in trust_config will be accepted. This defaults to FALSE (use public CAs in addition to trust_config) for backwards compatibility, but trusting public root CAs is not recommended unless the traffic in question is outbound to public web servers. When possible, prefer setting this to “false” and explicitly specifying trusted CAs and certificates in a TrustConfig. Note that Secure Web Proxy does not yet honor this field.
min_tls_version: TlsVersionOptional. Minimum TLS version that the firewall should use when negotiating connections with both clients and servers. If this is not set, then the default value is to allow the broadest set of clients and servers (TLS 1.0 or higher). Setting this to more restrictive values may improve security, but may also prevent the firewall from connecting to some clients or servers. Note that Secure Web Proxy does not yet honor this field.
tls_feature_profile: ProfileOptional. The selected Profile. If this is not set, then the default value is to allow the broadest set of clients and servers (“PROFILE_COMPATIBLE”). Setting this to more restrictive values may improve security, but may also prevent the TLS inspection proxy from connecting to some clients or servers. Note that Secure Web Proxy does not yet honor this field.
custom_tls_features: Vec<String>Optional. List of custom TLS cipher suites selected. This field is valid only if the selected tls_feature_profile is CUSTOM. The [compute.SslPoliciesService.ListAvailableFeatures][] method returns the set of features that can be specified in this list. Note that Secure Web Proxy does not yet honor this field.
Implementations§
Source§impl TlsInspectionPolicy
impl TlsInspectionPolicy
pub fn new() -> Self
Sourcepub fn set_description<T: Into<String>>(self, v: T) -> Self
pub fn set_description<T: Into<String>>(self, v: T) -> Self
Sets the value of description.
§Example
let x = TlsInspectionPolicy::new().set_description("example");Sourcepub fn set_create_time<T>(self, v: T) -> Self
pub fn set_create_time<T>(self, v: T) -> Self
Sets the value of create_time.
§Example
use wkt::Timestamp;
let x = TlsInspectionPolicy::new().set_create_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of create_time.
§Example
use wkt::Timestamp;
let x = TlsInspectionPolicy::new().set_or_clear_create_time(Some(Timestamp::default()/* use setters */));
let x = TlsInspectionPolicy::new().set_or_clear_create_time(None::<Timestamp>);Sourcepub fn set_update_time<T>(self, v: T) -> Self
pub fn set_update_time<T>(self, v: T) -> Self
Sets the value of update_time.
§Example
use wkt::Timestamp;
let x = TlsInspectionPolicy::new().set_update_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of update_time.
§Example
use wkt::Timestamp;
let x = TlsInspectionPolicy::new().set_or_clear_update_time(Some(Timestamp::default()/* use setters */));
let x = TlsInspectionPolicy::new().set_or_clear_update_time(None::<Timestamp>);Sourcepub fn set_ca_pool<T: Into<String>>(self, v: T) -> Self
pub fn set_ca_pool<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_trust_config<T: Into<String>>(self, v: T) -> Self
pub fn set_trust_config<T: Into<String>>(self, v: T) -> Self
Sets the value of trust_config.
§Example
let x = TlsInspectionPolicy::new().set_trust_config("example");Sourcepub fn set_exclude_public_ca_set<T>(self, v: T) -> Self
pub fn set_exclude_public_ca_set<T>(self, v: T) -> Self
Sets the value of exclude_public_ca_set.
§Example
let x = TlsInspectionPolicy::new().set_exclude_public_ca_set(true);Sourcepub fn set_or_clear_exclude_public_ca_set<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_exclude_public_ca_set<T>(self, v: Option<T>) -> Self
Sets or clears the value of exclude_public_ca_set.
§Example
let x = TlsInspectionPolicy::new().set_or_clear_exclude_public_ca_set(Some(false));
let x = TlsInspectionPolicy::new().set_or_clear_exclude_public_ca_set(None::<bool>);Sourcepub fn set_min_tls_version<T: Into<TlsVersion>>(self, v: T) -> Self
pub fn set_min_tls_version<T: Into<TlsVersion>>(self, v: T) -> Self
Sets the value of min_tls_version.
§Example
use google_cloud_networksecurity_v1::model::tls_inspection_policy::TlsVersion;
let x0 = TlsInspectionPolicy::new().set_min_tls_version(TlsVersion::Tls10);
let x1 = TlsInspectionPolicy::new().set_min_tls_version(TlsVersion::Tls11);
let x2 = TlsInspectionPolicy::new().set_min_tls_version(TlsVersion::Tls12);Sourcepub fn set_tls_feature_profile<T: Into<Profile>>(self, v: T) -> Self
pub fn set_tls_feature_profile<T: Into<Profile>>(self, v: T) -> Self
Sets the value of tls_feature_profile.
§Example
use google_cloud_networksecurity_v1::model::tls_inspection_policy::Profile;
let x0 = TlsInspectionPolicy::new().set_tls_feature_profile(Profile::Compatible);
let x1 = TlsInspectionPolicy::new().set_tls_feature_profile(Profile::Modern);
let x2 = TlsInspectionPolicy::new().set_tls_feature_profile(Profile::Restricted);Sourcepub fn set_custom_tls_features<T, V>(self, v: T) -> Self
pub fn set_custom_tls_features<T, V>(self, v: T) -> Self
Sets the value of custom_tls_features.
§Example
let x = TlsInspectionPolicy::new().set_custom_tls_features(["a", "b", "c"]);Trait Implementations§
Source§impl Clone for TlsInspectionPolicy
impl Clone for TlsInspectionPolicy
Source§fn clone(&self) -> TlsInspectionPolicy
fn clone(&self) -> TlsInspectionPolicy
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more