CrossAccountZoneDelegationRecordProps

class aws_cdk.aws_route53.CrossAccountZoneDelegationRecordProps(*, delegated_zone, delegation_role, assume_role_region=None, parent_hosted_zone_id=None, parent_hosted_zone_name=None, removal_policy=None, ttl=None)

Bases: object

Construction properties for a CrossAccountZoneDelegationRecord.

Parameters:
  • delegated_zone (IHostedZone) – The zone to be delegated.

  • delegation_role (IRole) – The delegation role in the parent account.

  • assume_role_region (Optional[str]) – Region from which to obtain temporary credentials. Default: - the Route53 signing region in the current partition

  • parent_hosted_zone_id (Optional[str]) – The hosted zone id in the parent account. Default: - no zone id

  • parent_hosted_zone_name (Optional[str]) – The hosted zone name in the parent account. Default: - no zone name

  • removal_policy (Optional[RemovalPolicy]) – The removal policy to apply to the record set. Default: RemovalPolicy.DESTROY

  • ttl (Optional[Duration]) – The resource record cache time to live (TTL). Default: Duration.days(2)

ExampleMetadata:

infused

Example:

sub_zone = route53.PublicHostedZone(self, "SubZone",
    zone_name="sub.someexample.com"
)

# import the delegation role by constructing the roleArn
delegation_role_arn = Stack.of(self).format_arn(
    region="",  # IAM is global in each partition
    service="iam",
    account="parent-account-id",
    resource="role",
    resource_name="MyDelegationRole"
)
delegation_role = iam.Role.from_role_arn(self, "DelegationRole", delegation_role_arn)

# create the record
route53.CrossAccountZoneDelegationRecord(self, "delegate",
    delegated_zone=sub_zone,
    parent_hosted_zone_name="someexample.com",  # or you can use parentHostedZoneId
    delegation_role=delegation_role
)

Attributes

assume_role_region

Region from which to obtain temporary credentials.

Default:
  • the Route53 signing region in the current partition

delegated_zone

The zone to be delegated.

delegation_role

The delegation role in the parent account.

parent_hosted_zone_id

The hosted zone id in the parent account.

Default:
  • no zone id

parent_hosted_zone_name

The hosted zone name in the parent account.

Default:
  • no zone name

removal_policy

The removal policy to apply to the record set.

Default:

RemovalPolicy.DESTROY

ttl

The resource record cache time to live (TTL).

Default:

Duration.days(2)