

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

# 跨账户存储库访问：AccountB 中管理员的操作
<a name="cross-account-administrator-b"></a>

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

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

**Topics**
+ [步骤 1：为 AccountB 用户创建用于存储库访问的 IAM 组](#cross-account-create-group-b)
+ [步骤 2：创建策略并将用户添加到 IAM 组](#cross-account-create-policy-b)

## 步骤 1：为 AccountB 用户创建用于存储库访问的 IAM 组
<a name="cross-account-create-group-b"></a>

管理 AccountB 中的哪些 IAM 用户可访问 AccountA 存储库的最简单方法是，在 AccountB 中创建一个有权代入 AccountA 中的角色的 IAM 组，然后将 IAM 用户添加到该组。<a name="cross-account-create-group-b-procedure"></a>

**创建用于跨账户存储库访问的组**

1. 以具有创建 IAM 群组和策略以及 AWS 管理 AccountB 中的 IAM 用户所需权限的 IAM 用户身份登录管理控制台。

1. 使用 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 打开 IAM 控制台。

1. 在 IAM 控制台中，选择**组**。

1. 选择 **Create New Group (创建新组)**。

1. 在**组名**中，输入该组的名称（例如，*DevelopersWithCrossAccountRepositoryAccess*）。选择**下一步**。

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

## 步骤 2：创建策略并将用户添加到 IAM 组
<a name="cross-account-create-policy-b"></a>

现在您已拥有一个组，请创建策略来允许此组的成员代入允许其访问 AccountA 中的存储库的角色。然后，向该组添加 AccountB 中的 IAM 用户，您希望这些用户能够访问 AccountA 中的存储库。<a name="cross-account-create-policy-for-group"></a>

**为组创建策略并向组添加用户**

1. 在 IAM 控制台中，选择**群组**，然后选择您刚刚创建的群组的名称（例如*DevelopersWithCrossAccountRepositoryAccess*）。

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

1. 选择 **Custom Policy**，然后选择 **Select**。

1. 在 **Policy Name (策略名称)** 中，输入策略的名称（例如 *AccessPolicyForSharedRepository*）。

1. 在 **Policy Document (策略文档)** 中，粘贴以下策略。**在中`Resource`，将 ARN 替换为管理员在账户 A 中创建的策略的 ARN（例如，arn: aws: iam::: role/），然后选择应用策略。*111122223333* *MyCrossAccountRepositoryContributorRole***有关管理员在 AccountA 中创建的策略的更多信息，请参阅[步骤 1：在 AccountA 中创建用于存储库访问的策略](cross-account-administrator-a.md#cross-account-create-policy-a)。

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": {
       "Effect": "Allow",
       "Action": "sts:AssumeRole",
       "Resource": "arn:aws:iam::111122223333:role/MyCrossAccountRepositoryContributorRole"
     }
   }
   ```

------

1. 选择**用户**选项卡。选择**向组添加用户**，然后添加 AccountB IAM 用户。例如，您可以将具有该用户名*Saanvi\$1Sarkar*的 IAM 用户添加到群组。
**注意**  
AccountB 中的用户必须具有编程访问权限，包括访问密钥和密钥，才能配置其本地计算机以访问共享 CodeCommit 存储库。如果您要创建 IAM 用户，请确保保存访问密钥和私有密钥。为确保您的 AWS 账户的安全，私有访问密钥仅在您创建它时可用。