使用 Amazon 资源名称(ARN)标识 Amazon 资源 - Amazon Identity and Access Management
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用 Amazon 资源名称(ARN)标识 Amazon 资源

Amazon Resource Name(ARN)唯一标识 Amazon 资源。当您需要在 Amazon 全局环境中(比如 IAM policy、Amazon Relational Database Service (Amazon RDS) 标签和 API 调用中)明确指定一项资源时,我们要求使用 ARN。

ARN 格式

以下是 ARN 的一般格式。特定格式取决于资源。要使用 ARN,请将斜体 文本替换为特定于资源的信息。请注意,某些资源的 ARN 忽略了区域、账户 ID 或同时忽略了这两者。

arn:partition:service:region:account-id:resource-id arn:partition:service:region:account-id:resource-type/resource-id arn:partition:service:region:account-id:resource-type:resource-id
partition

资源所在的分区。分区 是一组 Amazon 区域。每个 Amazon 账户的作用域为一个分区。

以下是支持的分区:

  • aws - Amazon 区域

  • aws-cn – 中国区域

  • aws-us-gov - Amazon GovCloud (US) 区域

service

标识 Amazon 产品的服务命名空间。

region

区域代码。

account-id

拥有资源的 Amazon 账户的 ID(不含连字符)。例如,123456789012

resource-type

资源类型。例如,虚拟私有云(VPC)的 vpc

resource-id

资源标识符。这是资源的名称、资源的 ID 或资源路径。某些资源标识符包括父资源 (sub-resource-type/parent-resource/sub-resource) 或限定符(例如版本)(resource-type:resource-name:qualifier)。

示例
IAM 用户

arn:aws:iam::123456789012:user/johndoe

SNS 主题

arn:aws:sns:us-east-1:123456789012:example-sns-topic-name

VPC

arn:aws:ec2:us-east-1:123456789012:vpc/vpc-0e9801d129EXAMPLE

查找资源的 ARN 格式

ARN 的具体格式取决于服务和资源类型。某些资源 ARN 可以包含路径、变量或通配符。如需查找特定 Amazon 资源的 ARN 格式,请打开服务授权参考,然后打开该服务的页面,并导航至资源类型表。

ARN 中的路径

资源 ARN 可以包含路径。例如,在 Amazon S3 中,资源标识符是一个对象名称,它可以包含正斜杠(/)来形成路径。同样,IAM 用户名称和组名也可以包含路径。IAM 路径中只允许使用字母数字字符和以下字符:正斜杠(/)、加号(+)、等号(=)、英文逗号(,)、英文句号(.)、at 符(@)、下划线(_)和连字符(-)。

在路径中使用通配符

路径可以包含一个通配符,即星号 (*)。例如,当您在编写 IAM policy 时,可以按以下所示使用通配符来指定包含路径 product_1234 的所有 IAM 用户:

arn:aws:iam::123456789012:user/Development/product_1234/*

同样,您可以指定 user/* 来表示所有用户,或者指定 group/* 来表示所有组,如以下示例所示:

"Resource":"arn:aws:iam::123456789012:user/*" "Resource":"arn:aws:iam::123456789012:group/*"

以下示例显示了 Amazon S3 存储桶的 ARN,其中的资源名称包含一个路径:

arn:aws:s3:::my_corporate_bucket/* arn:aws:s3:::my-corporate-bucket/Development/*
不正确的通配符使用

您不能在 ARN 指定资源类型的部分使用通配符,比如 IAM ARN 中的 user 一词。例如,不允许执行以下操作。

arn:aws:iam::123456789012:u*   <== not allowed