Class: AWSCDK::AppMesh::CfnVirtualGateway::VirtualGatewayClientPolicyTLSProperty

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

Overview

An object that represents a Transport Layer Security (TLS) client policy.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(validation:, certificate: nil, enforce: nil, ports: nil) ⇒ VirtualGatewayClientPolicyTLSProperty

Returns a new instance of VirtualGatewayClientPolicyTLSProperty.

Parameters:



878
879
880
881
882
883
884
885
886
887
# File 'app_mesh/cfn_virtual_gateway.rb', line 878

def initialize(validation:, certificate: nil, enforce: nil, ports: nil)
  @validation = validation.is_a?(Hash) ? ::AWSCDK::AppMesh::CfnVirtualGateway::VirtualGatewayTLSValidationContextProperty.new(**validation.transform_keys(&:to_sym)) : validation
  Jsii::Type.check_type(@validation, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBtZXNoLkNmblZpcnR1YWxHYXRld2F5LlZpcnR1YWxHYXRld2F5VGxzVmFsaWRhdGlvbkNvbnRleHRQcm9wZXJ0eSJ9XX19")), "validation")
  @certificate = certificate.is_a?(Hash) ? ::AWSCDK::AppMesh::CfnVirtualGateway::VirtualGatewayClientTLSCertificateProperty.new(**certificate.transform_keys(&:to_sym)) : certificate
  Jsii::Type.check_type(@certificate, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBtZXNoLkNmblZpcnR1YWxHYXRld2F5LlZpcnR1YWxHYXRld2F5Q2xpZW50VGxzQ2VydGlmaWNhdGVQcm9wZXJ0eSJ9XX19")), "certificate") unless @certificate.nil?
  @enforce = enforce
  Jsii::Type.check_type(@enforce, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enforce") unless @enforce.nil?
  @ports = ports
  Jsii::Type.check_type(@ports, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siY29sbGVjdGlvbiI6eyJlbGVtZW50dHlwZSI6eyJwcmltaXRpdmUiOiJudW1iZXIifSwia2luZCI6ImFycmF5In19LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "ports") unless @ports.nil?
end

Instance Attribute Details

#certificateAWSCDK::IResolvable, ... (readonly)

A reference to an object that represents a virtual gateway's client's Transport Layer Security (TLS) certificate.



898
899
900
# File 'app_mesh/cfn_virtual_gateway.rb', line 898

def certificate
  @certificate
end

#enforceBoolean, ... (readonly)

Whether the policy is enforced.

The default is True , if a value isn't specified.



905
906
907
# File 'app_mesh/cfn_virtual_gateway.rb', line 905

def enforce
  @enforce
end

#portsArray<Numeric>, ... (readonly)

One or more ports that the policy is enforced for.



910
911
912
# File 'app_mesh/cfn_virtual_gateway.rb', line 910

def ports
  @ports
end

Class Method Details

.jsii_propertiesObject



912
913
914
915
916
917
918
919
# File 'app_mesh/cfn_virtual_gateway.rb', line 912

def self.jsii_properties
  {
    :validation => "validation",
    :certificate => "certificate",
    :enforce => "enforce",
    :ports => "ports",
  }
end

Instance Method Details

#to_jsiiObject



921
922
923
924
925
926
927
928
929
930
# File 'app_mesh/cfn_virtual_gateway.rb', line 921

def to_jsii
  result = {}
  result.merge!({
    "validation" => @validation,
    "certificate" => @certificate,
    "enforce" => @enforce,
    "ports" => @ports,
  })
  result.compact
end