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

为了减少调查发现噪音,禁用与环境无关的控件可能会很有用。有关禁用哪些控件的建议,请参阅您可能希望禁用的 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. 在您要在其中禁用控件的每个区域中重复这些操作。