Amazon web services 如何从特定AWS代码提交帐户克隆分支

Amazon web services 如何从特定AWS代码提交帐户克隆分支,amazon-web-services,aws-codecommit,Amazon Web Services,Aws Codecommit,我们有4个独立的AWS账户,分别用于开发、QA、UAT和生产 我需要从AWS Prod帐户克隆一个分支名称为Production的存储库 问题是我正在使用命令 git clone https://git-codecommit.us-east-1.amazonaws.com/v1/repos/vanguard" 这工作正常,但我不确定克隆的存储库属于哪个AWS帐户,因为在将存储库克隆到本地时,我没有提供任何AWS帐户详细信息 克隆URL https://git-codecommit.u

我们有4个独立的AWS账户,分别用于开发、QA、UAT和生产

我需要从AWS Prod帐户克隆一个分支名称为Production的存储库

问题是我正在使用命令

git clone https://git-codecommit.us-east-1.amazonaws.com/v1/repos/vanguard"
这工作正常,但我不确定克隆的存储库属于哪个AWS帐户,因为在将存储库克隆到本地时,我没有提供任何AWS帐户详细信息

克隆URL

https://git-codecommit.us-east-1.amazonaws.com/v1/repos/vanguard" 
在所有AWS帐户中都是相同的


如何仅从特定的AWS代码提交帐户克隆存储库?

您必须在要从中克隆存储库的AWS帐户中创建一个IAM角色。
IAM
角色将授权AWS帐户中的IAM用户访问该存储库

然后,您必须将
AWS CLI
配置为使用AWS安全令牌服务(STS),并在运行命令时担任角色

另外,请注意,每个
CodeCommit
存储库都与AWS区域相关联

这里有更多关于

编辑:

以下是启用跨帐户访问不同帐户中的存储库所需执行的操作:

存储库帐户操作:

  • 创建访问存储库的策略
  • 将此策略附加到同一帐户中的角色,并允许用户帐户中的用户担任此角色
  • 用户帐户操作:

  • 创建
    IAM
    用户或
    IAM
    组。使用这些从其他帐户访问存储库
  • 为用户或组分配一个策略,该策略允许他们承担在存储库帐户中创建的角色,作为上一步的一部分
  • 最后,在尝试克隆或以其他方式访问存储库之前,请先假定跨帐户角色。另外,对凭证文件进行必要的更改
    ~/.aws/config

    例如:

    [profile MyCrossAccountProfile]
    role_arn = arn:aws:iam::123456789012:role/MyCrossAccountProfile
    source_profile = user1
    
    最后,您需要修改
    AWS CLI
    credential helper,以便使用
    MyCrossAccountProfile

    git config --global credential.helper `!aws codecommit credential-helper --profile MyCrossAccountProfile $@'
    

    问题解决了,谢谢。