首页 > 解决方案 > 调用 PutObject 操作时拒绝访问 - AWS Lambda Pipeline

问题描述

这是我第一次与 AWS 合作。我正在尝试为基本的 hello world python 代码创建 CICD 管道。

Git 集线器集成,更改检测在 AWS Code Pipeline 中运行良好,但在构建阶段,我一次又一次地收到此错误。

错误: 无法上传工件。应用资源的CodeUri参数引用。调用PutObject操作时发生错误(AccessDenied):访问被拒绝

以下是关于我的项目的详细信息。

Github(用于 Python 代码、buildspec.yaml 和 template.yaml 文件)- https://github.com/prahamurali/awscicd.git

错误信息

IAM 角色

管道

S3 权限

标签: amazon-web-servicesamazon-s3aws-lambdaaws-codepipelineaws-codebuild

解决方案


根据您的问题,不清楚IAM Roles. 但是,它似乎是与CodeBuild 无关的角色。

如果是这种情况,那么您需要将 S3 访问权限添加到CodeBuild 项目的角色,而不是 CodePipeline 或 CloudFormation。原因是 CodeBuild 是将您的对象实际上传到 S3 的服务,因此它需要此类权限。


推荐阅读