aws-cdk-lib.ArnComponents

interface ArnComponents

LanguageType name
.NETAmazon.CDK.ArnComponents
Gogithub.com/aws/aws-cdk-go/awscdk/v2#ArnComponents
Javasoftware.amazon.awscdk.ArnComponents
Pythonaws_cdk.ArnComponents
TypeScript (source)aws-cdk-lib » ArnComponents

Obtainable from Arn.split(), Stack.splitArn()

Example

const subZone = new route53.PublicHostedZone(this, 'SubZone', {
  zoneName: 'sub.someexample.com',
});

// import the delegation role by constructing the roleArn
const delegationRoleArn = Stack.of(this).formatArn({
  region: '', // IAM is global in each partition
  service: 'iam',
  account: 'parent-account-id',
  resource: 'role',
  resourceName: 'MyDelegationRole',
});
const delegationRole = iam.Role.fromRoleArn(this, 'DelegationRole', delegationRoleArn);

// create the record
new route53.CrossAccountZoneDelegationRecord(this, 'delegate', {
  delegatedZone: subZone,
  parentHostedZoneName: 'someexample.com', // or you can use parentHostedZoneId
  delegationRole,
});

Properties

NameTypeDescription
resourcestringResource type (e.g. "table", "autoScalingGroup", "certificate"). For some resource types, e.g. S3 buckets, this field defines the bucket name.
servicestringThe service namespace that identifies the AWS product (for example, 's3', 'iam', 'codepipline').
account?stringThe ID of the AWS account that owns the resource, without the hyphens.
arnFormat?ArnFormatThe specific ARN format to use for this ARN value.
partition?stringThe partition that the resource is in.
region?stringThe region the resource resides in.
resourceName?stringResource name or path within the resource (i.e. S3 bucket object key) or a wildcard such as "*". This is service-dependent.

resource

Type: string

Resource type (e.g. "table", "autoScalingGroup", "certificate"). For some resource types, e.g. S3 buckets, this field defines the bucket name.


service

Type: string

The service namespace that identifies the AWS product (for example, 's3', 'iam', 'codepipline').


account?

Type: string (optional, default: The account the stack is deployed to.)

The ID of the AWS account that owns the resource, without the hyphens.

For example, 123456789012. Note that the ARNs for some resources don't require an account number, so this component might be omitted.


arnFormat?

Type: ArnFormat (optional, default: uses value of sep as the separator for formatting, ArnFormat.SLASH_RESOURCE_NAME if that property was also not provided)

The specific ARN format to use for this ARN value.


partition?

Type: string (optional, default: The AWS partition the stack is deployed to.)

The partition that the resource is in.

For standard AWS regions, the partition is aws. If you have resources in other partitions, the partition is aws-partitionname. For example, the partition for resources in the China (Beijing) region is aws-cn.


region?

Type: string (optional, default: The region the stack is deployed to.)

The region the resource resides in.

Note that the ARNs for some resources do not require a region, so this component might be omitted.


resourceName?

Type: string (optional)

Resource name or path within the resource (i.e. S3 bucket object key) or a wildcard such as "*". This is service-dependent.