IAM 与 AWS STS 配额、名称要求和字符限制 - AWS Identity and Access Management

IAM 与 AWS STS 配额、名称要求和字符限制

AWS Identity and Access Management (IAM) 和 AWS Security Token Service (STS) 具有限制对象大小的配额。这会影响您命名对象的方式、可以创建的对象数量以及传递对象时可以使用的字符数。

注意

要获取有关 IAM 使用量和配额的账户级别信息,请使用 GetAccountSummary API 操作或 get-account-summary AWS CLI 命令。

IAM 名称要求

IAM 名称具有以下要求和限制:

  • 策略文档只能包含以下 Unicode 字符:水平制表符 (U+0009)、换行符 (U+000A)、回车符 (U+000D) 以及 U+0020 到 U+00FF 范围内的字符。

  • 用户、组、角色、策略、实例配置文件以及服务器证书的名称必须是字母数字,包括以下常用字符:加号 (+)、等号 (=)、逗号 (,)、句号 (.)、at 符 (@)、下划线 (_) 和连字符 (-)。

  • 账户中的用户、组、角色和实例配置文件的名称必须唯一。上述名称不区分大小写,例如,您无法同时创建名为 ADMINSadmins 的组。

  • 第三方用于担任角色的外部 ID 值必须至少包含 2 个字符,最多包含 1224 个字符。该值必须是字母数字,没有空格。它还可以包含以下符号:加号 (+)、等号 (=)、逗号 (,)、句点 (.)、@ 符号、冒号 (:)、正斜杠 (/) 和连字符 (-)。有关外部 ID 的更多信息,请参阅 如何在向第三方授予对 AWS 资源的访问权时使用外部 ID

  • 路径名称必须以正斜杠 (/) 开始和结束。

  • 对于内联策略嵌入到的用户、组或角色,这些策略的名称必须是唯一的。这些名称可以包含任何基本拉丁语 (ASCII) 字符,但以下保留字符除外:反斜杠 (\)、正斜杠 (/)、星号 (*)、问号 (?) 和空格。根据 RFC 3986 第 2.2 部分,这些字符是保留字符。

  • 用户密码(登录配置文件)可以包含任何基本拉丁语 (ASCII) 字符。

  • 所有 AWS 产品的 AWS 账户 ID 别名都必须是唯一的,必须是遵循 DNS 命名惯例的字母数字。别名必须是小写字母,不能以连字符开头或结尾,不能连续使用两个连字符,也不能是 12 个纯数字。

要获取基本拉丁语 (ASCII) 字符列表,请转到 Library of Congress Basic Latin (ASCII) Code Tabl

IAM 对象配额

配额,也称为 AWS 中的限制,是 AWS 账户 中资源、操作和项目的最大值。使用 Service Quotas 管理 IAM 配额。您可以请求提高可调整 IAM 配额的默认配额。最大 maximum quota 的请求将自动得到批准,并在几分钟内完成。

要请求提高配额,请登录到 AWS Management Console 并在以下位置打开 Service Quotas 控制台:https://console.aws.amazon.com/servicequotas/。在导航窗格中,选择 AWS services(AWS 服务)。在导航栏中,选择 US East (N. Virginia) 区域。然后搜索 IAM。选择 AWS Identity and Access Management (IAM),选择配额,然后按照说明请求增加配额。有关更多信息,请参阅《服务限额用户指南》中的请求增加配额

要查看有关如何使用 Service Quotas 控制台请求增加 IAM 配额的示例,请观看以下视频。

以下配额是可调的。

IAM 实体的默认配额
资源 默认配额 最大配额
AWS 账户 中的客户管理型策略 1500 5000
AWS 账户 中的组 300 500
AWS 账户 中的实例配置文件 1000 5000
附加到一个 IAM 角色的托管策略数 10 20
附加到一个 IAM 用户的托管策略数 10 20
角色信任策略长度 2048 个字符 4096 个字符
AWS 账户 中的角色 1000 5000
存储在 AWS 账户 中的服务器证书 20 1000
AWS 账户 中的虚拟 MFA 设备(已分配或未分配) 等于账户的用户配额 不适用

您不能请求增加以下配额。

IAM 实体的配额
资源 配额
分配给一个 IAM 用户的访问密钥数 2
分配给 AWS 账户根用户的访问密钥数 2
AWS 账户 的别名 1
IAM 用户可加入的组的数量 10
组中的 IAM 用户 等于账户的用户配额
与一个 IAM SAML 提供商对象关联的身份提供程序 (IdP) 数 10
每个 SAML 提供商的键数 10
一个 IAM 用户的登录配置文件数 1
附加到一个 IAM 组的托管策略数 10
每个 AWS 账户 的 OpenId Connect 身份提供程序 100
IAM 用户的权限边界 1
IAM 角色的权限边界 1
一个 IAM 用户使用的 MFA 设备数 8
AWS 账户根用户 使用的 MFA 设备数 8
一个实例配置文件中的角色数 1
AWS 账户 中的 SAML 提供程序 100
分配给一个 IAM 用户的签名证书数 2
分配给一个 IAM 用户的 SSH 公有密钥数 5
可以附加到客户托管策略的标签 50
可以附加到 SAML 身份提供程序的标签 50
可以附加到服务器证书的标签 50
可以附加到虚拟 MFA 设备的标签 50
可以附加到实例配置文件的标签 50
可附加到 IAM 角色的标签 50
可附加到 IAM 用户的标签 50
可以附加到 Open ID Connect (OIDC) 身份提供程序的标签 50
AWS 账户 中的用户 5000 (如果您需要添加大量用户,建议您使用临时安全凭证)。
可存储的一个托管策略的版本数 5

IAM Access Analyzer 配额

有关 IAM Access Analyzer 配额,请参阅 IAM Access Analyzer Quotas

IAM 和 STS 字符限制

以下是 IAM 和 AWS STS 的最大字符数和大小限制。您不能请求提高以下限制。

描述 限制
AWS 账户 ID 的别名 3-63 个字符
对于内联策略 您可以向 IAM 用户、角色或组添加所需数量的内联策略。但是,每个实体的总聚合策略大小(所有内联策略的总大小)不能超过以下限制:
  • 用户策略大小不得超过 2048 个字符。

  • 角色策略大小不得超过 10240 个字符。

  • 组策略大小不得超过 5120 个字符。

注意

在计算策略大小时,IAM 不会将空格计入这些限制。

对于托管策略
  • 每个托管策略的大小不能超过 6,144 个字符。

注意

在计算策略大小时,IAM 不会将空格计入这一限制。

组名 128 个字符
实例配置文件名称 128 个字符
登录配置文件的密码 1-128 个字符
路径 512 个字符
策略名称 128 个字符
角色名称 64 个字符
重要

如果您通过 AWS Management Console 中的切换角色功能使用角色,则组合的 PathRoleName 不能超过 64 个字符。

角色会话持续时间

12 小时

从 AWS CLI 或 API 中担任角色时,您可以使用 duration-seconds CLI 参数或 DurationSeconds API 参数请求更长的角色会话。您可以指定 900 秒(15 分钟)到角色的最大会话持续时间设置之间的值,该设置的范围是 1 - 12 小时。如果未指定 DurationSeconds 参数值,您的安全凭证的有效期为 1 小时。在控制台内切换角色的 IAM 用户被授予最大会话持续时间或用户会话中的剩余时间(以较少者为准)。最大会话持续时间设置不限制 AWS 服务建立的会话。要了解如何查看您的角色的最大值,请参阅查看角色的最大会话持续时间设置

角色会话名称 64 个字符
角色会话策略
  • 传递的 JSON 策略文档和所有传递的托管策略 ARN 字符加在一起的大小不能超过 2,048 个字符。

  • 创建会话时,最多可传递 10 个托管策略 ARN。

  • 在以编程方式为角色或联合身份用户创建临时会话时,您只能传递一个 JSON 策略文档。

  • 此外,AWS 转换会将传递的会话策略和会话标签压缩为具有单独限制的打包二进制文件格式。PackedPolicySize 响应元素指示您请求的策略和标签接近大小上限的程度,以百分比来表示。

  • 建议您使用 AWS CLI 或 AWS API 传递会话策略。AWS Management Console可能会将其他控制台会话信息添加到打包策略中。

角色会话标签
  • 会话标签必须满足 128 个字符的标签键限制和 256 个字符的标签值限制。

  • 您最多可以传递 50 个会话标签。

  • AWS 转换会将传递的会话策略和会话标签压缩为具有单独限制的打包二进制格式。您可以使用 AWS CLI 或 AWS API 传递会话标签。PackedPolicySize 响应元素指示您请求的策略和标签接近大小上限的程度,以百分比来表示。

经过 base64 编码的 SAML 身份验证 100000 个字符

此字符限制适用于 assume-role-with-saml CLI 或 AssumeRoleWithSAML API 操作。

标记密钥 128 个字符

此字符限制适用于 IAM 资源的标签和会话标签

标记值 256 个字符

此字符限制适用于 IAM 资源的标签和会话标签

标签值可以为空,这意味着标签值的长度可以为 0 个字符。

IAM 创建的唯一 ID

128 个字符。例如:

  • AIDA 开头的用户 ID

  • AGPA 开头的组 ID

  • AROA 开头的角色 ID

  • ANPA 开头的托管策略 ID

  • ASCA 开头的服务器证书 ID

注意

这不是一个详尽的列表,也不保证某种类型的 ID 仅以指定的字母组合开始。

用户名称 64 个字符