Amazon Elastic Compute Cloud
Windows 实例用户指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

资源 ID

创建资源时,我们会为每个资源分配一个唯一资源 ID。您可以使用资源 ID 在 Amazon EC2 控制台中查找您的资源。如果您正在通过命令行工具或 Amazon EC2 API 使用 Amazon EC2,则某些命令需要资源 ID。例如,如果您正在使用 stop-instances AWS CLI 命令来停止实例,则必须在该命令中指定实例 ID。

资源 ID 长度

资源 ID 采用以下格式:资源标识符 (例如,快照的 snap) 后接连字符以及字母与数字的唯一组合。自 2016 年 1 月起,我们将逐步引入适合部分 Amazon EC2 和 Amazon EBS 资源类型的较长 ID。字母数字字符组合的长度采用 8 个字符的格式;新 ID 采用 17 个字符的格式,例如实例 ID 的 i-1234567890abcdef0

支持的资源类型将有一个选择周期,在此周期内,您可以启用较长的 ID 格式。在为某个资源类型启用较长 ID 后,您创建的任何新资源在创建后将拥有较长的 ID,除非您明确禁用较长的 ID 格式。资源 ID 在创建后不可更改;因此,不会影响具有较短 ID 的现有资源。同样,如果您为某个资源类型禁用较长 ID,您创建的具有较长 ID 的任何资源不受影响。

所有支持的资源类型将拥有一个截止日期,在此日期后,此类型的所有新资源将默认为较长的 ID 格式,并且您不再能禁用较长的 ID 格式。您可以按 IAM 用户和 IAM 角色启用或禁用较长 ID。默认情况下,IAM 用户或角色的默认设置与根用户相同。

根据您创建账户的时间,支持的资源类型可能默认为使用较长的 ID。但是,在该资源类型的截止日期前,您可以选择不再使用较长 ID。有关更多信息,请参阅 Amazon EC2 常见问题 中的较长的 EC2 和 EBS 资源 ID

无论个人设置如何,所有 IAM 用户和 IAM 角色均可查看创建的具有较长 ID 的资源,前提是他们拥有查看相关资源类型的权限。

使用较长的 ID

您可以为自己或账户中的其他 IAM 用户、IAM 角色和根用户查看和修改较长的 ID 设置。

查看和修改较长的 ID 设置

您可以使用 Amazon EC2 控制台或 AWS CLI 查看支持长 ID 的资源类型,并为自己启用或禁用较长的 ID 格式。本节中的程序适用于已登录控制台或提出请求的 IAM 用户或 IAM 角色,但不适用于整个 AWS 账户。

使用控制台查看和修改较长的 ID 设置

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在屏幕顶部的导航栏中,会显示当前区域。选择要查看或更改其较长 ID 设置的区域。设置不在区域之间共享。

  3. 在控制面板中的 Account Attributes 下,选择 Resource ID length management。将列出支持较长 ID 的资源类型。您将自动切换为对每个资源类型使用较长 ID 的日期将在 Deadline 列中显示。

  4. 要为支持的资源类型启用较长 ID 格式,请选中 Use Longer IDs 列的复选框。要禁用较长 ID 格式,请清除此复选框。

    重要

    如果您作为根用户登录,这些设置将适用于整个账户,除非 IAM 用户或角色登录并明确为其覆盖这些设置。无论个人设置如何,创建的具有较长 ID 的资源对所有 IAM 用户可见,只要他们有权查看相关资源类型。

使用 AWS CLI 查看和修改较长的 ID 设置

要查看所有受支持资源的较长 ID 设置,请使用 describe-id-format AWS CLI 命令:

aws ec2 describe-id-format { "Statuses": [ { "Deadline": "2016-11-01T13:00:00.000Z", "UseLongIds": false, "Resource": "instance" }, { "Deadline": "2016-11-01T13:00:00.000Z", "UseLongIds": true, "Resource": "reservation" }, { "Deadline": "2016-11-01T13:00:00.000Z", "UseLongIds": false, "Resource": "volume" }, { "Deadline": "2016-11-01T13:00:00.000Z", "UseLongIds": false, "Resource": "snapshot" } ] }

结果适用于提出请求的 IAM 用户、IAM 角色或根用户,但不适用于整个 AWS 账户。上述结果表明,instancereservationvolumesnapshot 资源类型可启用或禁用较长 ID;reservation 资源已启用。Deadline 字段指明您将自动切换为对该资源使用较长 ID 的日期 (采用 UTC 表示)。如果截止日期尚不可用,则不会返回此值。

要为指定的资源启用较长 ID,请使用 modify-id-format AWS CLI 命令:

aws ec2 modify-id-format --resource resource-type --use-long-ids

要为指定的资源禁用较长 ID,请使用 modify-id-format AWS CLI 命令:

aws ec2 modify-id-format --resource resource-type --no-use-long-ids

如果您以根用户的身份使用这些操作,则这些设置将适用于整个账户,除非 IAM 用户或角色明确为其覆盖这些设置。这些命令仅应用于单个区域。要修改其他区域的设置,请在命令中使用 --region 参数。

注意

在 2015-10-01 版本的 Amazon EC2 API 中,如果您使用 IAM 角色凭证调用 describe-id-formatmodify-id-format,结果将适用于整个 AWS 账户,而不是特定的 IAM 角色。在当前版本的 Amazon EC2 API 中,结果仅适用于 IAM 角色。

或者,您可以使用以下命令:

描述 ID 格式

修改 ID 格式

查看和修改用户或角色的较长 ID 设置

使用 describe-identity-id-formatmodify-identity-id-format AWS CLI 命令,您可以查看受支持的资源类型,并为您账户中的特定 IAM 用户、IAM 角色或根用户启用较长 ID 设置。要使用这些命令,您必须在请求中指定 IAM 用户、IAM 角色或根账户用户的 ARN。例如,在账户 123456789012 中,角色“EC2Role”的 ARN 为 arn:aws-cn:iam::123456789012:role/EC2Role。有关更多信息,请参阅 IAM 用户指南 中的委托人

要查看特定 IAM 用户或 IAM 角色的所有受支持资源的较长 ID 设置,请使用以下 AWS CLI 命令:

aws ec2 describe-identity-id-format --principal-arn arn-of-iam-principal

要为特定 IAM 用户或 IAM 角色的资源类型启用较长 ID 设置,请使用以下 AWS CLI 命令:

aws ec2 modify-identity-id-format --principal-arn arn-of-iam-principal --resource resource-type --use-long-ids

这些命令适用于请求中指定的 ARN,但不适用于提出请求的 IAM 用户、IAM 角色或根用户。

您可以使用下面的 AWS CLI 命令为所有 IAM 用户、IAM 角色和账户的根用户启用较长 ID 设置:

aws ec2 modify-identity-id-format --principal-arn all --resource resource-type --use-long-ids

或者,您可以使用以下命令:

描述 ID 格式

修改 ID 格式

控制对较长 ID 设置的访问

默认情况下,IAM 用户和角色没有使用 ec2:DescribeIdFormatec2:DescribeIdentityIdFormatec2:ModifyIdFormatec2:ModifyIdentityIdFormat 操作的权限,除非他们通过关联的 IAM 策略明确获得了相应权限。例如,通过在策略语句中添加 "Action": "ec2:*" 元素可授予 IAM 角色使用所有 Amazon EC2 操作的权限。

为防止 IAM 用户和角色查看或修改其自身或您账户中的其他用户和角色的较长资源 ID 设置,请确保 IAM 策略包含以下语句:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "ec2:ModifyIdFormat", "ec2:DescribeIdFormat", "ec2:ModifyIdentityIdFormat", "ec2:DescribeIdentityIdFormat" ], "Resource": "*" } ] }

对于 ec2:DescribeIdFormatec2:DescribeIdentityIdFormatec2:ModifyIdFormatec2:ModifyIdentityIdFormat 操作,我们不支持资源级权限。