@sandfox/arn
v2.1.0
Published
Parser for Amazon Resource Name strings
Downloads
362
Readme
arn
Parser for Amazon Resource Name strings.
more info
Does what it says on the tin! Parses an Amazon Resource Name and gives it back as object. Loosely based upon the aws golang implementation.
Benefits:
- Single implementation file
- Dependency-free
- Includes TypeScript type definitions
install
With npm do:
npm install @sandfox/arn
api
parse : Parse parses an ARN into its constituent parts. Empty sections in the ARN are represented by empty strings.
const { parse } = require('@sandfox/arn');
const arn = parse("arn:aws:iam::123456789012:server-certificate/division_abc/subdivision_xyz/ProdServerCert");
output:
{
partition: 'aws',
service: 'iam',
region: '',
accountID: '123456789012',
resource: 'server-certificate/division_abc/subdivision_xyz/ProdServerCert'
}
Fields:
partition
: 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".service
: The service namespace that identifies the AWS product (for example, Amazon S3, IAM, or Amazon RDS). For a list of namespaces, see http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces.region
: The region the resource resides in. Note that the ARNs for some resources do not require a region, so this component might be omitted.accountID
: 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.resource
: The content of this part of the ARN varies by service. It often includes an indicator of the type of resource — for example, an IAM user or Amazon RDS database - followed by a slash (/) or a colon (:), followed by the resource name itself. Some services allows paths for resource names, as described in http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arns-paths.
toString : Returns the canonical representation of an ARN in object form as returned by parse
. Any missing sections will be truncated.
const { toString } = require('@sandfox/arn');
const arn = {
partition: 'aws',
service: 'iam',
accountID: '123456789012',
resource: 'server-certificate/division_abc/subdivision_xyz/ProdServerCert'
}
console.log(toString(arn))
output
'arn::aws:iam::123456789012:server-certificate/division_abc/subdivision_xyz/ProdServerCert'
license
MIT