【问题标题】:Cross account codepipeline using pull method使用拉取方法的跨账户代码管道
【发布时间】:2021-07-10 13:54:30
【问题描述】:

我正在尝试创建一个跨账户代码管道,但没有适合此场景的文档。

  1. AccountT - A 有 s3 存储桶和 yaml 文件
  2. 帐户- B 将拥有代码管道

账户 B 的代码管道应该在源阶段从账户 A 获取 S3 作为源,在部署阶段使用 cloudformation 部署方法。有人可以帮助了解完成这项任务需要满足哪些角色和其他需求。

【问题讨论】:

    标签: amazon-s3 amazon-cloudformation aws-codepipeline aws-code-deploy amazon-kms


    【解决方案1】:

    要完成这项工作,您需要做两件事。

    1. 您的存储桶需要使用客户 KMS 密钥,而不是默认密钥。这是因为您无法授予其他账户使用默认密钥的权限,这意味着其他账户无法解密存储桶中的数据。您需要在密钥策略中授予权限,以允许其他帐户使用该密钥进行解密。理想情况下,不仅针对整个帐户,还针对您的 CodePipeline 源步骤中使用的角色。
    2. 您必须在 S3 存储桶策略中授予对其他账户的访问权限。理想情况下,不仅针对整个帐户,还针对您的 CodePipeline 源步骤中使用的角色。

    我有一个project ,它使用组织来完成其中的一些工作。这不是您想要的,因为我项目中的 CodePipeline 位于“AccountT”中,而管道运行 CloudFormation(或其他东西)在“Account-B”中运行。因此,在我的情况下,只有 CloudFormation 会返回“AccountT”中的存储桶。我认为修改它以按照您需要的方式工作应该不会是一个很大的变化。我的项目主要基于this AWS article

    【讨论】:

    • 谢谢 Jason,在您提供的说明的帮助下,我能够解决问题。感谢您抽出宝贵时间帮助解决问题。
    猜你喜欢
    • 2022-06-29
    • 2020-09-08
    • 2022-10-20
    • 2022-01-20
    • 1970-01-01
    • 1970-01-01
    • 2020-07-07
    • 2021-12-16
    • 1970-01-01
    相关资源
    最近更新 更多