为什么我的 IAM 基于资源的策略中存在未知的主体格式?

上次更新日期:2022 年 4 月 4 日

我尝试编辑和保存我的 AWS Identity and Access Management (IAM) 基于资源的策略,但它有一个未知的主体,并带有随机字符。

简短描述

如果基于资源的策略包含一个主体元素,其中包含特定 IAM 实体Amazon Resource Name (ARN),则 ARN 在保存时会更改为唯一的主体 ID。对于 IAM 用户,此唯一主体 ID 的前缀为 AIDA,对于 IAM 角色,其前缀为 AROA。

保存基于资源的策略之前的示例格式:

"arn:aws:iam::123456789012:user/user-name"

"arn:aws:iam::123456789012:role/role-name"

保存基于资源的策略后的格式示例:

"AIDAJQABLZS4A3QDU576Q"

"AROAKSCDLFT9R5DQP782U"

有关更多信息,请参阅 IAM 角色主体

解决方法

基于资源的策略中的唯一主体 ID 表示 IAM 用户或角色已被删除。会显示主体 ID,因为 AWS 无法将其映射回有效的 ARN。如果您编辑基于资源的策略,则必须移除主体 ID 或将其替换为有效的主体 ARN。保存策略后,ARN 将更改为用户或角色新的唯一 ID。

有关更多信息,请参阅 IAM 角色主体