AWS CloudFormation部署栈时配置的IAM角色突然消失问题求助
AWS CloudFormation IAM角色异常消失排查方案
问题描述
- 控制台部署CloudFormation栈时,原用于400+个栈部署的IAM角色突然从角色选择列表中消失
- 删除任意一个已部署的栈后,该角色会重新显示在可选列表中
- 未找到AWS相关限制文档,创建拥有相同信任关系的新角色后,问题依旧存在
- 角色信任关系策略如下:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "cloudformation.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
- 问题发生在部署流程的选择IAM角色步骤(原本应显示该角色的位置无法找到)
排查与解决建议
- 检查角色关联资源数量影响
AWS IAM角色本身没有关联栈数量的硬限制,但CloudFormation控制台加载角色列表时,可能因该角色关联的栈过多,导致前端渲染或后端查询出现异常。删除栈后关联数减少角色重新显示,符合这个逻辑。 - 用CLI部署绕过控制台限制
直接通过AWS CLI执行部署命令,指定该IAM角色:
如果CLI能正常使用该角色,说明问题出在控制台的前端/查询逻辑,而非角色本身配置。aws cloudformation create-stack --stack-name YOUR_STACK_NAME --template-body file://your-template.yml --role-arn arn:aws:iam::ACCOUNT_ID:role/YOUR_ROLE_NAME - 验证IAM角色与用户权限
确认角色没有被添加特殊过滤标签,或权限边界中存在限制CloudFormation控制台读取角色的规则。同时检查当前登录用户是否拥有iam:ListRoles和iam:PassRole的完整权限,避免控制台因权限不足过滤角色。 - 提交AWS支持工单
若上述方法无效,大概率是AWS控制台的边缘场景Bug,提交工单时提供角色ARN、关联栈数量、问题复现步骤,让AWS团队排查控制台的角色列表查询逻辑。
内容的提问来源于stack exchange,提问作者StrawHat
相关产品推荐
相关产品推荐

