Class: Google::Apis::NetworksecurityV1beta1::BackendAuthenticationConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networksecurity_v1beta1/classes.rb,
lib/google/apis/networksecurity_v1beta1/representations.rb,
lib/google/apis/networksecurity_v1beta1/representations.rb

Overview

BackendAuthenticationConfig message groups the TrustConfig together with other settings that control how the load balancer authenticates, and expresses its identity to, the backend: * trustConfig is the attached TrustConfig. * wellKnownRoots indicates whether the load balance should trust backend server certificates that are issued by public certificate authorities, in addition to certificates trusted by the TrustConfig. * clientCertificate is 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.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ BackendAuthenticationConfig

Returns a new instance of BackendAuthenticationConfig.



867
868
869
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 867

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#client_certificateString

Optional. 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. Corresponds to the JSON property clientCertificate

Returns:

  • (String)


818
819
820
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 818

def client_certificate
  @client_certificate
end

#create_timeString

Output only. The timestamp when the resource was created. Corresponds to the JSON property createTime

Returns:

  • (String)


823
824
825
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 823

def create_time
  @create_time
end

#descriptionString

Optional. Free-text description of the resource. Corresponds to the JSON property description

Returns:

  • (String)


828
829
830
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 828

def description
  @description
end

#etagString

Output only. Etag of the resource. Corresponds to the JSON property etag

Returns:

  • (String)


833
834
835
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 833

def etag
  @etag
end

#labelsHash<String,String>

Set of label tags associated with the resource. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


838
839
840
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 838

def labels
  @labels
end

#nameString

Required. Name of the BackendAuthenticationConfig resource. It matches the pattern projects/*/locations/location/backendAuthenticationConfigs/ backend_authentication_config` Corresponds to the JSON propertyname`

Returns:

  • (String)


845
846
847
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 845

def name
  @name
end

#trust_configString

Optional. 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. Corresponds to the JSON property trustConfig

Returns:

  • (String)


855
856
857
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 855

def trust_config
  @trust_config
end

#update_timeString

Output only. The timestamp when the resource was updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


860
861
862
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 860

def update_time
  @update_time
end

#well_known_rootsString

Well known roots to use for server certificate validation. Corresponds to the JSON property wellKnownRoots

Returns:

  • (String)


865
866
867
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 865

def well_known_roots
  @well_known_roots
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



872
873
874
875
876
877
878
879
880
881
882
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 872

def update!(**args)
  @client_certificate = args[:client_certificate] if args.key?(:client_certificate)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @etag = args[:etag] if args.key?(:etag)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @trust_config = args[:trust_config] if args.key?(:trust_config)
  @update_time = args[:update_time] if args.key?(:update_time)
  @well_known_roots = args[:well_known_roots] if args.key?(:well_known_roots)
end