【发布时间】:2021-09-13 17:30:57
【问题描述】:
我有一个 AdministratorAccess 的 IAM 角色,但是当我将自定义模板上传到 AWS CloudFormation 时,我收到以下错误:
操作失败,ComputeEnvironment 因错误而无效: CLIENT_ERROR - 您无权调用 EC2 描述操作。 需要执行 CreateLaunchConfiguration 操作。
所有其他资源似乎都已成功完成,所以我不确定是否发生了某种角色委派?
【问题讨论】:
-
可以直接运行(不是通过cloudformation)吗?
-
是的,从我的 CLI 配置用户运行
aws ec2 describe-instances工作正常。我想知道即使该角色具有管理员访问权限,是否某些权限也不会传播到 Cloud Formation。 -
或者命令可能不在角色下运行。不想说 - 但需要大量的故障排除。您说 role - 将角色分配给服务器实例。当您运行 CF 模板时,它通常在分配给 user 的用户和权限下运行。你确定你是指角色吗?
-
我创建了一个属于
AdministratorAccess组的新用户,并使用新密钥配置了我的 ~/.aws/credentials。在尝试了aws --debug cloudformation create-stack --template-url <url> --stack-name my_stack --capabilities CAPABILITY_NAMED_IAM并用CAPABILITY_IAM替换了这些功能之后,我一直看到同样的事情。将继续尝试寻找一些有用的调试日志... -
约翰,这似乎确实是问题所在。在创建堆栈的第二步,我必须将
CustomRole设置为true并在第三步指定 IAM 角色(在我的情况下为管理员)。任何其他排列(真 + 无角色、假 + 角色、假 + 无角色)都不起作用。我将进一步调查并完全理解为什么会这样,然后回答我自己的问题。
标签: amazon-web-services amazon-cloudformation amazon-iam