

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

# AWS Control Tower 中的嵌套 OU
<a name="nested-ous"></a>

本章列出了在 AWS Control Tower 中使用嵌套 OU 时的期望和需要注意的事项。在大多数情况下，使用嵌套 OU 与使用扁平化 OU 结构相同。**注册表**和**Re-register**功能适用于嵌套的 OU，但本章中提到的更改行为除外。

## 视频演练
<a name="nested-ou-video"></a>

此视频（4:46）介绍如何在 AWS Control Tower 中管理嵌套 OU 部署。为了更好地观看，请选择视频右下角的图标以将其放大为全屏。可以使用字幕。

[![AWS Videos](https://img.youtube.com/vi/zisI5ZNO2kk/0.jpg)](https://www.youtube.com/watch?v=zisI5ZNO2kk)


有关嵌套 OU 和登录区的最佳实践的指导，请参阅博客文章 [Organizing your AWS Control Tower landing zone with nested OUs](https://aws.amazon.com/blogs/mt/organizing-your-aws-control-tower-landing-zone-with-nested-ous/)。

## 从扁平化 OU 结构扩展到嵌套 OU 结构
<a name="flat-to-nested"></a>

如果您使用扁平化 OU 结构创建了 AWS Control Tower 登录区，则可以将其扩展为嵌套 OU 结构。

**此过程分为四个主要步骤：**

1. 在 AWS Control Tower 中创建所需的嵌套 OU 结构。

1. 转到 AWS Organizations 控制台，使用他们的批量移动功能将账户从源 OU（平面）移动到目标 OU（嵌套）。方法如下：

   1. 转到要从中移动账户的 OU。

   1. 选择 OU 内的所有账户。

   1. 选择**移动**。
**注意**  
此步骤必须在 AWS Organizations 控制台中完成，因为 AWS 控制塔没有**移动**功能。

1. 前往 AWS 控制塔中嵌套的 OU 并******Re-register**进行注册。嵌套 OU 中的所有账户都将被注册。
   + 如果您在 AWS 控制塔中创建了 OU，**Re-register**则为 OU。
   + 如果您在中创建了 OU AWS Organizations**，**请首次注册 OU。

1. 在您的账户迁移和注册后，从 AWS Organizations 控制台或 AWS 控制塔控制台中删除空的顶级 OU。

## 嵌套 OU 注册预检查
<a name="nested-ou-prechecks"></a>

为支持成功注册嵌套 OU 及其成员账户，AWS Control Tower 会执行一系列预检查。注册任何顶级 OU 或嵌套 OU 时，也会执行相同的预检查。有关更多信息，请参阅 [Common causes of failure during registration or re-registration](https://docs.aws.amazon.com/controltower/latest/userguide/common-eg-failures.html)。
+ 如果所有预检查均通过，AWS Control Tower 将自动开始注册您的 OU。
+ 如果任何预检查失败，AWS Control Tower 将停止注册流程，并为您提供在注册 OU 之前必须修复的项目列表。

## 嵌套 OU 和角色
<a name="nested-ous-and-roles"></a>

AWS Control Tower 会将 `AWSControlTowerExecution` 角色部署到目标 OU 下的账户，以及嵌套在目标 OU 下的所有 OU 中的账户，即使您只打算注册目标 OU。此角色向管理账户的任何用户授予对任何具有 `AWSControlTowerExecution` 角色的账户的**管理员**权限。该角色可用于执行 AWS Control Tower 控件通常不允许的操作。

您可以从不打算注册的已取消注册的账户中删除此角色。如果您删除此角色，则无法在 AWS Control Tower 中注册该账户，也无法注册直系父 OU，除非将该角色恢复到账户。要从账户中删除 `AWSControlTowerExecution` 角色，您必须以 `AWSControlTowerExecution` 角色登录，因为不允许其他 IAM 主体删除由 AWS Control Tower 管理的角色。

有关如何限制角色访问权限的信息，请参阅 [Optional conditions for your role trust relationships](https://docs.aws.amazon.com/controltower/latest/userguide/conditions-for-role-trust.html)。

## 嵌套 OU 和账户的注册和重新注册过程中会发生什么情况
<a name="nested-ous-and-accounts"></a>

注册或重新注册嵌套 OU 时，AWS Control Tower 会注册目标 OU 的所有未注册的账户，并更新所有已注册的账户。以下是将要出现的情况。

**AWS Control Tower 执行以下任务**
+ 将 `AWSControlTowerExecution` 角色添加到此 OU 下的所有未注册的账户以及嵌套 OU 中的所有未注册的账户。
+ 注册未注册的成员账户。
+ Re-enrolls 注册的会员账户。
+ 为新注册的成员账户创建 IAM Identity Center 登录。
+ 更新现有已注册的成员账户，以反映您的登录区更改。
+ 更新为此 OU 及其成员账户配置的控件。

## 嵌套 OU 注册方面的注意事项
<a name="nested-ou-registration"></a>
+ 您不能在核心 OU（安全 OU）下注册 OU。
+ 嵌套 OU 必须单独进行注册。
+ 除非注册了 OU 的父 OU，否则您无法注册 OU。
+ 除非树中较高级别的所有 OU 在某个时候都已成功注册（有些可能已被删除），否则您无法注册 OU。
+ 您可以注册位于级别较高的已偏移的 OU 之下的 OU，但该偏移不会因此得到修复。

## 嵌套 OU 限制
<a name="nested-ou-limitations"></a>
+ OU 在根下最多可嵌套 5 个级别。
+ 目标 OU 下的嵌套 OU 必须单独进行注册或重新注册。
+ 如果目标 OU 在层次结构中位于 2 级或更低级，也就是说，如果它不是顶级 OU，则会自动对此 OU 及其下所有 OU 实施在更高级别的 OU 上启用的预防性控件。
+ OU 注册失败不会在层次结构树中向上传播。您可以在父 OU 的详细信息页面上查看有关嵌套 OU 的状态的详细信息。
+ OU 注册失败不会在层次结构树中向下传播。
+ AWS Control Tower 不会修改任何新账户或现有账户的 VPC 设置。

## 嵌套 OU 和合规性
<a name="nested-ou-compliance"></a>

在 AWS Control Tower 控制台中，您可以在**组织**页面中查看不合规的 OU 和账户，这样您就可以更全面地了解合规情况。

**嵌套 OU 和账户的合规性方面的注意事项**
+ OU 的合规性不是根据嵌套在其下的 OU 的合规性来确定的。
+ 控件的合规性状态是根据启用控件的所有 OU（包括嵌套 OU）计算的。请参阅 [OU 和账户的 AWS Control Tower 合规性状态](https://docs.aws.amazon.com/controltower/latest/userguide/compliance-statuses.html)。
+ 只有当 OU 的账户不合规时，OU 才会显示为不合规，而不管 OU 在 OU 层次结构中的位置如何。
+ 如果嵌套 OU 不合规，其父 OU 不会自动被视为不合规。
+ 在 **OU 详细信息**或**账户详细信息**页面上，您可以查看可能导致您的 OU 或账户显示不合规状态的不合规资源的列表。

## 嵌套 OU 和偏移
<a name="nested-ous-and-drift"></a>

在某些情况下，偏移可能会阻止嵌套 OU 的注册。

**对偏移和嵌套 OU 的期望**
+ 您可以在具有偏移的父项的 OU 上启用控件，但不能直接在偏移的 OU 上启用控件。
+ 只要偏移的 OU 不是顶级偏移的 OU，您就可以在偏移的 OU 下启用检测性控件。
+ 强制性控件仅在顶级 OU 上启用。注册嵌套 OU 时会跳过强制性控件。
+ 一个强制性控件可以保护 AWS Config 资源；因此，该控制必须处于非漂移状态才能注册嵌套的 OU。如果发生了偏移，AWS Control Tower 会阻止嵌套 OU 的注册。
+ 如果顶级 OU 处于偏移状态，则保护 AWS Config 资源的控制权可能会出现偏差。在这种情况下，AWS Control Tower 会阻止任何需要创建或更新 AWS Config 资源的操作，包括应用侦探控制。

## 嵌套 OU 和控件
<a name="nested-ous-and-controls"></a>

当您在已注册的 OU 上启用控件时，预防性控件和检测性控件的行为会有所不同。对于嵌套 OU，主动性控件的行为类似于检测性控件。

**预防性控件**
+ 对嵌套 OU 实施预防性控件。
+ 对 OU 及其嵌套 OU 下的所有账户实施强制性的预防性控件。
+ 预防性控件会影响嵌套在目标 OU 下的所有账户和 OU，即使这些账户和 OU 尚未注册。

**检测性控件和主动性控件**
+ 嵌套 OU 不会自动沿用检测性控件或主动性控件；这些控件必须单独启用。
+ 检测性控件和主动性控件仅部署到您的登录区运行所在区域中的注册账户。

**启用控件状态和沿用**

 您可以在 **OU 详细信息**页面上查看每个 OU 的沿用的控件。

**提示**  
您可以利用控件沿用功能来帮助保持在 OU 的 SCP 配额之内。例如，您可以在 OU 层次结构的顶级 OU 处启用控件，而不是直接为嵌套 OU 启用。

**已沿用状态**
+ **已沿用**状态表示控件仅通过沿用功能启用，并且尚未直接应用于 OU。
+ **已启用**状态表示控件会在此 OU 上实施，与它在其他 OU 上的状态无关。
+ **失败**状态表示控件不会在此 OU 上实施，与它在其他 OU 上的状态无关。

**注意**  
**已沿用**状态表示控件已应用于树中更高级别的 OU，并且已在此 OU 上实施，但未直接添加到此 OU。

**如果您的登录区不是当前版本**  
 **已启用的控件**表中的每一行代表一个单独的 OU 上已启用的控件。

## 嵌套 OU 和根
<a name="nested-ous-and-root"></a>

根不是 OU，并且无法进行注册或重新注册。您也不能直接在根中创建账户。根不能不合规，也不能处于生命周期状态，例如*已注册*或*处于偏移*状态。

但是，根是所有账户和 OU 的顶级容器。在嵌套 OU 的情况下，它是所有其他 OU 嵌套在其下的节点。