Class: Google::Apis::NetworksecurityV1beta1::ServerTlsPolicy

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

ServerTlsPolicy is a resource that specifies how a server should authenticate incoming requests. This resource itself does not affect configuration unless it is attached to a target HTTPS proxy or endpoint config selector resource. ServerTlsPolicy in the form accepted by external HTTPS load balancers can be attached only to TargetHttpsProxy with an EXTERNAL or EXTERNAL_MANAGED load balancing scheme. Traffic Director compatible ServerTlsPolicies can be attached to EndpointPolicy and TargetHttpsProxy with Traffic Director INTERNAL_SELF_MANAGED load balancing scheme.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ServerTlsPolicy

Returns a new instance of ServerTlsPolicy.



1853
1854
1855
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1853

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

Instance Attribute Details

#allow_openBoolean Also known as: allow_open?

This field applies only for Traffic Director policies. It is must be set to false for external HTTPS load balancer policies. Determines if server allows plaintext connections. If set to true, server allows plain text connections. By default, it is set to false. This setting is not exclusive of other encryption modes. For example, if allow_open and mtls_policy are set, server allows both plain text and mTLS connections. See documentation of other encryption modes to confirm compatibility. Consider using it if you wish to upgrade in place your deployment to TLS while having mixed TLS and non-TLS traffic reaching port :80. Corresponds to the JSON property allowOpen

Returns:

  • (Boolean)


1813
1814
1815
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1813

def allow_open
  @allow_open
end

#create_timeString

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

Returns:

  • (String)


1819
1820
1821
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1819

def create_time
  @create_time
end

#descriptionString

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

Returns:

  • (String)


1824
1825
1826
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1824

def description
  @description
end

#labelsHash<String,String>

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

Returns:

  • (Hash<String,String>)


1829
1830
1831
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1829

def labels
  @labels
end

#mtls_policyGoogle::Apis::NetworksecurityV1beta1::MtlsPolicy

Specification of the MTLSPolicy. Corresponds to the JSON property mtlsPolicy



1834
1835
1836
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1834

def mtls_policy
  @mtls_policy
end

#nameString

Required. Name of the ServerTlsPolicy resource. It matches the pattern projects/*/locations/location/serverTlsPolicies/server_tls_policy` Corresponds to the JSON propertyname`

Returns:

  • (String)


1840
1841
1842
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1840

def name
  @name
end

#server_certificateGoogle::Apis::NetworksecurityV1beta1::GoogleCloudNetworksecurityV1beta1CertificateProvider

Specification of certificate provider. Defines the mechanism to obtain the certificate and private key for peer to peer authentication. Corresponds to the JSON property serverCertificate



1846
1847
1848
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1846

def server_certificate
  @server_certificate
end

#update_timeString

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

Returns:

  • (String)


1851
1852
1853
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1851

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1858

def update!(**args)
  @allow_open = args[:allow_open] if args.key?(:allow_open)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @labels = args[:labels] if args.key?(:labels)
  @mtls_policy = args[:mtls_policy] if args.key?(:mtls_policy)
  @name = args[:name] if args.key?(:name)
  @server_certificate = args[:server_certificate] if args.key?(:server_certificate)
  @update_time = args[:update_time] if args.key?(:update_time)
end