Class: AWSCDK::Route53::PublicHostedZoneProps
- Inherits:
-
CommonHostedZoneProps
- Object
- CommonHostedZoneProps
- AWSCDK::Route53::PublicHostedZoneProps
- Defined in:
- route53/public_hosted_zone_props.rb
Overview
Construction properties for a PublicHostedZone.
Instance Attribute Summary collapse
-
#accelerated_recovery_enabled ⇒ Boolean?
readonly
Whether to enable accelerated recovery for this hosted zone.
-
#add_trailing_dot ⇒ Boolean?
readonly
Whether to add a trailing dot to the zone name.
-
#caa_amazon ⇒ Boolean?
readonly
Whether to create a CAA record to restrict certificate authorities allowed to issue certificates for this domain to Amazon only.
-
#comment ⇒ String?
readonly
Any comments that you want to include about the hosted zone.
-
#cross_account_zone_delegation_principal ⇒ AWSCDK::IAM::IPrincipal?
readonly
deprecated
Deprecated.
Create the Role yourself and call
hostedZone.grantDelegation(). -
#cross_account_zone_delegation_role_name ⇒ String?
readonly
deprecated
Deprecated.
Create the Role yourself and call
hostedZone.grantDelegation(). -
#query_logs_log_group_arn ⇒ String?
readonly
The Amazon Resource Name (ARN) for the log group that you want Amazon Route 53 to send query logs to.
-
#zone_name ⇒ String
readonly
The name of the domain.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(zone_name:, add_trailing_dot: nil, comment: nil, query_logs_log_group_arn: nil, accelerated_recovery_enabled: nil, caa_amazon: nil, cross_account_zone_delegation_principal: nil, cross_account_zone_delegation_role_name: nil) ⇒ PublicHostedZoneProps
constructor
A new instance of PublicHostedZoneProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(zone_name:, add_trailing_dot: nil, comment: nil, query_logs_log_group_arn: nil, accelerated_recovery_enabled: nil, caa_amazon: nil, cross_account_zone_delegation_principal: nil, cross_account_zone_delegation_role_name: nil) ⇒ PublicHostedZoneProps
Returns a new instance of PublicHostedZoneProps.
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'route53/public_hosted_zone_props.rb', line 15 def initialize(zone_name:, add_trailing_dot: nil, comment: nil, query_logs_log_group_arn: nil, accelerated_recovery_enabled: nil, caa_amazon: nil, cross_account_zone_delegation_principal: nil, cross_account_zone_delegation_role_name: nil) @zone_name = zone_name Jsii::Type.check_type(@zone_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "zoneName") @add_trailing_dot = add_trailing_dot Jsii::Type.check_type(@add_trailing_dot, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "addTrailingDot") unless @add_trailing_dot.nil? @comment = comment Jsii::Type.check_type(@comment, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "comment") unless @comment.nil? @query_logs_log_group_arn = query_logs_log_group_arn Jsii::Type.check_type(@query_logs_log_group_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "queryLogsLogGroupArn") unless @query_logs_log_group_arn.nil? @accelerated_recovery_enabled = accelerated_recovery_enabled Jsii::Type.check_type(@accelerated_recovery_enabled, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "acceleratedRecoveryEnabled") unless @accelerated_recovery_enabled.nil? @caa_amazon = caa_amazon Jsii::Type.check_type(@caa_amazon, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "caaAmazon") unless @caa_amazon.nil? @cross_account_zone_delegation_principal = cross_account_zone_delegation_principal Jsii::Type.check_type(@cross_account_zone_delegation_principal, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaWFtLklQcmluY2lwYWwifQ==")), "crossAccountZoneDelegationPrincipal") unless @cross_account_zone_delegation_principal.nil? @cross_account_zone_delegation_role_name = cross_account_zone_delegation_role_name Jsii::Type.check_type(@cross_account_zone_delegation_role_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "crossAccountZoneDelegationRoleName") unless @cross_account_zone_delegation_role_name.nil? end |
Instance Attribute Details
#accelerated_recovery_enabled ⇒ Boolean? (readonly)
Default: - no accelerated recovery
Whether to enable accelerated recovery for this hosted zone.
Accelerated recovery reduces the time to recovery when a hosted zone becomes unavailable due to DNS resolution issues.
This feature is only available for public hosted zones.
66 67 68 |
# File 'route53/public_hosted_zone_props.rb', line 66 def accelerated_recovery_enabled @accelerated_recovery_enabled end |
#add_trailing_dot ⇒ Boolean? (readonly)
Default: true
Whether to add a trailing dot to the zone name.
45 46 47 |
# File 'route53/public_hosted_zone_props.rb', line 45 def add_trailing_dot @add_trailing_dot end |
#caa_amazon ⇒ Boolean? (readonly)
Default: false
Whether to create a CAA record to restrict certificate authorities allowed to issue certificates for this domain to Amazon only.
71 72 73 |
# File 'route53/public_hosted_zone_props.rb', line 71 def caa_amazon @caa_amazon end |
#comment ⇒ String? (readonly)
Default: none
Any comments that you want to include about the hosted zone.
50 51 52 |
# File 'route53/public_hosted_zone_props.rb', line 50 def comment @comment end |
#cross_account_zone_delegation_principal ⇒ AWSCDK::IAM::IPrincipal? (readonly)
Create the Role yourself and call hostedZone.grantDelegation().
Default: - No delegation configuration
A principal which is trusted to assume a role for zone delegation.
If supplied, this will create a Role in the same account as the Hosted
Zone, which can be assumed by the CrossAccountZoneDelegationRecord to
create a delegation record to a zone in a different account.
Be sure to indicate the account(s) that you trust to create delegation
records, using either iam.AccountPrincipal or iam.OrganizationPrincipal.
If you are planning to use iam.ServicePrincipals here, be sure to include
region-specific service principals for every opt-in region you are going to
be delegating to; or don't use this feature and create separate roles
with appropriate permissions for every opt-in region instead.
89 90 91 |
# File 'route53/public_hosted_zone_props.rb', line 89 def cross_account_zone_delegation_principal @cross_account_zone_delegation_principal end |
#cross_account_zone_delegation_role_name ⇒ String? (readonly)
Create the Role yourself and call hostedZone.grantDelegation().
Default: - A role name is generated automatically
The name of the role created for cross account delegation.
95 96 97 |
# File 'route53/public_hosted_zone_props.rb', line 95 def cross_account_zone_delegation_role_name @cross_account_zone_delegation_role_name end |
#query_logs_log_group_arn ⇒ String? (readonly)
Default: disabled
The Amazon Resource Name (ARN) for the log group that you want Amazon Route 53 to send query logs to.
55 56 57 |
# File 'route53/public_hosted_zone_props.rb', line 55 def query_logs_log_group_arn @query_logs_log_group_arn end |
#zone_name ⇒ String (readonly)
The name of the domain.
For resource record types that include a domain name, specify a fully qualified domain name.
40 41 42 |
# File 'route53/public_hosted_zone_props.rb', line 40 def zone_name @zone_name end |
Class Method Details
.jsii_properties ⇒ Object
97 98 99 100 101 102 103 104 105 106 107 108 |
# File 'route53/public_hosted_zone_props.rb', line 97 def self.jsii_properties { :zone_name => "zoneName", :add_trailing_dot => "addTrailingDot", :comment => "comment", :query_logs_log_group_arn => "queryLogsLogGroupArn", :accelerated_recovery_enabled => "acceleratedRecoveryEnabled", :caa_amazon => "caaAmazon", :cross_account_zone_delegation_principal => "crossAccountZoneDelegationPrincipal", :cross_account_zone_delegation_role_name => "crossAccountZoneDelegationRoleName", } end |
Instance Method Details
#to_jsii ⇒ Object
110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
# File 'route53/public_hosted_zone_props.rb', line 110 def to_jsii result = {} result.merge!(super) result.merge!({ "zoneName" => @zone_name, "addTrailingDot" => @add_trailing_dot, "comment" => @comment, "queryLogsLogGroupArn" => @query_logs_log_group_arn, "acceleratedRecoveryEnabled" => @accelerated_recovery_enabled, "caaAmazon" => @caa_amazon, "crossAccountZoneDelegationPrincipal" => @cross_account_zone_delegation_principal, "crossAccountZoneDelegationRoleName" => @cross_account_zone_delegation_role_name, }) result.compact end |