Class: AWSCDK::ElasticLoadBalancingv2::CfnListenerProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::ElasticLoadBalancingv2::CfnListenerProps
- Defined in:
- elastic_load_balancingv2/cfn_listener_props.rb
Overview
Properties for defining a CfnListener.
Instance Attribute Summary collapse
-
#alpn_policy ⇒ Array<String>?
readonly
[TLS listener] The name of the Application-Layer Protocol Negotiation (ALPN) policy.
-
#certificates ⇒ AWSCDK::IResolvable, ...
readonly
The default SSL server certificate for a secure listener.
-
#default_actions ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::ElasticLoadBalancingv2::CfnListener::ActionProperty>
readonly
The actions for the default rule.
-
#listener_attributes ⇒ AWSCDK::IResolvable, ...
readonly
The listener attributes.
-
#load_balancer_arn ⇒ String, AWSCDK::Interfaces::AWSElasticloadbalancingv2::ILoadBalancerRef
readonly
The Amazon Resource Name (ARN) of the load balancer.
-
#mutual_authentication ⇒ AWSCDK::IResolvable, ...
readonly
The mutual authentication configuration information.
-
#port ⇒ Numeric?
readonly
The port on which the load balancer is listening.
-
#protocol ⇒ String?
readonly
The protocol for connections from clients to the load balancer.
-
#ssl_policy ⇒ String?
readonly
[HTTPS and TLS listeners] The security policy that defines which protocols and ciphers are supported.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(default_actions:, load_balancer_arn:, alpn_policy: nil, certificates: nil, listener_attributes: nil, mutual_authentication: nil, port: nil, protocol: nil, ssl_policy: nil) ⇒ CfnListenerProps
constructor
A new instance of CfnListenerProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(default_actions:, load_balancer_arn:, alpn_policy: nil, certificates: nil, listener_attributes: nil, mutual_authentication: nil, port: nil, protocol: nil, ssl_policy: nil) ⇒ CfnListenerProps
Returns a new instance of CfnListenerProps.
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 18 def initialize(default_actions:, load_balancer_arn:, alpn_policy: nil, certificates: nil, listener_attributes: nil, mutual_authentication: nil, port: nil, protocol: nil, ssl_policy: nil) @default_actions = default_actions Jsii::Type.check_type(@default_actions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mi5DZm5MaXN0ZW5lci5BY3Rpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "defaultActions") @load_balancer_arn = load_balancer_arn Jsii::Type.check_type(@load_balancer_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19lbGFzdGljbG9hZGJhbGFuY2luZ3YyLklMb2FkQmFsYW5jZXJSZWYifV19fQ==")), "loadBalancerArn") @alpn_policy = alpn_policy Jsii::Type.check_type(@alpn_policy, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "alpnPolicy") unless @alpn_policy.nil? @certificates = certificates Jsii::Type.check_type(@certificates, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mi5DZm5MaXN0ZW5lci5DZXJ0aWZpY2F0ZVByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "certificates") unless @certificates.nil? @listener_attributes = listener_attributes Jsii::Type.check_type(@listener_attributes, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mi5DZm5MaXN0ZW5lci5MaXN0ZW5lckF0dHJpYnV0ZVByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "listenerAttributes") unless @listener_attributes.nil? @mutual_authentication = mutual_authentication.is_a?(Hash) ? ::AWSCDK::ElasticLoadBalancingv2::CfnListener::MutualAuthenticationProperty.new(**mutual_authentication.transform_keys(&:to_sym)) : mutual_authentication Jsii::Type.check_type(@mutual_authentication, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19lbGFzdGljbG9hZGJhbGFuY2luZ3YyLkNmbkxpc3RlbmVyLk11dHVhbEF1dGhlbnRpY2F0aW9uUHJvcGVydHkifV19fQ==")), "mutualAuthentication") unless @mutual_authentication.nil? @port = port Jsii::Type.check_type(@port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "port") unless @port.nil? @protocol = protocol Jsii::Type.check_type(@protocol, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "protocol") unless @protocol.nil? @ssl_policy = ssl_policy Jsii::Type.check_type(@ssl_policy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "sslPolicy") unless @ssl_policy.nil? end |
Instance Attribute Details
#alpn_policy ⇒ Array<String>? (readonly)
[TLS listener] The name of the Application-Layer Protocol Negotiation (ALPN) policy.
55 56 57 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 55 def alpn_policy @alpn_policy end |
#certificates ⇒ AWSCDK::IResolvable, ... (readonly)
The default SSL server certificate for a secure listener.
You must provide exactly one certificate if the listener protocol is HTTPS or TLS.
For an HTTPS listener, update requires some interruptions. For a TLS listener, update requires no interruption.
To create a certificate list for a secure listener, use AWS::ElasticLoadBalancingV2::ListenerCertificate .
66 67 68 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 66 def certificates @certificates end |
#default_actions ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::ElasticLoadBalancingv2::CfnListener::ActionProperty> (readonly)
The actions for the default rule. You cannot define a condition for a default rule.
To create additional rules for an Application Load Balancer, use AWS::ElasticLoadBalancingV2::ListenerRule .
45 46 47 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 45 def default_actions @default_actions end |
#listener_attributes ⇒ AWSCDK::IResolvable, ... (readonly)
The listener attributes.
Attributes that you do not modify retain their current values.
73 74 75 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 73 def listener_attributes @listener_attributes end |
#load_balancer_arn ⇒ String, AWSCDK::Interfaces::AWSElasticloadbalancingv2::ILoadBalancerRef (readonly)
The Amazon Resource Name (ARN) of the load balancer.
50 51 52 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 50 def load_balancer_arn @load_balancer_arn end |
#mutual_authentication ⇒ AWSCDK::IResolvable, ... (readonly)
The mutual authentication configuration information.
78 79 80 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 78 def mutual_authentication @mutual_authentication end |
#port ⇒ Numeric? (readonly)
The port on which the load balancer is listening.
You can't specify a port for a Gateway Load Balancer.
85 86 87 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 85 def port @port end |
#protocol ⇒ String? (readonly)
The protocol for connections from clients to the load balancer.
For Application Load Balancers, the supported protocols are HTTP and HTTPS. For Network Load Balancers, the supported protocols are TCP, TLS, UDP, TCP_UDP, QUIC, and TCP_QUIC. You can’t specify the UDP, TCP_UDP, QUIC, or TCP_QUIC protocol if dual-stack mode is enabled. You can't specify a protocol for a Gateway Load Balancer.
92 93 94 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 92 def protocol @protocol end |
#ssl_policy ⇒ String? (readonly)
[HTTPS and TLS listeners] The security policy that defines which protocols and ciphers are supported.
For more information, see Security policies in the Application Load Balancers Guide and Security policies in the Network Load Balancers Guide .
[HTTPS listeners] Updating the security policy can result in interruptions if the load balancer is handling a high volume of traffic. To decrease the possibility of an interruption if your load balancer is handling a high volume of traffic, create an additional load balancer or request an LCU reservation.
101 102 103 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 101 def ssl_policy @ssl_policy end |
Class Method Details
.jsii_properties ⇒ Object
103 104 105 106 107 108 109 110 111 112 113 114 115 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 103 def self.jsii_properties { :default_actions => "defaultActions", :load_balancer_arn => "loadBalancerArn", :alpn_policy => "alpnPolicy", :certificates => "certificates", :listener_attributes => "listenerAttributes", :mutual_authentication => "mutualAuthentication", :port => "port", :protocol => "protocol", :ssl_policy => "sslPolicy", } end |
Instance Method Details
#to_jsii ⇒ Object
117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 |
# File 'elastic_load_balancingv2/cfn_listener_props.rb', line 117 def to_jsii result = {} result.merge!({ "defaultActions" => @default_actions, "loadBalancerArn" => @load_balancer_arn, "alpnPolicy" => @alpn_policy, "certificates" => @certificates, "listenerAttributes" => @listener_attributes, "mutualAuthentication" => @mutual_authentication, "port" => @port, "protocol" => @protocol, "sslPolicy" => @ssl_policy, }) result.compact end |