【问题标题】:AWS CloudFormation Getting 403 When Accessing S3AWS CloudFormation 在访问 S3 时收到 403
【发布时间】:2021-12-01 20:25:28
【问题描述】:

我们设置了 CodePipeline 流程,除 CodeDeploy 阶段外,所有阶段都可以工作。

我们的流水线阶段如下:

  • 为 CloudFormation 生成更改集
  • CloudFormation 的 ExecuteChangeSet
  • 为 CodeDeploy 部署

这些阶段由 CodeStar 设置和配置。

我们的 GenerateChangeSet 阶段尝试访问 s3 以获取我们的 BuildArtifact,但失败并出现以下错误:

Action execution failed
Access Denied (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID: 40P7HSHQGWXSRA72; S3 Extended Request ID: I6hiCC7xx+YmnQMLfUnMzZziLDz/5b8uJWzOqWNZwSiVRCS14Q6UyVfss6q80teO5MAGuR9Xft4=; Proxy: null)

这表明 CloudFormation 无法访问 s3,但我已经检查并重新检查了它使用的策略,它肯定具有访问 s3 的正确权限。

我不太确定为什么会发生此错误,因为角色策略确实可以访问 s3。我什至选择了授予此角色对 s3 的完全控制权的核选项(以期在我解决问题后恢复),但无济于事,错误仍然发生。

有没有人遇到过这种情况?有人知道为什么会这样吗?

【问题讨论】:

  • 您的 S3 存储桶是否已加密?您可以查看 Cloudtrail 事件吗?
  • 您能否分享您的完整政策以及您的GenerateChangeSet 步骤的详细信息?
  • 您应该检查该策略是否已正确附加到角色,并且您将角色分配给您的管道(而不是云形成)。

标签: amazon-web-services amazon-s3 amazon-cloudformation aws-code-deploy


【解决方案1】:

我发现了这个问题。 CloudFormation 模板文件(template.yml 和 template-configuration.yml)正在从 repo 中读取该文件,但之前已将其删除,因此我从该资源中收到拒绝访问错误。

我希望错误消息更明确,这样可以节省几个小时。

【讨论】:

    猜你喜欢
    • 2016-02-10
    • 1970-01-01
    • 2017-09-12
    • 2020-02-18
    • 1970-01-01
    • 2018-05-04
    • 2021-07-19
    • 1970-01-01
    • 2022-12-28
    相关资源
    最近更新 更多