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

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

在特定标准中启用和禁用控件

当您在中启用标准时 Amazon Security Hub,适用于该标准的所有控件都会自动启用该标准中的所有控件(服务管理标准除外)。然后,您可以禁用并重新启用标准中的特定控件。但是,我们建议您在所有已启用的标准中调整控件的启用状态。

注意

如果您使用 Security Hub 中心配置,则委托管理员可以在所有已启用的标准下启用和禁用针对组织账户的控件。我们建议采用这种方法,以便控件的启用状态在不同标准之间保持一致。但是,委托管理员可以将账户指定为自行管理,这意味着这些账户能够自行启用和禁用特定标准中的控件。有关更多信息,请参阅 Security Hub 中的中心配置

标准的详细信息页面包含该标准的适用控件列表,以及有关该标准当前启用和禁用哪些控件的信息。

在标准详细信息页面上,您还可以启用和禁用特定标准中的控件。您必须在每个 Amazon Web Services 账户 和中分别启用和禁用控件 Amazon Web Services 区域。当您启用或禁用控件时,它只会影响当前账户和区域。

您可以使用 Security Hub 控制台、Security Hub API 或在每个区域启用和禁用控件 Amazon CLI。如果您设置了聚合区域,您将看到来自所有关联区域的控件。如果某个控件在关联区域中可用,但在聚合区域中不可用,则无法在聚合区域启用或禁用该控件。有关多账户和多区域控件禁用脚本,请参阅在多账户环境中禁用 Security Hub 控件

启用特定标准中的控件

要启用标准中的控件,您必须首先启用至少一个该控件适用的标准。有关启用标准的更多信息,请参阅 启用和禁用安全标准。当您在标准中启用控件时, Amazon Security Hub 会开始生成该控件的结果。Security Hub 还在总体安全分数和标准安全分数的计算中包括控件状态。即使您在多个标准中启用了控件,但如果您开启整合的控件调查发现,您也将收到一个各类标准的安全检查调查发现。有关更多信息,请参阅 Consolidated control findings

要启用标准中的控件,该控件必须在您当前的区域中可用。有关更多信息,请参阅根据区域的控件可用性

请按照以下步骤启用特定标准中的 Security Hub 控件。除了以下步骤之外,您还可以使用 UpdateStandardsControl API 操作来启用特定标准中的控件。有关在所有标准中启用控件的说明,请参阅 在单个账户和区域中启用所有标准的控件

Security Hub console
要启用特定标准中的控件
  1. 打开 Amazon Security Hub 控制台,网址为 https://console.aws.amazon.com/securityhub/

  2. 从导航窗格中选择安全标准

  3. 对于相关标准,选择查看结果

  4. 选择控件。

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

Security Hub API
要启用特定标准中的控件
  1. 运行 ListSecurityControlDefinitions 并提供标准 ARN 以获取特定标准的可用控件列表。要获取标准 ARN,请运行 DescribeStandards。此 API 返回与标准无关的安全控件 ID,而不是特定于标准的控件 ID。

    请求示例:

    { "StandardsArn": "arn:aws:securityhub:::standards/aws-foundational-security-best-practices/v/1.0.0" }
  2. 运行 ListStandardsControlAssociations,并提供特定的控件 ID 以返回每个标准中控件的当前启用状态。

    请求示例:

    { "SecurityControlId": "IAM.1" }
  3. 运行 BatchUpdateStandardsControlAssociations。提供您想要在其中启用控件的标准的 ARN。

  4. AssociationStatus 参数设置为等于 ENABLED

    请求示例:

    { "StandardsControlAssociationUpdates": [{"SecurityControlId": "IAM.1", "StandardsArn": "arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0", "AssociationStatus": "ENABLED"}] }
Amazon CLI
要启用特定标准中的控件
  1. 运行 list-security-control-definitions 命令并提供标准 ARN 以获取特定标准的可用控件列表。要获取标准 ARN,请运行 describe-standards。此命令返回与标准无关的安全控件 ID,而不是特定于标准的控件 ID。

    aws securityhub --region us-east-1 list-security-control-definitions --standards-arn "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0"
  2. 运行 list-standards-control-associations 命令,并提供特定的控件 ID 以返回每个标准中控件的当前启用状态。

    aws securityhub --region us-east-1 list-standards-control-associations --security-control-id CloudTrail.1
  3. 运行 batch-update-standards-control-associations 命令。提供您想要在其中启用控件的标准的 ARN。

  4. AssociationStatus 参数设置为等于 ENABLED

    aws securityhub --region us-east-1 batch-update-standards-control-associations --standards-control-association-updates '[{"SecurityControlId": "CloudTrail.1", "StandardsArn": "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", "AssociationStatus": "ENABLED"}]'

禁用特定标准中的控件

当您在标准中禁用某个控件时,Security Hub 将停止为该控件生成调查发现。控件状态不再用于计算标准的安全评分。

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

当您通过禁用某个控件所适用的标准来禁用该控件时,会发生以下情况:

  • 不再针对该标准执行控件的安全检查。这意味着控件状态不会影响标准安全分数(如果在其他标准中启用了控件,Security Hub 将继续运行控件的安全检查)。

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

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

  • Security Hub 创建的相关 Amazon Config 规则已删除。

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

您可以仅在一个或多个特定标准中禁用该控件,而不是通过禁用该控件适用的标准来禁用该控件。

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

按照以下步骤禁用特定标准中的控件。除了以下步骤之外,您还可以使用 UpdateStandardsControl API 操作来禁用特定标准中的控件。有关在所有标准中禁用控件的说明,请参阅 在所有标准中启用和禁用控件

Security Hub console
要禁用特定标准中的控件
  1. 打开 Amazon Security Hub 控制台,网址为 https://console.aws.amazon.com/securityhub/

  2. 从导航窗格中选择安全标准。对于相关标准,选择查看结果

  3. 选择控件。

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

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

Security Hub API
要禁用特定标准中的控件
  1. 运行 ListSecurityControlDefinitions 并提供标准 ARN 以获取特定标准的可用控件列表。要获取标准 ARN,请运行 DescribeStandards。此 API 返回与标准无关的安全控件 ID,而不是特定于标准的控件 ID。

    请求示例:

    { "StandardsArn": "arn:aws:securityhub:::standards/aws-foundational-security-best-practices/v/1.0.0" }
  2. 运行 ListStandardsControlAssociations,并提供特定的控件 ID 以返回每个标准中控件的当前启用状态。

    请求示例:

    { "SecurityControlId": "IAM.1" }
  3. 运行 BatchUpdateStandardsControlAssociations。提供您要在其中禁用控件的标准的 ARN。

  4. 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"}] }
Amazon CLI
要禁用特定标准中的控件
  1. 运行 list-security-control-definitions 命令并提供标准 ARN 以获取特定标准的可用控件列表。要获取标准 ARN,请运行 describe-standards。此命令返回与标准无关的安全控件 ID,而不是特定于标准的控件 ID。

    aws securityhub --region us-east-1 list-security-control-definitions --standards-arn "arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0"
  2. 运行 list-standards-control-associations 命令,并提供特定的控件 ID 以返回每个标准中控件的当前启用状态。

    aws securityhub --region us-east-1 list-standards-control-associations --security-control-id CloudTrail.1
  3. 运行 batch-update-standards-control-associations 命令。提供您要在其中禁用控件的标准的 ARN。

  4. 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:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0", "AssociationStatus": "DISABLED", "UpdatedReason": "Not applicable to environment"}]'