监管偏移的类型 - AWS Control Tower

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

监管偏移的类型

当、和成员账户发生更改或更新时 OUs SCPs,就会发生治理偏差,也称为组织漂移。可在 AWS Control Tower 中检测到的监管偏移类型如下所示:

  • 账户和 OU 监管偏移

  • 登录区偏移

  • 非 SCP 控件的控件偏移

  • 基准和控件的继承偏移

下文将详细介绍 AWS Control Tower 报告的这些类型的偏移以及如何解决这些问题。

注意

AWS Control Tower 将停止向 LZ4 .0 以上客户的 SNS 主题发送偏移通知,而是开始向管理账户发送漂移通知。 EventBridge 要查看示例事件和有关如何接收漂移通知的指南, EventBridge 请参阅以下有关EventBridge 创建的部分。

登录区偏移

另一种类型的偏移是登录区偏移,可通过管理账户发现这种偏移。着陆区漂移包括 IAM 角色偏移或任何类型的组织偏移,具体影响基础账户 OUs和共享账户。

登录区偏移的一个特殊情况是角色偏移,当所需角色不可用时,便会检测到该偏移。如果出现这种偏移,控制台将显示警告页面以及一些有关如何恢复角色的说明。在角色偏移问题得到解决之前,您的登录区将不可用。有关角色偏移的更多信息,请参阅需要立即解决的偏移类型一节中的不要删除必需的角色

非 SCP 控件的控件偏移

AWS Cont rol Tower 报告了使用资源控制策略 (RCPs)、声明性策略和AWS Security Hub CSPM 服务管理标准:AWS Control Tower 中的控制措施实施的控制偏差:AWS Contro l Tower。

基准和控件的继承偏移

  • 启用的基准偏移

    当成员账户的基准配置与应用于父 OU 的基准配置不同时,AWS Control Tower 会报告这些账户 OUs 和账户上已启用的基准(资源配置)的继承偏差。有关基准的更多信息,请参阅基准的类型

  • 已启用的控件偏移

    当成员账户上启用的控制配置与应用于父 OU 的控制配置不同时,AWS Control Tower 会报告这些账户 OUs 和账户上已启用的控制的继承偏差。

未报告的偏移
  • AWS Control Tower 不会在使用管理账户的其他服务(包括亚马逊 AWS CloudTrail CloudWatch、IAM Identity Center、 CloudFormation AWS Config、等)方面寻找偏差。

  • AWS Control Tower 不会检测在您修改基准中包含的资源的情况下可能出现的资源偏移或其他类型的偏移。

移动的成员账户

注意

对于使用 LZ 4.0 及更高版本的客户,AWS Control Tower 不会为没有账户的 Account Factory 账户发送转移账户漂移通知。 AWSControl TowerBaseline

这种类型的偏移发生在账户层面而非 OU 层面。当 AWS Control Tower 成员账户、审计账户或者日志存档账户从一个已注册的 AWS Control Tower OU 移动到另一个 OU 时,可能会发生这种偏移。在许多情况下,当在设置页面上激活账户的自动注册功能时,您可以避免这种偏移。有关更多详细信息,请参阅使用自动注册功能移动和注册账户

以下是检测到此类偏差时的偏移通知示例。

{ "Message" : "AWS Control Tower has detected that your member account 'account-email@amazon.com (012345678909)' has been moved from organizational unit 'Sandbox (ou-0123-eEXAMPLE)' to 'Security (ou-3210-1EXAMPLE)'. For more information, including steps to resolve this issue, see 'https://docs.aws.amazon.com/console/controltower/move-account'", "ManagementAccountId" : "012345678912", "OrganizationId" : "o-123EXAMPLE", "DriftType" : "ACCOUNT_MOVED_BETWEEN_OUS", "RemediationStep" : "Re-register this organizational unit (OU), or if the OU has more than 1000 accounts, you must update the provisioned product in Account Factory.", "AccountId" : "012345678909", "SourceId" : "012345678909", "DestinationId" : "ou-3210-1EXAMPLE" }

解决方法

当拥有多达 1000 个账户的 OU 中的 Account Factory 预置账户出现这种偏移时,可通过以下方式解决:

  • 在 AWS Control Tower 控制台中导航到组织页面,选择相应账户,然后选择右上角的更新账户(适用于个人账户的最快选项)。

  • 在 AWS Control Tower 控制台中导航到组织页面,然后为包含相应账户的 OU 选择重新注册(适用于多个账户的最快选项)。有关更多信息,请参阅 向 AWS Control Tower 注册现有组织单元

  • 在 Account Factory 中更新预置的产品。有关更多信息,请参阅 使用 AWS Control Tower 更新和移动账户

    注意

    如果您有多个个人账户要更新,另请参阅使用脚本进行更新的方法:使用自动化预置和更新账户

  • 当拥有超过 1000 个账户的 OU 中发生这种类型的偏移时,能否消除偏移可能取决于转移了哪种类型的账户,如下文所述。有关更多信息,请参阅 更新您的登录区

    • 如果移动的是 Account Factory 预置账户 - 在拥有少于 1000 个账户的 OU 中,您可以通过更新 Account Factory 中的预置产品、重新注册 OU 或更新登录区来解决账户偏移问题。

      在拥有超过 1000 个账户的 OU 中,您必须 通过 AWS Control Tower 控制台或预置产品来更新每个已移动的账户,从而解决偏移问题,因为重新注册 OU 不会执行更新。有关更多信息,请参阅 使用 AWS Control Tower 更新和移动账户

    • 如果移动的是共享账户 - 您可以通过更新登录区来移动审计或日志存档账户以解决偏移。有关更多信息,请参阅 更新您的登录区

已弃用的字段名称

为了符合 AWS 指导方针ManagementAccountID,字段名称MasterAccountID已更改。旧名称已弃用。从 2022 年开始,包含已弃用字段名称的脚本已不再起作用。

删除的成员账户

当从注册的 AWS Control Tower 组织单元中删除成员账户时,可能会发生这种偏移。以下示例显示了检测到此类偏差时的偏移通知。

{ "Message" : "AWS Control Tower has detected that the member account 012345678909 has been removed from organization o-123EXAMPLE. For more information, including steps to resolve this issue, see 'https://docs.aws.amazon.com/console/controltower/remove-account'", "ManagementAccountId" : "012345678912", "OrganizationId" : "o-123EXAMPLE", "DriftType" : "ACCOUNT_REMOVED_FROM_ORGANIZATION", "RemediationStep" : "Add account to Organization and update Account Factory provisioned product", "AccountId" : "012345678909" }

解决方案

  • 当成员账户出现此类偏移时,您可以通过在 AWS Control Tower 控制台或 Account Factory 中更新账户来解决偏移问题。例如,您可以通过 Account Factory 更新向导将该账户添加到另一个已注册的 OU。有关更多信息,请参阅 使用 AWS Control Tower 更新和移动账户

  • 如果共享账户已从基础 OU 中移除,则必须通过重置登录区来解决偏移。在此偏移得到解决之前,您将无法使用 AWS Control Tower 控制台。

  • 有关解析账户和漂移的更多信息 OUs,请参阅如需在 AWS Control Tower 之外管理资源

注意

在 Service Catalog 中,表示账户的 Account Factory 预置产品不会更新以删除账户。相反,预置产品显示为 TAINTED 且处于错误状态。要清理,请转到 Service Catalog,选择预置产品,然后选择终止

托管 SCP 的计划外更新

当在控制 AWS Organizations 台中更新控件的 SCP 时,或者使用 AWS CLI 或其中一个 AWS 以编程方式更新控件的 SCP 时,可能会发生这种偏差。 SDKs以下是检测到此类偏差时的偏移通知示例。

{ "Message" : "AWS Control Tower has detected that the managed service control policy 'aws-guardrails-012345 (p-tEXAMPLE)', attached to the registered organizational unit 'Security (ou-0123-1EXAMPLE)', has been modified. For more information, including steps to resolve this issue, see 'https://docs.aws.amazon.com/console/controltower/update-scp'", "ManagementAccountId" : "012345678912", "OrganizationId" : "o-123EXAMPLE", "DriftType" : "SCP_UPDATED", "RemediationStep" : "Update Control Tower Setup", "OrganizationalUnitId" : "ou-0123-1EXAMPLE", "PolicyId" : "p-tEXAMPLE" }

解决方案

当拥有多达 1000 个账户的 OU 中出现这种偏移时,可通过以下方式解决:

当拥有超过 1000 个账户的 OU 中发生此类偏移时,可通过更新登录区来解决该问题。有关更多信息,请参阅 更新您的登录区

SCP 与托管 OU 分离

当控件的 SCP 与 AWS Control Tower 管理的 OU 分离时,可能会发生这种偏移。当您在 AWS Control Tower 控制台之外操作时,这种情况尤其常见。以下是检测到此类偏差时的偏移通知示例。

{ "Message" : "AWS Control Tower has detected that the managed service control policy 'aws-guardrails-012345 (p-tEXAMPLE)' has been detached from the registered organizational unit 'Sandbox (ou-0123-1EXAMPLE)'. For more information, including steps to resolve this issue, see 'https://docs.aws.amazon.com/console/controltower/scp-detached'", "ManagementAccountId" : "012345678912", "OrganizationId" : "o-123EXAMPLE", "DriftType" : "SCP_DETACHED_FROM_OU", "RemediationStep" : "Update Control Tower Setup", "OrganizationalUnitId" : "ou-0123-1EXAMPLE", "PolicyId" : "p-tEXAMPLE" }

解决方案

当拥有多达 1000 个账户的 OU 中出现这种偏移时,可通过以下方式解决:

  • 在 AWS Control Tower 控制台中导航到 OU,以重新注册 OU(最快的选项)。有关更多信息,请参阅 向 AWS Control Tower 注册现有组织单元

  • 更新登录区(较慢的选项)。如果偏移影响了强制性控制,则更新过程会创建一个新的服务控制策略(SCP)并将其附加到 OU 以解决偏移问题。有关如何更新登录区的信息,请参阅 更新您的登录区

当拥有超过 1000 个账户的 OU 中发生此类偏移时,可通过更新登录区来解决该问题。如果偏移影响了强制性控制,则更新过程会创建一个新的服务控制策略(SCP)并将其附加到 OU 以解决偏移问题。有关如何更新登录区的信息,请参阅 更新您的登录区

已删除基础 OU

这种偏差仅适用于 AWS Control Tower Foundational OUs,例如安全 OU。如果在 AWS Control Tower 控制台之外删除了基础 OU,则可能会发生这种情况。如果不创建这种类型的漂移,就 OUs 无法移动 Foundational,因为移动 OU 与将其删除然后将其添加到其他地方相同。当您通过更新登录区来解决偏移问题时,AWS Control Tower 会取代原始位置的基础 OU。以下示例显示了检测到此类漂移时您可能会收到的偏移通知。

{ "Message" : "AWS Control Tower has detected that the registered organizational unit 'Security (ou-0123-1EXAMPLE)' has been deleted. For more information, including steps to resolve this issue, see 'https://docs.aws.amazon.com/console/controltower/delete-ou'", "ManagementAccountId" : "012345678912", "OrganizationId" : "o-123EXAMPLE", "DriftType" : "ORGANIZATIONAL_UNIT_DELETED", "RemediationStep" : "Delete organizational unit in Control Tower", "OrganizationalUnitId" : "ou-0123-1EXAMPLE" }

解决方案

由于这种偏差 OUs 仅发生在 Foundational 中,因此解决方案是更新着陆区。删除其他类型 OUs 的,AWS Control Tower 会自动更新。

有关解析账户和漂移的更多信息 OUs,请参阅如需在 AWS Control Tower 之外管理资源

Security Hub CSPM 控制偏差

AWS Security Hub CSPM 服务托管标准:AWS Control Tower 中的控件报告偏移状态时,便会发生这种偏移。 AWS Security Hub CSPM 服务本身不会报告这些控件的偏移状态。相反,该服务会将其发现结果发送给 AWS Control Tower。

如果 AWS Control Tower 在 24 小时内没有收到来自 Security Hub CSPM 的状态更新,也可以检测到 Security Hub CSPM 控制偏差。如果未按预期收到这些发现结果,AWS Control Tower 会验证控件是否处于偏离状态。以下示例显示了检测到此类漂移时您可能会收到的偏移通知。

{ "Message" : "AWS Control Tower has detected that an AWS Security Hub control was removed in your account example-account@amazon.com <mailto:example-account@amazon.com>. The artifact deployed on the target OU and accounts does not match the expected template and configuration for the control. This mismatch indicates that configuration changes were made outside of AWS Control Tower. For more information, view Security Hub standard", "MasterAccountId" : "123456789XXX", "ManagementAccountId" : "123456789XXX", "OrganizationId" : "o-123EXAMPLE", "DriftType" : "SECURITY_HUB_CONTROL_DISABLED", "RemediationStep" : "To remediate the issue, Re-register the OU, or remove the control and enable it again. If the problem persists, contact AWS support.", "AccountId" : "7876543219XXX", "ControlId" : "SH.XXXXXXX.1", "ControlName" : "EBS snapshots should not be publicly restorable", "ApiControlIdentifier" : "arn:aws:controltower:us-east-1::control/PYBETSAGNUZB", "EnabledControlIdentifier": "arn:aws:controltower:us-east-1::enabledcontrol/<UNIQUE_ID>". "Region" : "us-east-1" }

解决方案

对于 OUs 少于 1000 个账户的账户,建议的解决方案是调用 ResetEnabledControlAPI 进行漂移控件。在控制台中,您可以为 OU 选择重新注册,这会将控件重置为原始状态。或者,对于任何 OU,您可以通过控制台或 AWS Control Tower 移除并重新启用控件 APIs,后者也会重置控件。

有关解析账户和漂移的更多信息 OUs,请参阅如需在 AWS Control Tower 之外管理资源

控制策略偏移

当使用资源控制策略 (RCPs) 或声明性策略实现的控件报告漂移状态时,就会发生这种偏差。它返回的状态为 CONTROL_INEFFECTIVE,您可以在 AWS Control Tower 控制台和偏移消息中查看该状态。此类偏移的偏移消息还包括受影响控件的 EnabledControlIdentifier

系统不会报告针对基于 SCP 的控件的此类偏移。

以下示例显示了检测到此类漂移时您可能会收到的偏移通知。

{ "Message": "AWS Control Tower detects that a policy it owns was updated unexpectedly. This mismatch indicates that configuration changes were made outside of AWS Control Tower.", "MasterAccountId": "123456789XXX", "ManagementAccountId": "123456789XXX", "OrganizationId": "o-123EXAMPLE", "DriftType": "CONTROL_INEFFECTIVE", "RemediationStep": "To remediate the issue, Reset the DRIFTED enabled control if permitted or Re-register the OU. If the problem persists, contact AWS support.", "TargetIdentifier": "arn:aws:::organizations/o-123456/ou-1234-4567", "ControlId": "CT.XXXXXXX.PV.1", "ControlName": "EBS snapshots should not be publicly restorable", "ApiControlIdentifier": "arn:aws:controlcatalog:::control/<UNIQUE_ID>", "EnabledControlIdentifier": "arn:aws:controltower:us-east-1::enabledcontrol/<UNIQUE_ID>" }

解决方案

要解决 AWS Control Tower 中启用的 RCP 控件、声明式策略控制和 Security Hub CSPM 控件的控制策略偏差,最简单的解决方法是调用 API。ResetEnabledControl

对于 OUs 账户少于 1000 个,控制台或 API 的另一种解决方案是重新注册 OU,这会将控件重置为原始状态。

对于任何单个 OU,您可以通过控制台或 AWS Control Tower 移除并重新启用控件 APIs,后者也会重置控件。

有关解析账户和漂移的更多信息 OUs,请参阅如需在 AWS Control Tower 之外管理资源

已禁用可信访问

这种偏移适用于 AWS Control Tower 登录区。当您在设置 AWS Control Tower 着陆区 AWS Organizations 后禁用对 AWS Control Tower 的可信访问时,就会发生这种情况。

禁用可信访问后,AWS Control Tower 将不再接收来自 AWS Organizations的变更事件。AWS Control Tower 依靠这些变更事件来与之保持同步 AWS Organizations。因此,AWS Control Tower 可能会错过账户的组织变更和 OUs。因此,每次更新登录区时,都务必重新注册每个 OU。

示例:偏移通知

以下是发生此类偏移时您收到的偏移通知的示例。

{ "Message" : "AWS Control Tower has detected that trusted access has been disabled in AWS Organizations. For more information, including steps to resolve this issue, see https://docs.aws.amazon.com/controltower/latest/userguide/drift.html#drift-trusted-access-disabled", "ManagementAccountId" : "012345678912", "OrganizationId" : "o-123EXAMPLE", "DriftType" : "TRUSTED_ACCESS_DISABLED", "RemediationStep" : "Reset Control Tower landing zone." }

解决方案

当 AWS Control Tower 控制台中出现此类偏移时,AWS Control Tower 会通知您。解决办法是重置 AWS Control Tower 登录区。有关更多信息,请参阅 Resolving drift

启用的基准上的继承偏移

AWS Control Tower OUs 和账户可能会出现这种偏差。

解决方案

AWS Control Tower 会在此类偏移发生时通知您。对于几乎所有继承漂移的情况,您都会收到有关已移动成员账户漂移的偏移通知。这是因为这种偏移通常发生在账户遭移动或账户注册失败时。

在控制台中查看和解决偏移

在 AWS Control Tower 控制台中,您可以在组织页面的基准状态列中查看这种继承的偏移状态。通过控制台解决的方案是重新注册 OU 或更新账户。

以编程方式查看和解决偏移

要以编程方式查看偏移状态,您可以调用 ListEnabledBaselinesAPI 来查看您的已启用基准的状态。 OUs要使用 ListEnabledBaselines API 以编程方式查看单个账户的状态,请使用 includeChildren 标志。

您可以通过调用 ResetEnabledBaseline API 以编程方式解决此类偏移。

已启用的控件上的继承偏移

AWS Control Tower OUs 和账户可能会出现这种偏差。

解决方案

AWS Control Tower 会在此类偏移发生时通知您。对于几乎所有继承漂移的情况,您都会收到有关已移动成员账户漂移的偏移通知。这是因为这种偏移通常发生在账户遭移动或账户注册失败时。

在控制台中查看和解决偏移

在 AWS Control Tower 控制台中,您可以在组织页面、已启用的控件页面和账户详细信息页面中,查看这种继承的偏移状态。通过控制台解决的方案是重新注册 OU 或更新账户。

以编程方式查看和解决偏移

要以编程方式查看已启用控件的继承偏移状态,您可以调用 ListEnabledControlsAPI 来查看已启用控件的状态。 OUs要使用 ListEnabledControls API 以编程方式查看单个账户的状态,请使用 includeChildren 标志。

您可以通过调用 ResetEnabledControl API 以编程方式解决此类继承偏移。

EventBridge 创作

注意

EventBridge 仅对 LZ4 .0 以上的客户启用。

AWS C EventBridge ontrol Tower 的格式示例

{ "version": "0", "id": "cd4d811e-ab12-322b-8255-872ce65b1bc8", "detail-type": "Drift Detected", "source": "aws.controltower", "account": "111122223333", "time": "2018-03-22T00:38:11Z", "region": "us-east-1", "resources": [], "detail": { "message" : "AWS Control Tower has detected that your member account 'account-email@amazon.com (012345678909)' has been moved from organizational unit 'Sandbox (ou-0123-eEXAMPLE)' to 'Security (ou-3210-1EXAMPLE)'. For more information, including steps to resolve this issue, see 'https://docs.aws.amazon.com/console/controltower/move-account'", "managementAccountId" : "012345678912", "organizationId" : "o-123EXAMPLE", "driftType" : "ACCOUNT_MOVED_BETWEEN_OUS", "remediationStep" : "Re-register this organizational unit (OU), or if the OU has more than 1000 accounts, you must update the provisioned product in Account Factory.", "accountId" : "012345678909", "sourceId" : "012345678909", "destinationId" : "ou-3210-1EXAMPLE" } }

创建 EventBridge 规则以接收偏移通知的指南:

为漂移通知创建 EventBridge 规则
  1. 打开 Amazon EventBridge 控制台

  2. 在导航窗格中,选择规则

  3. 选择创建规则

  4. 为规则输入名称和描述。

  5. 对于规则类型,选择具有事件模式的规则

  6. 定义事件源

    • 在 “事件源” 中,选择AWS 服务作为事件源。

    • 在 “AWS 服务名称” 中,选择 AWS Control Tower

    • 在 “事件类型” 中,选择 “检测到漂移

  7. 选择目标

    • 对于目标类型,选择AWS 服务,对于选择目标,选择一个目标,例如偏移通知主题或 Lambda 函数。在收到与规则中定义的事件模式匹配的事件时将触发目标。

    • 根据您选择的目标,提供必要的配置详细信息,例如 Lambda 函数名称或偏移通知主题 ARN。

  8. 查看并创建规则

    • 查看规则的详细信息并进行必要的更改。

    • 满意后,单击 “创建规则” 以保存新 EventBridge 规则。

创建规则后,它将开始监控指定的 AWS Control Tower 事件,并在发生偏差事件时触发选定的目标操作。