Class: AWSCDK::CloudFront::CfnDistribution::CustomOriginConfigProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::CloudFront::CfnDistribution::CustomOriginConfigProperty
- Defined in:
- cloud_front/cfn_distribution.rb
Overview
A custom origin.
A custom origin is any origin that is not an Amazon S3 bucket, with one exception. An Amazon S3 bucket that is configured with static website hosting is a custom origin.
Instance Attribute Summary collapse
-
#http_port ⇒ Numeric?
readonly
The HTTP port that CloudFront uses to connect to the origin.
-
#https_port ⇒ Numeric?
readonly
The HTTPS port that CloudFront uses to connect to the origin.
-
#ip_address_type ⇒ String?
readonly
Specifies which IP protocol CloudFront uses when connecting to your origin.
-
#origin_keepalive_timeout ⇒ Numeric?
readonly
Specifies how long, in seconds, CloudFront persists its connection to the origin.
-
#origin_mtls_config ⇒ AWSCDK::IResolvable, ...
readonly
Configures mutual TLS authentication between CloudFront and your origin server.
-
#origin_protocol_policy ⇒ String
readonly
Specifies the protocol (HTTP or HTTPS) that CloudFront uses to connect to the origin.
-
#origin_read_timeout ⇒ Numeric?
readonly
Specifies how long, in seconds, CloudFront waits for a response from the origin.
-
#origin_ssl_protocols ⇒ Array<String>?
readonly
Specifies the minimum SSL/TLS protocol that CloudFront uses when connecting to your origin over HTTPS.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(origin_protocol_policy:, http_port: nil, https_port: nil, ip_address_type: nil, origin_keepalive_timeout: nil, origin_mtls_config: nil, origin_read_timeout: nil, origin_ssl_protocols: nil) ⇒ CustomOriginConfigProperty
constructor
A new instance of CustomOriginConfigProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(origin_protocol_policy:, http_port: nil, https_port: nil, ip_address_type: nil, origin_keepalive_timeout: nil, origin_mtls_config: nil, origin_read_timeout: nil, origin_ssl_protocols: nil) ⇒ CustomOriginConfigProperty
Returns a new instance of CustomOriginConfigProperty.
1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 |
# File 'cloud_front/cfn_distribution.rb', line 1132 def initialize(origin_protocol_policy:, http_port: nil, https_port: nil, ip_address_type: nil, origin_keepalive_timeout: nil, origin_mtls_config: nil, origin_read_timeout: nil, origin_ssl_protocols: nil) @origin_protocol_policy = origin_protocol_policy Jsii::Type.check_type(@origin_protocol_policy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "originProtocolPolicy") @http_port = http_port Jsii::Type.check_type(@http_port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "httpPort") unless @http_port.nil? @https_port = https_port Jsii::Type.check_type(@https_port, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "httpsPort") unless @https_port.nil? @ip_address_type = ip_address_type Jsii::Type.check_type(@ip_address_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ipAddressType") unless @ip_address_type.nil? @origin_keepalive_timeout = origin_keepalive_timeout Jsii::Type.check_type(@origin_keepalive_timeout, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "originKeepaliveTimeout") unless @origin_keepalive_timeout.nil? @origin_mtls_config = origin_mtls_config.is_a?(Hash) ? ::AWSCDK::CloudFront::CfnDistribution::OriginMtlsConfigProperty.new(**origin_mtls_config.transform_keys(&:to_sym)) : origin_mtls_config Jsii::Type.check_type(@origin_mtls_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jbG91ZGZyb250LkNmbkRpc3RyaWJ1dGlvbi5PcmlnaW5NdGxzQ29uZmlnUHJvcGVydHkifV19fQ==")), "originMtlsConfig") unless @origin_mtls_config.nil? @origin_read_timeout = origin_read_timeout Jsii::Type.check_type(@origin_read_timeout, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "originReadTimeout") unless @origin_read_timeout.nil? @origin_ssl_protocols = origin_ssl_protocols Jsii::Type.check_type(@origin_ssl_protocols, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "originSslProtocols") unless @origin_ssl_protocols.nil? end |
Instance Attribute Details
#http_port ⇒ Numeric? (readonly)
Default: - 80
The HTTP port that CloudFront uses to connect to the origin.
Specify the HTTP port that the origin listens on.
1167 1168 1169 |
# File 'cloud_front/cfn_distribution.rb', line 1167 def http_port @http_port end |
#https_port ⇒ Numeric? (readonly)
Default: - 443
The HTTPS port that CloudFront uses to connect to the origin.
Specify the HTTPS port that the origin listens on.
1175 1176 1177 |
# File 'cloud_front/cfn_distribution.rb', line 1175 def https_port @https_port end |
#ip_address_type ⇒ String? (readonly)
Specifies which IP protocol CloudFront uses when connecting to your origin.
If your origin uses both IPv4 and IPv6 protocols, you can choose dualstack to help optimize reliability.
1182 1183 1184 |
# File 'cloud_front/cfn_distribution.rb', line 1182 def ip_address_type @ip_address_type end |
#origin_keepalive_timeout ⇒ Numeric? (readonly)
Default: - 5
Specifies how long, in seconds, CloudFront persists its connection to the origin.
The minimum timeout is 1 second, the maximum is 120 seconds, and the default (if you don't specify otherwise) is 5 seconds.
For more information, see Keep-alive timeout (custom origins only) in the Amazon CloudFront Developer Guide .
1192 1193 1194 |
# File 'cloud_front/cfn_distribution.rb', line 1192 def origin_keepalive_timeout @origin_keepalive_timeout end |
#origin_mtls_config ⇒ AWSCDK::IResolvable, ... (readonly)
Configures mutual TLS authentication between CloudFront and your origin server.
1197 1198 1199 |
# File 'cloud_front/cfn_distribution.rb', line 1197 def origin_mtls_config @origin_mtls_config end |
#origin_protocol_policy ⇒ String (readonly)
Specifies the protocol (HTTP or HTTPS) that CloudFront uses to connect to the origin. Valid values are:.
http-only– CloudFront always uses HTTP to connect to the origin.match-viewer– CloudFront connects to the origin using the same protocol that the viewer used to connect to CloudFront.https-only– CloudFront always uses HTTPS to connect to the origin.
1159 1160 1161 |
# File 'cloud_front/cfn_distribution.rb', line 1159 def origin_protocol_policy @origin_protocol_policy end |
#origin_read_timeout ⇒ Numeric? (readonly)
Default: - 30
Specifies how long, in seconds, CloudFront waits for a response from the origin.
This is also known as the origin response timeout . The minimum timeout is 1 second, the maximum is 120 seconds, and the default (if you don't specify otherwise) is 30 seconds.
For more information, see Response timeout in the Amazon CloudFront Developer Guide .
1207 1208 1209 |
# File 'cloud_front/cfn_distribution.rb', line 1207 def origin_read_timeout @origin_read_timeout end |
#origin_ssl_protocols ⇒ Array<String>? (readonly)
Specifies the minimum SSL/TLS protocol that CloudFront uses when connecting to your origin over HTTPS.
Valid values include SSLv3 , TLSv1 , TLSv1.1 , and TLSv1.2 .
For more information, see Minimum Origin SSL Protocol in the Amazon CloudFront Developer Guide .
1216 1217 1218 |
# File 'cloud_front/cfn_distribution.rb', line 1216 def origin_ssl_protocols @origin_ssl_protocols end |
Class Method Details
.jsii_properties ⇒ Object
1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 |
# File 'cloud_front/cfn_distribution.rb', line 1218 def self.jsii_properties { :origin_protocol_policy => "originProtocolPolicy", :http_port => "httpPort", :https_port => "httpsPort", :ip_address_type => "ipAddressType", :origin_keepalive_timeout => "originKeepaliveTimeout", :origin_mtls_config => "originMtlsConfig", :origin_read_timeout => "originReadTimeout", :origin_ssl_protocols => "originSslProtocols", } end |
Instance Method Details
#to_jsii ⇒ Object
1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 |
# File 'cloud_front/cfn_distribution.rb', line 1231 def to_jsii result = {} result.merge!({ "originProtocolPolicy" => @origin_protocol_policy, "httpPort" => @http_port, "httpsPort" => @https_port, "ipAddressType" => @ip_address_type, "originKeepaliveTimeout" => @origin_keepalive_timeout, "originMtlsConfig" => @origin_mtls_config, "originReadTimeout" => @origin_read_timeout, "originSslProtocols" => @origin_ssl_protocols, }) result.compact end |