#[non_exhaustive]pub struct BackendAuthenticationConfig {
pub name: String,
pub description: String,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub labels: HashMap<String, String>,
pub client_certificate: String,
pub trust_config: String,
pub well_known_roots: WellKnownRoots,
pub etag: String,
/* private fields */
}Expand description
BackendAuthenticationConfig message groups the TrustConfig together with other settings that control how the load balancer authenticates, and expresses its identity to, the backend:
-
trustConfigis the attached TrustConfig. -
wellKnownRootsindicates whether the load balance should trust backend server certificates that are issued by public certificate authorities, in addition to certificates trusted by the TrustConfig. -
clientCertificateis a client certificate that the load balancer uses to express its identity to the backend, if the connection to the backend uses mTLS.
You can attach the BackendAuthenticationConfig to the load balancer’s BackendService directly determining how that BackendService negotiates TLS.
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 BackendAuthenticationConfig resource. It matches the
pattern
projects/*/locations/{location}/backendAuthenticationConfigs/{backend_authentication_config}
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.
labels: HashMap<String, String>Set of label tags associated with the resource.
client_certificate: StringOptional. A reference to a certificatemanager.googleapis.com.Certificate resource. This is a relative resource path following the form “projects/{project}/locations/{location}/certificates/{certificate}”.
Used by a BackendService to negotiate mTLS when the backend connection uses TLS and the backend requests a client certificate. Must have a CLIENT_AUTH scope.
trust_config: StringOptional. A reference to a TrustConfig resource from the certificatemanager.googleapis.com namespace. This is a relative resource path following the form “projects/{project}/locations/{location}/trustConfigs/{trust_config}”.
A BackendService uses the chain of trust represented by this TrustConfig, if specified, to validate the server certificates presented by the backend. Required unless wellKnownRoots is set to PUBLIC_ROOTS.
well_known_roots: WellKnownRootsWell known roots to use for server certificate validation.
etag: StringOutput only. Etag of the resource.
Implementations§
Source§impl BackendAuthenticationConfig
impl BackendAuthenticationConfig
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 = BackendAuthenticationConfig::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 = BackendAuthenticationConfig::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 = BackendAuthenticationConfig::new().set_or_clear_create_time(Some(Timestamp::default()/* use setters */));
let x = BackendAuthenticationConfig::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 = BackendAuthenticationConfig::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 = BackendAuthenticationConfig::new().set_or_clear_update_time(Some(Timestamp::default()/* use setters */));
let x = BackendAuthenticationConfig::new().set_or_clear_update_time(None::<Timestamp>);Sourcepub fn set_labels<T, K, V>(self, v: T) -> Self
pub fn set_labels<T, K, V>(self, v: T) -> Self
Sourcepub fn set_client_certificate<T: Into<String>>(self, v: T) -> Self
pub fn set_client_certificate<T: Into<String>>(self, v: T) -> Self
Sets the value of client_certificate.
§Example
let x = BackendAuthenticationConfig::new().set_client_certificate("example");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 = BackendAuthenticationConfig::new().set_trust_config("example");Sourcepub fn set_well_known_roots<T: Into<WellKnownRoots>>(self, v: T) -> Self
pub fn set_well_known_roots<T: Into<WellKnownRoots>>(self, v: T) -> Self
Sets the value of well_known_roots.
§Example
use google_cloud_networksecurity_v1::model::backend_authentication_config::WellKnownRoots;
let x0 = BackendAuthenticationConfig::new().set_well_known_roots(WellKnownRoots::None);
let x1 = BackendAuthenticationConfig::new().set_well_known_roots(WellKnownRoots::PublicRoots);Trait Implementations§
Source§impl Clone for BackendAuthenticationConfig
impl Clone for BackendAuthenticationConfig
Source§fn clone(&self) -> BackendAuthenticationConfig
fn clone(&self) -> BackendAuthenticationConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more