Class: AWSCDK::APIGateway::CfnDomainNameProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::APIGateway::CfnDomainNameProps
- Defined in:
- api_gateway/cfn_domain_name_props.rb
Overview
Properties for defining a CfnDomainName.
Instance Attribute Summary collapse
-
#certificate_arn ⇒ String?
readonly
The reference to an AWS -managed certificate that will be used by edge-optimized endpoint or private endpoint for this domain name.
-
#domain_name ⇒ String?
readonly
The custom domain name as an API host name, for example,
my-api.example.com. -
#endpoint_access_mode ⇒ String?
readonly
The endpoint access mode for your DomainName.
-
#endpoint_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The endpoint configuration of this DomainName showing the endpoint types and IP address types of the domain name.
-
#mutual_tls_authentication ⇒ AWSCDK::IResolvable, ...
readonly
The mutual TLS authentication configuration for a custom domain name.
-
#ownership_verification_certificate_arn ⇒ String?
readonly
The ARN of the public certificate issued by ACM to validate ownership of your custom domain.
-
#regional_certificate_arn ⇒ String?
readonly
The reference to an AWS -managed certificate that will be used for validating the regional domain name.
-
#routing_mode ⇒ String?
readonly
The routing mode for this domain name.
-
#security_policy ⇒ String?
readonly
The Transport Layer Security (TLS) version + cipher suite for this DomainName.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
The collection of tags.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(certificate_arn: nil, domain_name: nil, endpoint_access_mode: nil, endpoint_configuration: nil, mutual_tls_authentication: nil, ownership_verification_certificate_arn: nil, regional_certificate_arn: nil, routing_mode: nil, security_policy: nil, tags: nil) ⇒ CfnDomainNameProps
constructor
A new instance of CfnDomainNameProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(certificate_arn: nil, domain_name: nil, endpoint_access_mode: nil, endpoint_configuration: nil, mutual_tls_authentication: nil, ownership_verification_certificate_arn: nil, regional_certificate_arn: nil, routing_mode: nil, security_policy: nil, tags: nil) ⇒ CfnDomainNameProps
Returns a new instance of CfnDomainNameProps.
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'api_gateway/cfn_domain_name_props.rb', line 19 def initialize(certificate_arn: nil, domain_name: nil, endpoint_access_mode: nil, endpoint_configuration: nil, mutual_tls_authentication: nil, ownership_verification_certificate_arn: nil, regional_certificate_arn: nil, routing_mode: nil, security_policy: nil, tags: nil) @certificate_arn = certificate_arn Jsii::Type.check_type(@certificate_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "certificateArn") unless @certificate_arn.nil? @domain_name = domain_name Jsii::Type.check_type(@domain_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "domainName") unless @domain_name.nil? @endpoint_access_mode = endpoint_access_mode Jsii::Type.check_type(@endpoint_access_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "endpointAccessMode") unless @endpoint_access_mode.nil? @endpoint_configuration = endpoint_configuration.is_a?(Hash) ? ::AWSCDK::APIGateway::CfnDomainName::EndpointConfigurationProperty.new(**endpoint_configuration.transform_keys(&:to_sym)) : endpoint_configuration Jsii::Type.check_type(@endpoint_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcGlnYXRld2F5LkNmbkRvbWFpbk5hbWUuRW5kcG9pbnRDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "endpointConfiguration") unless @endpoint_configuration.nil? @mutual_tls_authentication = mutual_tls_authentication.is_a?(Hash) ? ::AWSCDK::APIGateway::CfnDomainName::MutualTLSAuthenticationProperty.new(**mutual_tls_authentication.transform_keys(&:to_sym)) : mutual_tls_authentication Jsii::Type.check_type(@mutual_tls_authentication, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcGlnYXRld2F5LkNmbkRvbWFpbk5hbWUuTXV0dWFsVGxzQXV0aGVudGljYXRpb25Qcm9wZXJ0eSJ9XX19")), "mutualTlsAuthentication") unless @mutual_tls_authentication.nil? @ownership_verification_certificate_arn = ownership_verification_certificate_arn Jsii::Type.check_type(@ownership_verification_certificate_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "ownershipVerificationCertificateArn") unless @ownership_verification_certificate_arn.nil? @regional_certificate_arn = regional_certificate_arn Jsii::Type.check_type(@regional_certificate_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "regionalCertificateArn") unless @regional_certificate_arn.nil? @routing_mode = routing_mode Jsii::Type.check_type(@routing_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "routingMode") unless @routing_mode.nil? @security_policy = security_policy Jsii::Type.check_type(@security_policy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "securityPolicy") unless @security_policy.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? end |
Instance Attribute Details
#certificate_arn ⇒ String? (readonly)
The reference to an AWS -managed certificate that will be used by edge-optimized endpoint or private endpoint for this domain name.
Certificate Manager is the only supported source.
48 49 50 |
# File 'api_gateway/cfn_domain_name_props.rb', line 48 def certificate_arn @certificate_arn end |
#domain_name ⇒ String? (readonly)
The custom domain name as an API host name, for example, my-api.example.com .
53 54 55 |
# File 'api_gateway/cfn_domain_name_props.rb', line 53 def domain_name @domain_name end |
#endpoint_access_mode ⇒ String? (readonly)
The endpoint access mode for your DomainName.
58 59 60 |
# File 'api_gateway/cfn_domain_name_props.rb', line 58 def endpoint_access_mode @endpoint_access_mode end |
#endpoint_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The endpoint configuration of this DomainName showing the endpoint types and IP address types of the domain name.
63 64 65 |
# File 'api_gateway/cfn_domain_name_props.rb', line 63 def endpoint_configuration @endpoint_configuration end |
#mutual_tls_authentication ⇒ AWSCDK::IResolvable, ... (readonly)
The mutual TLS authentication configuration for a custom domain name.
If specified, API Gateway performs two-way authentication between the client and the server. Clients must present a trusted certificate to access your API.
70 71 72 |
# File 'api_gateway/cfn_domain_name_props.rb', line 70 def mutual_tls_authentication @mutual_tls_authentication end |
#ownership_verification_certificate_arn ⇒ String? (readonly)
The ARN of the public certificate issued by ACM to validate ownership of your custom domain.
Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the RegionalCertificateArn.
77 78 79 |
# File 'api_gateway/cfn_domain_name_props.rb', line 77 def ownership_verification_certificate_arn @ownership_verification_certificate_arn end |
#regional_certificate_arn ⇒ String? (readonly)
The reference to an AWS -managed certificate that will be used for validating the regional domain name.
Certificate Manager is the only supported source.
84 85 86 |
# File 'api_gateway/cfn_domain_name_props.rb', line 84 def regional_certificate_arn @regional_certificate_arn end |
#routing_mode ⇒ String? (readonly)
Default: - "BASE_PATH_MAPPING_ONLY"
The routing mode for this domain name.
The routing mode determines how API Gateway sends traffic from your custom domain name to your public APIs.
92 93 94 |
# File 'api_gateway/cfn_domain_name_props.rb', line 92 def routing_mode @routing_mode end |
#security_policy ⇒ String? (readonly)
The Transport Layer Security (TLS) version + cipher suite for this DomainName.
97 98 99 |
# File 'api_gateway/cfn_domain_name_props.rb', line 97 def security_policy @security_policy end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
The collection of tags.
Each tag element is associated with a given resource.
104 105 106 |
# File 'api_gateway/cfn_domain_name_props.rb', line 104 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
106 107 108 109 110 111 112 113 114 115 116 117 118 119 |
# File 'api_gateway/cfn_domain_name_props.rb', line 106 def self.jsii_properties { :certificate_arn => "certificateArn", :domain_name => "domainName", :endpoint_access_mode => "endpointAccessMode", :endpoint_configuration => "endpointConfiguration", :mutual_tls_authentication => "mutualTlsAuthentication", :ownership_verification_certificate_arn => "ownershipVerificationCertificateArn", :regional_certificate_arn => "regionalCertificateArn", :routing_mode => "routingMode", :security_policy => "securityPolicy", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
# File 'api_gateway/cfn_domain_name_props.rb', line 121 def to_jsii result = {} result.merge!({ "certificateArn" => @certificate_arn, "domainName" => @domain_name, "endpointAccessMode" => @endpoint_access_mode, "endpointConfiguration" => @endpoint_configuration, "mutualTlsAuthentication" => @mutual_tls_authentication, "ownershipVerificationCertificateArn" => @ownership_verification_certificate_arn, "regionalCertificateArn" => @regional_certificate_arn, "routingMode" => @routing_mode, "securityPolicy" => @security_policy, "tags" => @tags, }) result.compact end |