Class: Google::Apis::NetworksecurityV1::BackendAuthenticationConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networksecurity_v1/classes.rb,
lib/google/apis/networksecurity_v1/representations.rb,
lib/google/apis/networksecurity_v1/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.



970
971
972
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 970

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)


921
922
923
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 921

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)


926
927
928
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 926

def create_time
  @create_time
end

#descriptionString

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

Returns:

  • (String)


931
932
933
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 931

def description
  @description
end

#etagString

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

Returns:

  • (String)


936
937
938
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 936

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>)


941
942
943
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 941

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)


948
949
950
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 948

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)


958
959
960
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 958

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)


963
964
965
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 963

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)


968
969
970
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 968

def well_known_roots
  @well_known_roots
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



975
976
977
978
979
980
981
982
983
984
985
# File 'lib/google/apis/networksecurity_v1/classes.rb', line 975

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