

终止支持通知：2026 年 10 月 7 日， AWS 将终止对的支持。 AWS Proton 2026 年 10 月 7 日之后，您将无法再访问 AWS Proton 控制台或 AWS Proton 资源。您部署的基础架构将保持不变。有关更多信息，请参阅《[AWS Proton 服务弃用和迁移指南》](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html)。

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

# 环境账户连接
<a name="ag-env-account-connections"></a>

**概述**

了解如何使用一个账户创建和管理 AWS Proton 环境，并在另一个账户中配置其基础设施资源。这有助于在大规模操作中提高可见性和效率。环境账户连接仅支持使用 CloudFormation 基础设施即代码的标准预置。

**注意**  
本主题中的信息与配置了 *AWS 托管式预置* 的环境相关。如果环境配置了*自我管理配置*，则 AWS Proton 不会直接配置您的基础架构。相反，它会将拉取请求 (PRs) 发送到您的存储库进行配置。您负责确保您的自动化代码担任正确的身份和角色。  
有关预置方法的更多信息，请参阅[如何配置 AWS Proton 基础架构](ag-works-prov-methods.md)。

**术语**

![\[描述单个账户（管理账户）内 AWS Proton 资源的示意图 AWS 区域。它还展示了该账户中的 AWS Proton 环境如何使用环境账户连接部署到同一区域中的其他账户（环境账户）。\]](http://docs.aws.amazon.com/zh_cn/proton/latest/userguide/images/xaccount-diagram.png)


通过 AWS Proton *环境帐户连接*，您可以从一个账户创建 AWS Proton 环境，并在另一个账户中配置其基础架构。

管理账户  
作为管理员，您可以在其中创建在另一个 AWS Proton 环境*帐户中配置基础架构资源的环境*。

环境账户  
在另一个账户中创建 AWS Proton 环境时，将在环境账户中预置环境基础设施。

环境账户连接  
*管理账户* 和*环境账户* 之间的安全双向连接。它维护授权和权限，在以下几节中进一步中介绍了该内容。

在特定区域的环境账户中创建一个环境账户连接时，仅同一区域中的管理账户可以看到和使用该环境账户连接。这意味着在管理账户中创建的 AWS Proton 环境和在环境账户中配置的环境基础设施必须位于同一个区域。

**环境账户连接注意事项**
+ 对于要在环境账户中预置的每个环境，您需要建立一个环境账户连接。
+ 有关环境账户连接配额的信息，请参阅[AWS Proton 配额](ag-limits.md)。

**标记**

在环境账户中，使用控制台或 AWS CLI 查看和管理环境账户连接客户管理的标签。 AWS *不会*为环境账户连接生成托管标签。有关更多信息，请参阅 [AWS Proton 资源和标记](resources.md)。

## 在一个账户中创建环境并在另一个账户中预置其基础设施
<a name="ag-env-account-connections-create-env"></a>

要从单个管理账户中创建和预置环境，请为您计划创建的环境设置一个环境账户。

**在环境账户中启动并创建连接。**

在环境帐户中，创建一个 AWS Proton 服务角色，该角色的范围仅限于配置环境基础设施资源所需的权限。有关更多信息，请参阅 [AWS Proton 使用进行置备的服务角色 CloudFormation](security_iam_service-role-policy-examples.md#proton-svc-role)。

然后，创建一个环境账户连接请求并将其发送到您的管理账户。请求被接受后， AWS Proton 可以使用关联的 IAM 角色，该角色允许在关联的环境账户中配置环境资源。

**在管理账户中，接受或拒绝环境账户连接。**

在管理账户中，接受或拒绝环境账户连接请求。您*无法* 从管理账户中删除环境账户连接。

如果您接受请求，则 AWS Proton 可以使用允许在关联的环境账户中配置资源的关联 IAM 角色。

环境基础设施资源是在关联的环境账户中预置的。您只能 AWS Proton APIs 使用管理账户访问和管理您的环境及其基础设施资源。有关更多信息，请参阅[在一个账户中创建环境并在另一个账户中预置](ag-create-env.md#ag-create-env-deploy-other)和[更新环境](ag-env-update.md)。

在拒绝请求后，您将*无法* 接受或使用拒绝的环境账户连接。

**注意**  
您*无法* 拒绝已连接到环境的环境账户连接。要拒绝环境账户连接，您必须先删除关联的环境。

**在环境账户中，访问预置的基础设施资源。**

在环境账户中，您可以查看和访问预置的基础设施资源。例如，如果需要，您可以使用 CloudFormation API 操作来监控和清理堆栈。您不能使用 AWS Proton API 操作来访问或管理用于配置基础设施资源的 AWS Proton 环境。

在环境账户中，您可以删除在环境账户中创建的环境账户连接。您*无法* 接受或拒绝这些连接。如果您删除环境正在使用的环境帐户连接，则在接受 AWS Proton 环境帐户和命名环境的新环境连接之前，将 AWS Proton 无法管理环境基础架构资源。您负责清理没有环境连接的预置资源。

## 使用控制台或 CLI 管理环境账户连接
<a name="ag-env-account-connections-create-env-console"></a>

您可以使用控制台或 CLI 创建和管理环境账户连接。

------
#### [ AWS 管理控制台 ]

**使用控制台创建一个环境账户连接，并向管理账户发送请求，如以下步骤中所示。**

1. 确定您计划在管理账户中创建的环境名称，或选择需要环境账户连接的现有环境名称。

1. 在环境账户中，在 [AWS Proton 控制台](https://console.aws.amazon.com//proton/)上的导航窗格中选择**环境账户连接**。

1. 在**环境账户连接**页面中，选择**请求连接**。
**注意**  
验证**环境账户连接**页面标题中列出的账户 ID。确保它与您希望在其中预置指定环境的环境账户的账户 ID 匹配。

1. 在**请求连接**页面中：

   1. 在**连接到管理账户**部分中，输入您在步骤 1 中输入的**管理账户 ID** 和**环境名称**。

   1. 在 “**环境角色**” 部分，选择 “**新建服务角色**”，然后 AWS Proton 自动为您创建新角色。或者，选择**现有的服务角色**和您以前创建的服务角色的名称。
**注意**  
 AWS Proton 自动为您创建的角色具有广泛的权限。我们建议您将角色范围缩小到预置环境基础设施资源所需的权限。有关更多信息，请参阅 [AWS Proton 使用进行置备的服务角色 CloudFormation](security_iam_service-role-policy-examples.md#proton-svc-role)。

   1. （可选）在**标签**部分中，选择**添加新标签**，为您的环境账户连接创建一个客户托管标签。

   1. 选择**请求连接**。

1. 您的请求在**发送到管理账户的环境连接**表中显示为“待处理”，并且一个模态框让您知道如何从管理账户中接受该请求。

**接受或拒绝环境账户连接请求。**

1. 在管理账户中，在 [AWS Proton 控制台](https://console.aws.amazon.com//proton/)上的导航窗格中选择**环境账户连接**。

1. 在**环境账户连接**页面上的**环境账户连接请求**表中，选择要接受或拒绝的环境连接请求。
**注意**  
验证**环境账户连接**页面标题中列出的账户 ID。确保它与要拒绝的环境账户连接的关联管理账户的账户 ID 匹配。在拒绝该环境账户连接后，您将*无法* 接受或使用拒绝的环境账户连接。

1. 选择**拒绝**或**接受**。
   + 如果您选择**拒绝**，状态将从*待处理*变为*已拒绝*。
   + 如果您选择**接受**，状态将从*待处理*变为*已连接*。

**删除环境账户连接。**

1. 在环境账户中，在 [AWS Proton 控制台](https://console.aws.amazon.com//proton/)上的导航窗格中选择**环境账户连接**。
**注意**  
验证**环境账户连接**页面标题中列出的账户 ID。确保它与要拒绝的环境账户连接的关联管理账户的账户 ID 匹配。删除此环境帐户连接后， AWS Proton *无法*管理环境帐户中的环境基础架构资源。只有在管理账户接受环境账户和指定环境的新环境账户连接后，它才能管理该资源。

1. 在**环境账户连接**页面上的**已发送连接至管理账户的请求**部分中，选择**删除**。

1. 一个模态框提示您确认是否要删除。选择**删除**。

------
#### [ AWS CLI ]

确定您计划在管理账户中创建的环境名称，或选择需要环境账户连接的现有环境名称。

**在环境账户中创建环境账户连接。**

运行如下命令：

```
$ aws proton create-environment-account-connection \
    --environment-name "simple-env-connected" \
    --role-arn "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role" \
    --management-account-id "111111111111"
```

响应：

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-connected",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:13:50.847000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role",
        "status": "PENDING"
    }
}
```

**在管理账户中接受或拒绝环境账户连接，如以下命令和响应中所示。**

**注意**  
在拒绝该环境账户连接后，您将无法接受或使用拒绝的环境账户连接。

如果您指定**拒绝**，状态将从*待处理*变为*已拒绝*。

如果您指定**接受**，状态将从*待处理*变为*已连接*。

运行以下命令以接受环境账户连接：

```
$ aws proton accept-environment-account-connection \
    --id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
```

响应：

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-connected",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:15:33.486000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role",
        "status": "CONNECTED"
    }
}
```

运行以下命令以拒绝环境账户连接：

```
$ aws proton reject-environment-account-connection \
    --id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
```

响应：

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:us-east-1:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "status": "REJECTED",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-reject",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:13:50.847000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role"
    }
}
```

**查看环境账户的连接。您可以使用 *get* 或 *list* 获取或列出环境账户连接。**

运行以下 get 命令：

```
$ aws proton get-environment-account-connection \
    --id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
```

响应：

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:region-id:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-connected",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:15:33.486000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role",
        "status": "CONNECTED"
    }
}
```

**删除环境账户中的环境账户连接。**

**注意**  
如果您删除此环境帐户连接，则在接受环境帐户和命名环境的新环境连接之前，将 AWS Proton 无法管理环境帐户中的环境基础设施资源。您负责清理没有环境连接的预置资源。

运行如下命令：

```
$ aws proton delete-environment-account-connection \
    --id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
```

响应：

```
{
    "environmentAccountConnection": {
        "arn": "arn:aws:proton:us-east-1:222222222222:environment-account-connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "environmentAccountId": "222222222222",
        "environmentName": "simple-env-connected",
        "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "lastModifiedAt": "2021-04-28T23:13:50.847000+00:00",
        "managementAccountId": "111111111111",
        "requestedAt": "2021-04-28T23:13:50.847000+00:00",
        "roleArn": "arn:aws:iam::222222222222:role/service-role/env-account-proton-service-role",
        "status": "CONNECTED"
    }
}
```

------