跨账户仓库访问:管理员在 AccountB 中的操作 - Amazon CodeCommit
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

跨账户仓库访问:管理员在 AccountB 中的操作

要允许 AccountB 中的用户或组访问 AccountA 中的存储库,AccountB 管理员必须在 AccountB 中创建一个组。必须为此组配置一个策略,该策略允许组成员代入由 AccountA 管理员创建的角色。

以下各节提供了步骤和示例。

步骤 1:为 AAccountB 用户存储库访问创建一个 IAM 组

管理 AccountB 中的哪些 IAM 用户可以访问 AccountA 存储库的最简单方法是在 AccountB 中创建一个有权在 AccountA 中担任该角色的 IAM 群组,然后将 IAM 用户添加到该群组。

创建用于跨账户存储库访问的组
  1. 以 IAM 用户身份登录Amazon管理控制台,拥有在 AccountB 中创建 IAM 群组和策略以及管理 IAM 用户所需的权限。

  2. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  3. 在 IAM 控制台中,选择群组

  4. 选择 Create New Group (创建新组)

  5. 组名中,输入该组的名称(例如,DevelopersWithCrossAccountRepositoryAccess)。选择 Next Step

  6. Attach Policy 中,选择 Next Step。您在下一个过程中创建跨账户策略。完成组的创建。

步骤 2:创建策略并将用户添加到 IAM 组

现在您已拥有一个组,请创建策略来允许此组的成员代入允许其访问 AccountA 中的存储库的角色。然后将 AccountB 中您想要允许在 AccountA 中访问的 IAM 用户添加到该群组。

为组创建策略并向组添加用户
  1. 在 IAM 控制台中,选择群组,然后选择您刚才创建的群组的名称(例如,DevelopersWithCrossAccountRepositoryAccess)。

  2. 请选择 Permissions 选项卡。展开内联策略,然后选择用于创建内联策略的链接。(如果您配置的是已拥有内联策略的组,请选择创建组策略。)

  3. 选择 Custom Policy,然后选择 Select

  4. Policy Name (策略名称) 中,输入策略的名称(例如 AccessPolicyForSharedRepository)。

  5. Policy Document (策略文档) 中,粘贴以下策略。在中Resource,将 ARN 替换为管理员在 AccountA 中创建的策略的 ARN(例如 arn: aws: iam:: 111122223333: role/MyCrossAccountRepositoryContributorRole,然后选择 Apply Policy 有关管理员在 AccountA 中创建的策略的更多信息,请参阅步骤 1:在 Account A 中创建存储库访问策略

    { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::111122223333:role/MyCrossAccountRepositoryContributorRole" } }
  6. 选择 Users(用户)选项卡。选择 “将用户添加到群组”,然后添加 AccountB IAM 用户。例如,您可以将用户名为 Saanvi_Sarkar 的 IAM 用户添加到群组。

    注意

    AccountB 中的用户必须具有编程访问权限,包括访问密钥和密钥,才能配置本地计算机以访问共享 CodeCommit 存储库。如果您要创建 IAM 用户,请务必保存访问密钥和私有密钥。为确保您的 Amazon 账户的安全,私有访问密钥仅在您创建它时可用。