本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将不同 AWS 账户中的 CodeCommit 存储库与笔记本实例关联
要将其他 AWS 账户中的 CodeCommit 存储库与您的笔记本实例相关联,请为 CodeCommit 存储库设置跨账户访问权限。
要为 CodeCommit 仓库设置跨账户访问权限并将其与笔记本实例关联,请执行以下操作:
-
在包含 CodeCommit 存储库的 AWS 账户中,创建一个 IAM 策略,允许包含您的笔记本实例的账户中的用户访问存储库。有关信息,请参阅《CodeCommit 用户指南》中的步骤 1:在 AccountA 中创建仓库访问策略。
-
在包含 CodeCommit 存储库的 AWS 账户中,创建一个 IAM 角色,并将您在上一步中创建的策略附加到该角色。有关信息,请参阅《CodeCommit 用户指南》中的步骤 2:在 AccountA 中创建存储库访问角色。
-
在笔记本实例中创建一个配置文件,该配置文件使用上一步中创建的角色:
-
打开笔记本实例。
-
在笔记本实例中打开终端。
-
通过在终端中键入以下内容,编辑新配置文件:
vi /home/ec2-user/.aws/config
-
使用以下配置文件信息编辑该文件:
[profile
CrossAccountAccessProfile
] region = us-west-2 role_arn = arn:aws:iam::CodeCommitAccount
:role/CrossAccountRepositoryContributorRole
credential_source=Ec2InstanceMetadata output = json其中
CodeCommitAccount
是包含 CodeCommit 存储库的帐户,CrossAccountAccessProfile
是新配置文件的名称,CrossAccountRepositoryContributorRole
也是您在上一步中创建的角色的名称。
-
-
在笔记本实例上,配置 Git 以使用上一步中创建的配置文件:
-
打开笔记本实例。
-
在笔记本实例中打开终端。
-
通过在终端中键入以下内容,编辑 Git 配置文件:
vi /home/ec2-user/.gitconfig
-
使用以下配置文件信息编辑该文件:
[credential] helper = !aws codecommit credential-helper --profile
CrossAccountAccessProfile
$@ UseHttpPath = true其中
CrossAccountAccessProfile
是您在上一步中创建的配置文件的名称。
-