Class: AWSCDK::AppMesh::ListenerTLSOptions

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
app_mesh/listener_tls_options.rb

Overview

Represents TLS properties for listener.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(certificate:, mode:, mutual_tls_validation: nil) ⇒ ListenerTLSOptions

Returns a new instance of ListenerTLSOptions.

Parameters:



10
11
12
13
14
15
16
17
# File 'app_mesh/listener_tls_options.rb', line 10

def initialize(certificate:, mode:, mutual_tls_validation: nil)
  @certificate = certificate
  Jsii::Type.check_type(@certificate, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwbWVzaC5UbHNDZXJ0aWZpY2F0ZSJ9")), "certificate")
  @mode = mode
  Jsii::Type.check_type(@mode, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwbWVzaC5UbHNNb2RlIn0=")), "mode")
  @mutual_tls_validation = mutual_tls_validation.is_a?(Hash) ? ::AWSCDK::AppMesh::MutualTLSValidation.new(**mutual_tls_validation.transform_keys(&:to_sym)) : mutual_tls_validation
  Jsii::Type.check_type(@mutual_tls_validation, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwbWVzaC5NdXR1YWxUbHNWYWxpZGF0aW9uIn0=")), "mutualTlsValidation") unless @mutual_tls_validation.nil?
end

Instance Attribute Details

#certificateAWSCDK::AppMesh::TLSCertificate (readonly)

Represents TLS certificate.



22
23
24
# File 'app_mesh/listener_tls_options.rb', line 22

def certificate
  @certificate
end

#modeAWSCDK::AppMesh::TLSMode (readonly)

The TLS mode.



26
27
28
# File 'app_mesh/listener_tls_options.rb', line 26

def mode
  @mode
end

#mutual_tls_validationAWSCDK::AppMesh::MutualTLSValidation? (readonly)

Note:

Default: - client TLS certificate is not required

Represents a listener's TLS validation context.

The client certificate will only be validated if the client provides it, enabling mutual TLS.



33
34
35
# File 'app_mesh/listener_tls_options.rb', line 33

def mutual_tls_validation
  @mutual_tls_validation
end

Class Method Details

.jsii_propertiesObject



35
36
37
38
39
40
41
# File 'app_mesh/listener_tls_options.rb', line 35

def self.jsii_properties
  {
    :certificate => "certificate",
    :mode => "mode",
    :mutual_tls_validation => "mutualTlsValidation",
  }
end

Instance Method Details

#to_jsiiObject



43
44
45
46
47
48
49
50
51
# File 'app_mesh/listener_tls_options.rb', line 43

def to_jsii
  result = {}
  result.merge!({
    "certificate" => @certificate,
    "mode" => @mode,
    "mutualTlsValidation" => @mutual_tls_validation,
  })
  result.compact
end