【发布时间】:2022-10-07 21:04:37
【问题描述】:
我正在使用 TypeScript 和 cdk 为我的项目构建 AWS CodePipelines。我还有一个在其中一个管道(管道 A)中创建的 CodeBuild 项目,我想在不同的管道(管道 B)中重用它。
在管道 B 中,我正在创建一个指向该项目的链接
const project = PipelineProject.fromProjectName(this, "SharedId", "SharedName");
两条管道均已成功创建。当我在管道 A 中运行它时,一切正常。 问题是 - 当我在管道 B 中运行这个项目时,它失败并显示一条消息:
[Container] 2022/10/07 10:34:57 Waiting for DOWNLOAD_SOURCE
AccessDenied: Access Denied
status code: 403, request id: QHRTGW90SXRHBRAD, host id: nTnocqc+T3RL6naDcEdDH+WOQ4RJfFekFGopZCPFvbcZEkXE8OxCS9slBjrnJl/k+w68ChuBoei1KtcGT1xWZA== for primary source and source version arn:aws:s3:::mypipeline-ia1llzrl9at8/SharedId/deployment/65uygTY
我尝试将共享 CodeBuild 项目的角色权限添加到 s3,但没有运气。在这种情况下,它会失败并显示以下消息:
[Container] 2022/10/07 12:20:13 Waiting for DOWNLOAD_SOURCE
AccessDenied: The ciphertext refers to a customer master key that does not exist, does not exist in this region, or you are not allowed to access.
status code: 403, request id: XQS9V45BHRGK3SBG, host id: //Jrj4Tb6aV1GMCwOE9mzA18Hc0En7299hcd4DgxoFD7l7O/QaDsgln8UMtqwfIV5o/RDKR+Aqc= for primary source and source version arn:aws:s3:::mypipeline-ia1llzrl9at8/SharedId/deployment/65uygTY
所以我的问题是 - 如何正确设置此 CodeBuild 项目的权限,以便它可以访问来自两个管道的输入工件?
【问题讨论】:
标签: amazon-web-services aws-cdk aws-codepipeline aws-codebuild