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

编辑CodeBuild项目遇“可信主体不属于该服务”错误的排查问询

问题分析与解决方案

可能原因1:CodeBuild服务关联角色信任策略异常

CodeBuild项目依赖名为AWSServiceRoleForCodeBuild的服务关联角色来和其他AWS服务交互。如果这个角色的信任策略被篡改,导致codebuild.amazonaws.com这个服务主体不在信任列表里,哪怕你有项目管理员权限,也会触发这个错误。

可能原因2:源提供商的关联角色配置冲突

如果你的项目源是GitHub、GitLab这类外部平台,添加Actor ID时可能误改了源身份验证角色的信任策略,使得该角色没有正确信任CodeBuild或对应源服务的主体。

排查修复步骤

  • 修复CodeBuild服务关联角色

    1. 打开IAM控制台,搜索AWSServiceRoleForCodeBuild角色
    2. 查看「信任关系」,确保包含以下策略内容:
      {
        "Version": "2012-10-17",
        "Statement": [
          {
            "Effect": "Allow",
            "Principal": {
              "Service": "codebuild.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
          }
        ]
      }
      
    3. 要是策略被改了,点击「编辑信任策略」恢复上述内容,保存后再试修改CodeBuild项目。
  • 检查源配置的关联角色

    1. 在CodeBuild项目的源配置页,找到使用的身份验证角色(针对外部源)
    2. 进入IAM控制台找到该角色,确认信任策略里有对应的服务主体:
      • GitHub/GitLab源:必须信任codebuild.amazonaws.com
      • CodeCommit源:按需信任codecommit.amazonaws.com
    3. 修正策略后重新保存项目配置。
  • 用AWS CLI尝试修改
    要是控制台还是报错,试试用CLI命令绕开可能的缓存问题:

    # 先获取原项目配置
    aws codebuild batch-get-projects --names <你的项目名称>
    # 修改源配置后执行更新
    aws codebuild update-project --name <你的项目名称> --source <修改后的源配置JSON>
    

内容的提问来源于stack exchange,提问作者Abdalrahman Shatou

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 23:27:31