You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为CodePipeline角色配置信任策略避免“困惑代理人”问题遇阻

解决CodePipeline角色信任策略条件限制导致的角色无法扮演问题

问题核心在于你配置的aws:SourceArn条件仅匹配流水线本身的ARN,但CodePipeline调用sts:AssumeRole时传递的是流水线执行实例的ARN(格式类似arn:aws:codepipeline:eu-west-1:111111111:mypipeline/execution/xxx),原条件无法匹配该格式,导致角色扮演请求被拒绝。

修正后的信任策略配置

改用StringLike匹配流水线ARN的前缀,覆盖该流水线的所有执行实例:

AssumeRolePolicyDocument:
    Version: "2012-10-17"
    Statement:
      - Action: sts:AssumeRole
        Effect: Allow
        Principal:
          Service: codepipeline.amazonaws.com
        Condition:
          StringEquals:
            aws:SourceAccount: !Ref AWS::AccountId
          StringLike:
            aws:SourceArn: "arn:aws:codepipeline:eu-west-1:111111111:mypipeline/*"

额外检查项

  • 确认角色与流水线处于同一AWS区域,跨区域调用时区域字段不匹配会导致条件验证失败
  • 检查流水线的执行角色是否拥有sts:AssumeRole权限,目标为当前配置的这个角色
  • 若使用CloudFormation部署,需等待栈更新完成后再触发流水线测试

内容的提问来源于stack exchange,提问作者Ronan Cunningham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 19:27:22