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.



68309
68310
68311
# File 'lib/google/apis/compute_alpha/classes.rb', line 68309

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

Instance Attribute Details

#authenticationString

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

Returns:

  • (String)


68248
68249
68250
# File 'lib/google/apis/compute_alpha/classes.rb', line 68248

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



68254
68255
68256
# File 'lib/google/apis/compute_alpha/classes.rb', line 68254

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



68261
68262
68263
# File 'lib/google/apis/compute_alpha/classes.rb', line 68261

def authorization_config
  @authorization_config
end

#aws_v4_authenticationGoogle::Apis::ComputeAlpha::Awsv4Signature

Contains the configurations necessary to generate a signature for access to private storage buckets that support Signature Version 4 for authentication. The service name for generating the authentication header will always default to 's3'. Corresponds to the JSON property awsV4Authentication



68269
68270
68271
# File 'lib/google/apis/compute_alpha/classes.rb', line 68269

def aws_v4_authentication
  @aws_v4_authentication
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 globalBackendService with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank, communications are not encrypted. Corresponds to the JSON property clientTlsPolicy

Returns:

  • (String)


68280
68281
68282
# File 'lib/google/apis/compute_alpha/classes.rb', line 68280

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



68287
68288
68289
# File 'lib/google/apis/compute_alpha/classes.rb', line 68287

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 thisBackendService. When the server presents its X.509 certificate to the client, the client inspects the certificate'ssubjectAltName 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 withloadBalancingScheme set to INTERNAL_SELF_MANAGED. Only applies when BackendService has an attachedclientTlsPolicy with clientCertificate (mTLS mode). Corresponds to the JSON property subjectAltNames

Returns:

  • (Array<String>)


68307
68308
68309
# File 'lib/google/apis/compute_alpha/classes.rb', line 68307

def subject_alt_names
  @subject_alt_names
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



68314
68315
68316
68317
68318
68319
68320
68321
68322
# File 'lib/google/apis/compute_alpha/classes.rb', line 68314

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)
  @aws_v4_authentication = args[:aws_v4_authentication] if args.key?(:aws_v4_authentication)
  @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