在所有标准中启用和禁用控件 - Amazon Security Hub
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

在所有标准中启用和禁用控件

Amazon Security Hub 生成已启用的控件的调查发现,并在计算安全分数时考虑所有已启用的控件。您可以选择启用和禁用所有安全标准下的控件,也可以在不同的标准中以不同的方式配置启用状态。我们建议使用前一个选项,即控件的启用状态在所有已启用的标准中保持一致。本部分介绍如何启用和禁用不同标准中的控件。要启用或禁用一个或多个特定标准中的控件,请参阅在特定标准中启用和禁用控件

如果您设置了聚合区域,则 Security Hub 控制台会显示来自所有关联区域的控件。如果某个控件在关联区域中可用,但在聚合区域中不可用,则无法在聚合区域启用或禁用该控件。

注意

启用和禁用控件的说明会因您是否使用中心配置而异。本部分介绍其中的区别。中心配置可用于集成 Security Hub 和 Amazon Organizations 的用户。我们建议使用中心配置来简化在多账户、多区域环境中启用和禁用控件的过程。

启用控件

当您在标准中启用控件时,Security Hub 会开始对该控件运行安全检查并生成控件调查发现。

Security Hub 还在总体安全分数和标准安全分数的计算中包括控件状态。如果您开启了整合的控件调查发现,那么即使您已在多个标准中启用了某个控件,也将收到一份单独的安全检查调查发现。有关更多信息,请参阅 Consolidated control findings

启用跨多个账户和区域的所有标准中的控件

要在多个账户和 Amazon Web Services 区域之间启用安全控件,必须使用中心配置

当您使用中心配置时,委托管理员可以创建 Security Hub 配置策略,这些策略可以跨已启用的标准启用指定控件。然后,您可以将配置策略与特定的账户和组织单元(OU)或根相关联。配置策略在您的主区域(也称为聚合区域)和所有关联区域中生效。

配置策略可自定义。例如,您可以选择启用一个 OU 中的所有控件,也可以选择在另一个 OU 中仅启用 Amazon Elastic Compute Cloud(EC2)控件。粒度级别取决于您的组织中安全覆盖范围的预期目标。有关创建配置策略(启用不同标准中的指定控件)的说明,请参阅创建和关联 Security Hub 配置策略

注意

委托管理员可以创建配置策略来管理除服务托管标准:Amazon Control Tower 之外的所有标准中的控件。应在 Amazon Control Tower 服务中配置该标准的控件。

如果您希望某些账户配置自己的控件而不是委托管理员来配置,则委托管理员可以将这些账户指定为自行管理。自行管理账户必须在每个区域中单独配置控件。

在单个账户和区域中启用所有标准的控件

如果您不使用中心配置或是自行管理账户,则无法使用配置策略在多个账户和区域中集中启用控件。但是,您可以使用以下步骤在单个账户和区域中启用控件。

Security Hub console
要在一个账户和区域中启用不同标准中的控件
  1. 通过以下网址打开 Amazon Security Hub 控制台:https://console.aws.amazon.com/securityhub/

  2. 从导航窗格中选择控件

  3. 选择已禁用选项卡。

  4. 选择控件旁边的选项。

  5. 选择启用控制(对于已启用的控件,此选项不会出现)。

  6. 在您要在其中启用控件的每个区域中重复这些操作。

Security Hub API
要在一个账户和区域中启用不同标准中的控件
  1. 调用 ListStandardsControlAssociations API。提供安全控件 ID。

    请求示例:

    { "SecurityControlId": "IAM.1" }
  2. 调用 BatchUpdateStandardsControlAssociations API。提供所有未启用控件的标准的 Amazon 资源名称(ARN)。要获取标准 ARN,请运行 DescribeStandards

  3. AssociationStatus 参数设置为等于 ENABLED。如果您对已启用的控件执行以下步骤,则该 API 将返回 HTTP 状态码 200 响应。

    请求示例:

    { "StandardsControlAssociationUpdates": [{"SecurityControlId": "IAM.1", "StandardsArn": "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0", "AssociationStatus": "ENABLED"}, {"SecurityControlId": "IAM.1", "StandardsArn": "arn:aws:securityhub:::standards/aws-foundational-security-best-practices/v/1.0.0", "AssociationStatus": "ENABLED"}] }
  4. 在您要在其中启用控件的每个区域中重复这些操作。

Amazon CLI
要在一个账户和区域中启用不同标准中的控件
  1. 运行 list-standards-control-associations 命令。提供安全控件 ID。

    aws securityhub --region us-east-1 list-standards-control-associations --security-control-id CloudTrail.1
  2. 运行 batch-update-standards-control-associations 命令。提供所有未启用控件的标准的 Amazon 资源名称(ARN)。要获取标准 ARN,请运行 describe-standards 命令。

  3. AssociationStatus 参数设置为等于 ENABLED。如果您对已启用的控件执行这些步骤,该命令将返回 HTTP 状态代码 200 响应。

    aws securityhub --region us-east-1 batch-update-standards-control-associations --standards-control-association-updates '[{"SecurityControlId": "CloudTrail.1", "StandardsArn": "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0", "AssociationStatus": "ENABLED"}, {"SecurityControlId": "CloudTrail.1", "StandardsArn": "arn:aws:securityhub:::standards/cis-aws-foundations-benchmark/v/1.4.0", "AssociationStatus": "ENABLED"}]'
  4. 在您要在其中启用控件的每个区域中重复这些操作。

自动启用已启用标准中的新控件

Security Hub 会定期发布新的安全控件,并将其添加到一个或多个标准中。您可以选择是否在启用的标准中自动启用新控件。

注意

我们建议使用中心配置来自动启用新控件。如果您的配置策略包含要禁用的控件列表(以编程方式说明的话,反映了 DisabledSecurityControlIdentifiers 参数),则 Security Hub 会自动启用所有其他不同标准中的控件,包括新发布的控件。如果您的策略包含要启用的控件列表(反映了 EnabledSecurityControlIdentifiers 参数),则 Security Hub 会自动禁用所有其他不同标准中的控件,包括新发布的控件。有关更多信息,请参阅 Security Hub 配置策略的工作原理

选择首选访问方法,然后按照以下步骤自动启用启用的标准中的新控件。以下说明仅在您不使用中心配置时适用。

Security Hub console
要自动启用新控件
  1. 通过以下网址打开 Amazon Security Hub 控制台:https://console.aws.amazon.com/securityhub/

  2. 在导航窗格中,选择设置,然后选择常规选项卡。

  3. 控件下,选择编辑

  4. 在已启用的标准中开启自动启用新控件

  5. 选择保存

Security Hub API
要自动启用新控件
  1. 调用 UpdateSecurityHubConfiguration API。

  2. 要自动为启用的标准启用新控件,将 AutoEnableControls 设置为 true。如果您不想自动启用新控件,请设置 AutoEnableControls 为 false。

Amazon CLI
要自动启用新控件
  1. 运行 update-security-hub-configuration 命令。

  2. 要自动为启用的标准启用新控件,请指定 --auto-enable-controls。如果您不想自动启用新控件,请指定 --no-auto-enable-controls

    aws securityhub update-security-hub-configuration --auto-enable-controls | --no-auto-enable-controls

    命令示例

    aws securityhub update-security-hub-configuration --auto-enable-controls

禁用控件

当您禁用所有标准中的控件时,会发生以下情况:

  • 不再执行控件的安全检查。

  • 不会为该控制生成任何其他结果。

  • 现有调查发现将在 3-5 天后自动存档(请注意,这是尽最大努力的结果)。

  • Security Hub 创建的任何相关 Amazon Config 规则将被删除。

您可以仅在一个或多个特定标准中禁用该控件,而不是禁用所有标准中的控件。如果您这样做,Security Hub 将不会对您禁用该控件的标准进行安全检查,因此它不会影响这些标准的安全分数。但是,如果在其他标准中启用了该控件,Security Hub 将保留 Amazon Config 规则并继续对该控件进行安全检查。这可能会影响您的汇总安全分数。有关在特定标准中配置控件的说明,请参阅在特定标准中启用和禁用控件

为了减少调查发现噪音,禁用与环境无关的控件可能会很有用。有关禁用哪些控件的建议,请参阅您可能希望禁用的 Security Hub 控件

禁用标准时,所有适用于该标准的控件都将被禁用(但是,这些控件在其他标准中可能仍处于启用状态)。有关禁用标准的信息,请参阅 启用和禁用安全标准

当您禁用标准时,Security Hub 不会跟踪哪些控件被禁用。如果您随后再次启用该标准,则所有适用于该标准的控件都会自动启用。此外,禁用控件是一次性操作。假设您禁用一个控件,然后启用一个先前已禁用的标准。如果标准包含该控件,它将在该标准中启用。当您在 Security Hub 中启用标准时,适用于该标准的所有控件都会自动启用。

在多个账户和区域中禁用所有标准中的控件

要禁用跨多个账户和 Amazon Web Services 区域的安全控件,必须使用中心配置

使用中心配置时,委托管理员可以创建 Security Hub 配置策略,以禁用已启用的标准中的指定控件。然后,您可以将配置策略与特定账户、OU 或根相关联。配置策略在您的主区域(也称为聚合区域)和所有关联区域中生效。

配置策略可自定义。例如,您可以选择禁用一个 OU 中的所有 Amazon CloudTrail 控件,也可以选择禁用另一个 OU 中的所有 IAM 控件。粒度级别取决于您的组织中安全覆盖范围的预期目标。有关创建用于禁用不同标准中指定控件的配置策略的说明,请参阅创建和关联 Security Hub 配置策略

注意

委托管理员可以创建配置策略来管理除服务托管标准:Amazon Control Tower 之外的所有标准中的控件。应在 Amazon Control Tower 服务中配置该标准的控件。

如果您希望某些账户配置自己的控件而不是委托管理员来配置,则委托管理员可以将这些账户指定为自行管理。自行管理账户必须在每个区域中单独配置控件。

在单个账户和区域中禁用所有标准中的控件

如果您未使用中心配置,或是自行管理账户,则无法使用配置策略在多个账户和区域中集中禁用控件。但是,您可以使用以下步骤来禁用单个账户和区域中的控件。

Security Hub console
要在一个账户和区域中禁用不同标准中的控件
  1. 通过以下网址打开 Amazon Security Hub 控制台:https://console.aws.amazon.com/securityhub/

  2. 从导航窗格中选择控件

  3. 选择控件旁边的选项。

  4. 选择禁用控制(对于已禁用的控件,此选项不会出现)。

  5. 选择禁用控件的原因,然后选择禁用进行确认。

  6. 在您要在其中禁用控件的每个区域中重复这些操作。

Security Hub API
要在一个账户和区域中禁用不同标准中的控件
  1. 调用 ListStandardsControlAssociations API。提供安全控件 ID。

    请求示例:

    { "SecurityControlId": "IAM.1" }
  2. 调用 BatchUpdateStandardsControlAssociations API。提供启用该控件的任何标准的 ARN。要获取标准 ARN,请运行 DescribeStandards

  3. AssociationStatus 参数设置为等于 DISABLED。如果您对已禁用的控件执行以下步骤,API 将返回 HTTP 状态代码 200 响应。

    请求示例:

    { "StandardsControlAssociationUpdates": [{"SecurityControlId": "IAM.1", "StandardsArn": "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0", "AssociationStatus": "DISABLED", "UpdatedReason": "Not applicable to environment"}, {"SecurityControlId": "IAM.1", "StandardsArn": "arn:aws:securityhub:::standards/aws-foundational-security-best-practices/v/1.0.0", "AssociationStatus": "DISABLED", "UpdatedReason": "Not applicable to environment"}}] }
  4. 在您要在其中禁用控件的每个区域中重复这些操作。

Amazon CLI
要在一个账户和区域中禁用不同标准中的控件
  1. 运行 list-standards-control-associations 命令。提供安全控件 ID。

    aws securityhub --region us-east-1 list-standards-control-associations --security-control-id CloudTrail.1
  2. 运行 batch-update-standards-control-associations 命令。提供启用该控件的任何标准的 ARN。要获取标准 ARN,请运行 describe-standards 命令。

  3. AssociationStatus 参数设置为等于 DISABLED。如果您对已禁用的控件执行以下步骤,该命令将返回 HTTP 状态代码 200 响应。

    aws securityhub --region us-east-1 batch-update-standards-control-associations --standards-control-association-updates '[{"SecurityControlId": "CloudTrail.1", "StandardsArn": "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0", "AssociationStatus": "DISABLED", "UpdatedReason": "Not applicable to environment"}, {"SecurityControlId": "CloudTrail.1", "StandardsArn": "arn:aws:securityhub:::standards/cis-aws-foundations-benchmark/v/1.4.0", "AssociationStatus": "DISABLED", "UpdatedReason": "Not applicable to environment"}]'
  4. 在您要在其中禁用控件的每个区域中重复这些操作。