Class: Google::Apis::ComputeAlpha::SecuritySettings

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

Overview

The authentication and authorization settings for a BackendService.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ SecuritySettings

Returns a new instance of SecuritySettings.



39747
39748
39749
# File 'lib/google/apis/compute_alpha/classes.rb', line 39747

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

Instance Attribute Details

#authenticationString

[Deprecated] Use clientTlsPolicy instead. Corresponds to the JSON property authentication

Returns:

  • (String)


39702
39703
39704
# File 'lib/google/apis/compute_alpha/classes.rb', line 39702

def authentication
  @authentication
end

#authentication_policyGoogle::Apis::ComputeAlpha::AuthenticationPolicy

[Deprecated] The authentication settings for the backend service. The authentication settings for the backend service. Corresponds to the JSON property authenticationPolicy



39708
39709
39710
# File 'lib/google/apis/compute_alpha/classes.rb', line 39708

def authentication_policy
  @authentication_policy
end

#authorization_configGoogle::Apis::ComputeAlpha::AuthorizationConfig

[Deprecated] Authorization configuration provides service-level and method- level access control for a service. control for a service. Corresponds to the JSON property authorizationConfig



39714
39715
39716
# File 'lib/google/apis/compute_alpha/classes.rb', line 39714

def authorization_config
  @authorization_config
end

#client_tls_policyString

Optional. A URL referring to a networksecurity.ClientTlsPolicy resource that describes how clients should authenticate with this service's backends. clientTlsPolicy only applies to a global BackendService with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank, communications are not encrypted. Note: This field currently has no impact. Corresponds to the JSON property clientTlsPolicy

Returns:

  • (String)


39723
39724
39725
# File 'lib/google/apis/compute_alpha/classes.rb', line 39723

def client_tls_policy
  @client_tls_policy
end

#client_tls_settingsGoogle::Apis::ComputeAlpha::ClientTlsSettings

[Deprecated] The client side authentication settings for connection originating from the backend service. the backend service. Corresponds to the JSON property clientTlsSettings



39729
39730
39731
# File 'lib/google/apis/compute_alpha/classes.rb', line 39729

def client_tls_settings
  @client_tls_settings
end

#subject_alt_namesArray<String>

Optional. A list of Subject Alternative Names (SANs) that the client verifies during a mutual TLS handshake with an server/endpoint for this BackendService. When the server presents its X.509 certificate to the client, the client inspects the certificate's subjectAltName field. If the field contains one of the specified values, the communication continues. Otherwise, it fails. This additional check enables the client to verify that the server is authorized to run the requested service. Note that the contents of the server certificate's subjectAltName field are configured by the Public Key Infrastructure which provisions server identities. Only applies to a global BackendService with loadBalancingScheme set to INTERNAL_SELF_MANAGED. Only applies when BackendService has an attached clientTlsPolicy with clientCertificate (mTLS mode). Note: This field currently has no impact. Corresponds to the JSON property subjectAltNames

Returns:

  • (Array<String>)


39745
39746
39747
# File 'lib/google/apis/compute_alpha/classes.rb', line 39745

def subject_alt_names
  @subject_alt_names
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



39752
39753
39754
39755
39756
39757
39758
39759
# File 'lib/google/apis/compute_alpha/classes.rb', line 39752

def update!(**args)
  @authentication = args[:authentication] if args.key?(:authentication)
  @authentication_policy = args[:authentication_policy] if args.key?(:authentication_policy)
  @authorization_config = args[:authorization_config] if args.key?(:authorization_config)
  @client_tls_policy = args[:client_tls_policy] if args.key?(:client_tls_policy)
  @client_tls_settings = args[:client_tls_settings] if args.key?(:client_tls_settings)
  @subject_alt_names = args[:subject_alt_names] if args.key?(:subject_alt_names)
end