按照特定标准配置控件 - AWS Security Hub

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

按照特定标准配置控件

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

注意

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

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

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

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

启用特定标准中的控件

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

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

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

Security Hub console
要启用特定标准中的控件
  1. 打开 AWS Security Hub 控制台位于https://console.aws.amazon.com/securityhub/

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

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

  4. 选择控件。

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

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

    请求示例:

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

    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 中配置标准

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

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

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

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

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

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

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

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

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

Security Hub console
要禁用特定标准中的控件
  1. 打开 AWS Security Hub 控制台位于https://console.aws.amazon.com/securityhub/

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

  3. 选择控件。

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

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

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

    请求示例:

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

    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"}]'