【问题标题】:AWS CodePipeline permission error on Release change action发布更改操作上的 AWS CodePipeline 权限错误
【发布时间】:2019-07-13 17:26:57
【问题描述】:

我最近在 AWS codePipeline 控制台的发布更改操作中开始收到以下错误。还附上截图

动作执行失败

权限不足 提供的角色没有权限 执行此操作。潜在错误:拒绝访问(服务: 亚马逊 S3;状态码:403;错误代码:拒绝访问;请求编号: CA26EF93E3DAF8F0; S3 扩展请求 ID: mKkobqLGbj4uco8h9wDOBjPeWrRA2ybCrEsVoSq/MA4IFZqJb6QJSrlNrKk/EQK40TfLbTbqFuQ=)

我在任何地方都找不到此错误代码的任何在线资源。

【问题讨论】:

    标签: amazon-web-services aws-codepipeline


    【解决方案1】:

    您的管道正在尝试访问 S3 存储桶,但 AWS CodePipeline ServiceRole 无权访问它。创建一个 IAM 策略以提供对 S3 的访问并将其附加到 CodePipeline 服务角色。

    【讨论】:

      【解决方案2】:

      正如@Jeevagan 所说,您必须创建一个新的 IAM 策略来授予对管道存储桶的访问权限。

      不要忘记添加以下操作:

               Action:
                - "s3:GetObject"
                - "s3:List*"
                - "s3:GetObjectVersion"
      

      特别是因为这个,我损失了几分钟:GetObjectVersion

      通过检查您的 codedeploy-output,您将能够看到该进程正在使用参数“versionId”下载您的工件的特定版本。

      希望它会有所帮助。

      【讨论】:

        【解决方案3】:

        在引用 S3 的此错误背后伪装的另一个潜在罪魁祸首是缺少对 CodePipeline 的 IAM 角色的 KMS 权限。如果您将 CodePipeline 配置为使用 KMS 加密,则与 CodePipeline 使用/关联的服务角色也需要对该 KMS 密钥的 KMS 权限,以便与 S3 中的 KMS 加密对象进行交互。根据我的经验,缺少 KMS 权限会导致出现引用 S3 的相同错误消息。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-01-25
          • 2021-09-30
          • 1970-01-01
          • 2019-06-04
          • 1970-01-01
          • 2021-08-31
          • 1970-01-01
          • 2021-09-14
          相关资源
          最近更新 更多