创建SAM模板部署流水线遇CodeDeploy权限错误求助
解决CodeDeploy环节的iam:PassRole权限错误
以下是几个优先级从高到低的修复方向,逐一排查即可:
检查目标角色的信任关系
AWSCodeDeployRoleForECS角色必须允许CodeDeploy服务扮演它,否则即便你拥有PassRole权限,服务也无法正常使用该角色。编辑这个角色的信任策略,确保包含以下配置:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "codedeploy.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }确认策略已正确附加到用户
登录IAM控制台,找到iamadmin用户,检查「权限」标签下是否确实附加了你创建的PassRole策略,避免误附加到其他IAM实体(比如角色或用户组)。验证ARN的准确性
确保策略中资源ARN的{account_id}已替换为你实际的AWS账号ID,同时核对角色名称是否完全匹配(ARN中的角色名称大小写敏感,需与实际角色名称一致)。检查用户的权限边界
如果iamadmin用户设置了权限边界,需确保权限边界策略中也允许iam:PassRole操作。权限边界会覆盖附加的权限策略,导致即便附加了策略也无法生效。等待策略生效
IAM策略变更通常需要1-5分钟才能全局生效,若刚添加完策略就重试,可能因缓存导致权限未更新,等待几分钟后再测试部署。
内容的提问来源于stack exchange,提问作者Rushabh RajeshKumar Padalia
相关产品推荐
相关产品推荐

