

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

# 了解 Security Hub CSPM 中的自动化规则
<a name="automation-rules"></a>

您可以使用自动化规则自动更新 Security Hub CSP AWS M 中的搜索结果。提取调查发现时，Security Hub CSPM 可以应用各种规则操作，例如隐藏调查发现、更改其严重性以及添加注释。此类规则操作会修改符合您指定的条件的调查发现。

自动化规则用例的示例如下：
+ 如果调查发现的资源 ID 指的是业务关键型资源，则将调查发现的严重性提升为 `CRITICAL`。
+ 如果调查发现影响特定生产账户中的资源，则将调查发现的严重性从 `HIGH` 提升到 `CRITICAL`。
+ 分配具有 `SUPPRESSED` 工作流状态 `INFORMATIONAL` 严重性的特定调查发现。

您只能通过 Security Hub CSPM 管理员账户创建和管理自动化规则。

规则适用于新的和更新后的调查发现。您可以从头开始创建自定义规则，也可以使用 Security Hub CSPM 提供的规则模板。您也可以从模板开始创建规则，然后根据需要对其进行修改。

## 定义规则条件和规则操作
<a name="automation-rules-how-it-works"></a>

通过 Security Hub CSPM 管理员账户，您可以通过定义一个或多个规则*条件*以及一个或多个规则*操作*来创建自动化规则。当调查发现与定义的条件相匹配时，Security Hub CSPM 会对其应用规则操作。有关可用条件和操作的更多信息，请参阅 [可用的规则条件和规则操作](#automation-rules-criteria-actions)。

对于每个管理员账户，Security Hub CSPM 目前最多支持 100 条自动化规则。

Security Hub CSPM 管理员账户还可以编辑、查看和删除自动化规则。规则适用于管理员账户及其所有成员账户中的匹配调查发现。通过提供成员帐户 IDs 作为规则标准，Security Hub CSPM 管理员还可以使用自动化规则来更新或隐藏特定成员帐户中的搜索结果。

自动化规则仅适用于其创建时 AWS 区域 所在的。要在多个区域中应用规则，管理员必须在每个区域中创建规则。这可以通过 Security Hub CSPM 控制台、Security Hub CSPM API 或 [AWS CloudFormation](creating-resources-with-cloudformation.md) 完成。您也可以使用[多区域部署脚本](https://github.com/awslabs/aws-securityhub-multiaccount-scripts/blob/master/automation_rules)。

## 可用的规则条件和规则操作
<a name="automation-rules-criteria-actions"></a>

目前支持以下 AWS 安全查找格式 (ASFF) 字段作为自动化规则的标准：


| 规则标准 | 筛选条件运算符 | 字段类型 | 
| --- | --- | --- | 
| AwsAccountId  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| AwsAccountName  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| CompanyName  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ComplianceAssociatedStandardsId  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ComplianceSecurityControlId  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ComplianceStatus  | Is, Is Not  | 选择：[FAILED、NOT\$1AVAILABLE、PASSED、WARNING]  | 
| Confidence  | Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal)  | 数字  | 
| CreatedAt  | Start, End, DateRange  | 日期（格式为 2022-12-01T21:47:39.269Z）  | 
| Criticality  | Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal)  | 数字  | 
| Description  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| FirstObservedAt  | Start, End, DateRange  | 日期（格式为 2022-12-01T21:47:39.269Z）  | 
| GeneratorId  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| Id  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| LastObservedAt  | Start, End, DateRange  | 日期（格式为 2022-12-01T21:47:39.269Z）  | 
| NoteText  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| NoteUpdatedAt  | Start, End, DateRange  | 日期（格式为 2022-12-01T21:47:39.269Z）  | 
| NoteUpdatedBy  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ProductArn  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ProductName  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| RecordState  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| RelatedFindingsId  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| RelatedFindingsProductArn  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ResourceApplicationArn  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ResourceApplicationName  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ResourceDetailsOther  | CONTAINS, EQUALS, NOT\$1CONTAINS, NOT\$1EQUALS  | Map  | 
| ResourceId  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ResourcePartition  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ResourceRegion  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| ResourceTags  | CONTAINS, EQUALS, NOT\$1CONTAINS, NOT\$1EQUALS  | Map  | 
| ResourceType  | Is, Is Not  | 选择（请参阅 ASFF 支持的[资源](https://docs.aws.amazon.com/securityhub/latest/userguide/asff-resources.html)）  | 
| SeverityLabel  | Is, Is Not  | 选择：[CRITICAL、HIGH、MEDIUM、LOW、INFORMATIONAL]  | 
| SourceUrl  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| Title  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| Type  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| UpdatedAt  | Start, End, DateRange  | 日期（格式为 2022-12-01T21:47:39.269Z）  | 
| UserDefinedFields  | CONTAINS, EQUALS, NOT\$1CONTAINS, NOT\$1EQUALS  | Map  | 
| VerificationState  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 字符串  | 
| WorkflowStatus  | Is, Is Not  | 选择：[NEW、NOTIFIED、RESOLVED、SUPPRESSED]  | 

对于标记为字符串字段的条件，在同一字段上使用不同的筛选运算符会影响评估逻辑。有关更多信息，请参阅《AWS Security Hub CSPM API 参考》**中的 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_StringFilter.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_StringFilter.html)。

每个标准都支持可用于筛选匹配调查发现的最大值数。有关每个标准的限制，请参阅《AWS Security Hub CSPM API 参考》**中的 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_AutomationRulesFindingFilters.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_AutomationRulesFindingFilters.html)。

目前支持以下 ASFF 字段作为自动化规则的操作：
+ `Confidence`
+ `Criticality`
+ `Note`
+ `RelatedFindings`
+ `Severity`
+ `Types`
+ `UserDefinedFields`
+ `VerificationState`
+ `Workflow`

有关特定 ASFF 字段的更多信息，请参阅 [AWS 安全调查发现格式（ASFF）语法](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-findings-format.html)。

**提示**  
 如果您希望 Security Hub CSPM 停止为特定控件生成调查发现，我们建议您禁用该控件，而不是使用自动化规则。当您禁用某个控件时，Security Hub CSPM 会停止对其运行安全检查，并停止为其生成调查发现，因此您不会为该控件支付费用。对于符合定义条件的调查发现，我们建议使用自动化规则来更改特定 ASFF 字段的值。有关禁用控件的详细信息，请参阅 [在 Security Hub CSPM 中禁用控件](disable-controls-overview.md)。

## 自动化规则评估的调查发现
<a name="automation-rules-findings"></a>

在您创建规则*后*，自动化规则会评估 Security Hub CSPM 通过 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchImportFindings.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchImportFindings.html) 操作生成或提取的新调查发现和更新的调查发现。Security Hub CSPM 每 12 至 24 小时或在关联资源状态发生变化时更新控件调查发现。有关更多信息，请参阅 [有关运行安全检查的计划](securityhub-standards-schedule.md)。

自动化规则会评估提供者提供的原始调查发现。提供者可以使用 Security Hub CSPM API 的 `BatchImportFindings` 操作来提供新的调查发现并更新现有调查发现。如果原始调查发现中不存在以下字段，Security Hub CSPM 会自动填充这些字段，然后在自动化规则的评估中使用填充的值：
+ `AwsAccountName`
+ `CompanyName`
+ `ProductName`
+ `Resource.Tags`
+ `Workflow.Status`

创建了一个或多个自动化规则后，如果您使用 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateFindings.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateFindings.html) 操作更新调查发现字段，则不会触发这些规则。如果您创建的自动化规则和进行的 `BatchUpdateFindings` 更新都会影响同一个调查发现字段，则上次更新会设置该字段的值。请参见以下示例：

1. 您可以使用 `BatchUpdateFindings` 操作将调查发现 `Workflow.Status` 字段的值从 `NEW` 更改为 `NOTIFIED`。

1. 如果您调用了 `GetFindings`，则 `Workflow.Status` 字段现在的值为 `NOTIFIED`。

1. 您创建了一条自动化规则，该规则会将调查发现的 `Workflow.Status` 字段从 `NEW` 更改为 `SUPPRESSED`。（请记住，规则会忽略使用 `BatchUpdateFindings` 操作所做的更新。）

1. 调查发现提供者使用 `BatchImportFindings` 操作来更新调查发现，并将调查发现 `Workflow.Status` 字段的值更改为 `NEW`。

1. 如果您调用了 `GetFindings`，则 `Workflow.Status` 字段现在的值为 `SUPPRESSED`。这是因为应用了自动化规则，而该规则是针对调查发现采取的最后一个操作。

在 Security Hub CSPM 控制台中创建或编辑规则时，控制台会显示与规则条件匹配的调查发现的测试版。虽然自动化规则会评估调查发现提供者发送的原始调查发现，但控制台测试版会反映最终状态的调查发现，就像它们在响应 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_GetFindings.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_GetFindings.html) 操作时所显示的那样（即在对调查发现应用规则操作或其他更新之后）。

## 规则顺序的工作原理
<a name="rule-order"></a>

创建自动化规则时，您可以为每条规则分配一个顺序。这决定了 Security Hub CSPM 应用您的自动化规则的顺序，当多个规则与同一个调查发现或调查发现字段相关时，这变得非常重要。

当多个规则操作与同一个调查发现或调查发现字段相关时，规则顺序数值最高的规则将应用于最后并产生最终效果。

在 Security Hub CSPM 控制台中创建规则时，Security Hub CSPM 会根据规则的创建顺序自动分配规则顺序。最近创建的规则具有最低的规则顺序数值，因此首先适用。Security Hub CSPM 按升序应用后续规则。

当你通过 Security Hub CSPM API 创建规则时 AWS CLI，Security Hub CSPM 会首先应用数值最低的规则。`RuleOrder`然后它按升序应用后续规则。如果多个调查发现具有相同的 `RuleOrder`，则 Security Hub CSPM 会先为 `UpdatedAt` 字段应用具有较早值的规则（也就是说，最近编辑的规则应用在最后）。

您可以随时修改规则顺序。

**规则顺序示例**：

**规则 A（规则顺序为 `1`）**：
+ 规则 A 条件
  + `ProductName` = `Security Hub CSPM`
  + `Resources.Type` 是 `S3 Bucket`
  + `Compliance.Status` = `FAILED`
  + `RecordState` 是 `NEW`
  + `Workflow.Status` = `ACTIVE`
+ 规则 A 操作
  + `Confidence` 更新为 `95`
  + `Severity` 更新为 `CRITICAL`

**规则 B（规则顺序为 `2`）**：
+ 规则 B 条件
  + `AwsAccountId` = `123456789012`
+ 规则 B 操作
  + `Severity` 更新为 `INFORMATIONAL`

规则 A 操作首先应用于符合规则 A 条件的 Security Hub CSPM 调查发现。接下来，规则 B 操作将应用于具有指定账户 ID 的 Security Hub CSPM 调查发现。在此示例中，由于规则 B 最后适用，因此调查发现中来自指定账户 ID 的 `Severity` 的最终值为 `INFORMATIONAL`。根据规则 A 操作，在匹配调查发现中 `Confidence` 的最终值为 `95`。

# 创建自动化规则
<a name="create-automation-rules"></a>

自动化规则可用于自动更新 Security Hub CSP AWS M 中的搜索结果。您可以从头开始创建自动化规则，也可以在 Security Hub CSPM 控制台中使用预先填充的规则模板。有关自动化规则的工作原理的背景信息，请参阅[了解 Security Hub CSPM 中的自动化规则](automation-rules.md)。

您一次只能创建一条自动化规则。要创建多个自动化规则，请多次遵循控制台过程，或者使用所需的参数多次调用 API 或命令。

您必须在您希望规则应用于调查发现的每个区域和账户中创建自动化规则。

当您在 Security Hub CSPM 控制台中创建自动化规则时，Security Hub CSPM 会显示您的规则所适用的调查发现测试版。如果您的规则条件包含 CONTAINS 或 NOT\$1CONTAINS 筛选条件，则当前不支持测试版。您可以为映射和字符串字段类型选择这些筛选条件。

**重要**  
AWS 建议您不要在规则名称、描述或其他字段中包含个人身份、机密或敏感信息。

## 创建自定义自动化规则
<a name="create-automation-rules-custom"></a>

选择您的首选方式，完成以下步骤以创建自定义自动化规则。

------
#### [ Console ]

**创建自定义自动化规则（控制台）**

1. 使用 Security Hub CSPM 管理员的凭据，打开 Sec AWS urity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

1. 在导航窗格中，选择 **自动化**。

1. 选择 **Create rule**（创建规则）。对于**规则类型**，选择**创建自定义规则**。

1. 在**规则**部分，为您的规则提供唯一的规则名称和描述。

1. 对于**条件**，使用**键**、**运算符**和**值**下拉菜单来指定您的规则条件。您必须至少指定一项规则标准。

   如果您的选定条件支持，则控制台会显示符合您条件的调查发现测试版。

1. 对于**自动操作**，请使用下拉菜单，指定在调查发现符合规则条件时要更新的调查发现字段。您必须指定至少一个规则操作。

1. 对于**规则状态**，请选择在规则创建后将其设置为**启用**或是**禁用**。

1. （可选）展开**附加设置**部分。如果您希望此规则成为应用于符合规则条件调查发现的最后一条规则，请选择**忽略符合这些条件的调查发现后续规则**。

1. （可选）对于**标签**，请以键-值对的形式添加标签以帮助您轻松识别规则。

1. 选择 **Create rule**（创建规则）。

------
#### [ API ]

**创建自定义自动化规则（API）**

1. 从 Security Hub CSPM 管理员账户运行 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_CreateAutomationRule.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_CreateAutomationRule.html)。此 API 使用特定的 Amazon 资源名称（ARN）创建规则。

1. 提供规则的名称和描述。

1. 如果您希望此规则成为应用于符合规则条件调查发现的最后一条规则，请将 `IsTerminal` 参数设置为 `true`。

1. 对于 `RuleOrder` 参数，请提供规则的顺序。Security Hub CSPM 首先对此参数应用数值较小的规则。

1. 对于 `RuleStatus` 参数，请指定是否希望 Security Hub CSPM 启用该规则，并在创建后开始将规则应用于调查发现。如果未指定值，则默认值为 `ENABLED`。值为 `DISABLED` 表示规则在创建后暂停。

1. 对于 `Criteria` 参数，请提供您希望 Security Hub CSPM 用来筛选调查发现的条件。规则操作将适用于符合条件的调查发现。有关支持的标准的列表，请参阅 [可用的规则条件和规则操作](automation-rules.md#automation-rules-criteria-actions)。

1. 对于 `Actions` 参数，请提供您希望 Security Hub CSPM 在调查发现与您定义的条件相匹配时采取的操作。有关受支持操作的列表，请参阅 [可用的规则条件和规则操作](automation-rules.md#automation-rules-criteria-actions)。

以下示例 AWS CLI 命令创建了一条自动化规则，用于更新工作流程状态和匹配结果的注释。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securityhub create-automation-rule \
--actions '[{
 "Type": "FINDING_FIELDS_UPDATE",
 "FindingFieldsUpdate": {
 "Severity": {
 "Label": "HIGH"
 },
 "Note": {
 "Text": "Known issue that is a risk. Updated by automation rules",
 "UpdatedBy": "sechub-automation"
 }
 }
 }]' \
--criteria '{
 "SeverityLabel": [{
 "Value": "INFORMATIONAL",
 "Comparison": "EQUALS"
 }]
 }' \
--description "A sample rule" \
--no-is-terminal \
--rule-name "sample rule" \
--rule-order 1 \
--rule-status "ENABLED" \
--region us-east-1
```

------

## 使用模版创建自动化规则（仅限控制台）
<a name="create-automation-rules-template"></a>

规则模板反映了自动化规则的常见用例。目前，只有 Security Hub CSPM 控制台支持规则模板。完成以下步骤以在控制台中的模板创建自动化规则。

**使用模板创建自动化规则（控制台）**

1. 使用 Security Hub CSPM 管理员的凭据，打开 Sec AWS urity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

1. 在导航窗格中，选择 **自动化**。

1. 选择 **Create rule**（创建规则）。在**规则类型**中，选择**从模板创建规则**。

1. 从下拉菜单中选择规则模板。

1. （可选）如果您的用例有需要，请修改**规则**、**条件**和**自动操作**部分。您必须指定至少一个规则条件和一个规则操作。

   如果您的选定条件支持，则控制台会显示符合您条件的调查发现测试版。

1. 对于**规则状态**，请选择在规则创建后将其设置为**启用**或是**禁用**。

1. （可选）展开**附加设置**部分。如果您希望此规则成为应用于符合规则条件调查发现的最后一条规则，请选择**忽略符合这些条件的调查发现后续规则**。

1. （可选）对于**标签**，请以键-值对的形式添加标签以帮助您轻松识别规则。

1. 选择 **Create rule**（创建规则）。

# 查看自动化规则
<a name="view-automation-rules"></a>

自动化规则可用于自动更新 Security Hub CSP AWS M 中的搜索结果。有关自动化规则的工作原理的背景信息，请参阅[了解 Security Hub CSPM 中的自动化规则](automation-rules.md)。

选择您的首选方法，然后按照步骤查看您的现有自动化规则和每条规则的详细信息。

要查看自动化规则改变您的调查发现的历史记录，请参阅 [在 Security Hub CSPM 中查看调查发现详细信息和历史记录](securityhub-findings-viewing.md)。

------
#### [ Console ]

**查看自动化规则（控制台）**

1. 使用 Security Hub CSPM 管理员的凭据，打开 Sec AWS urity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

1. 在导航窗格中，选择 **自动化**。

1. 选择规则名称。或者，选择一条规则。

1. 选择**操作**和**视图**。

------
#### [ API ]

**查看自动化规则（API）**

1. 要查看您的账户的自动化规则，请从 Security Hub CSPM 管理员账户运行 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_ListAutomationRules.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_ListAutomationRules.html)。此 API 会返回规则 ARNs 和其他规则的元数据。此 API 不需要输入参数，但您可以选择提供 `MaxResults` 以限制结果数量和 `NextToken` 作为分页参数。`NextToken` 的初始值应为 `NULL`。

1. 有关其他规则详细信息，包括规则的条件和操作，请从 Security Hub CSPM 管理员账户运行 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchGetAutomationRules.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchGetAutomationRules.html)。提供您想要详细了解的自动化规则。 ARNs 

   以下示例将检索指定自动化规则的详细信息。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

   ```
   $ aws securityhub batch-get-automation-rules \
   --automation-rules-arns '["arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222"]' \
   --region us-east-1
   ```

------

# 编辑自动化规则
<a name="edit-automation-rules"></a>

自动化规则可用于自动更新 Security Hub CSP AWS M 中的搜索结果。有关自动化规则的工作原理的背景信息，请参阅[了解 Security Hub CSPM 中的自动化规则](automation-rules.md)。

创建自动化规则后，委派的 Security Hub CSPM 管理员可以编辑该规则。当您编辑自动化规则时，更改将应用于规则编辑后 Security Hub CSPM 生成或提取的新增或更新后的调查发现。

选择您的首选方式，按照步骤编辑自动化规则的内容。您只需一个请求即可编辑一条或多条规则。有关编辑规则顺序的说明，请参阅 [编辑自动化规则顺序](edit-rule-order.md)。

------
#### [ Console ]

**编辑自动化规则（控制台）**

1. 使用 Security Hub CSPM 管理员的凭据，打开 Sec AWS urity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

1. 在导航窗格中，选择 **自动化**。

1. 选择您要编辑的规则。选择**操作**和**编辑**。

1. 根据需要更改规则，然后选择**保存更改**。

------
#### [ API ]

**编辑自动化规则（API）**

1. 从 Security Hub CSPM 管理员账户运行 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html)。

1. 对于 `RuleArn` 参数，请提供要编辑的规则的 ARN。

1. 为要编辑的参数提供新值。除 `RuleArn` 之外，您可以编辑任何参数。

以下示例将更新指定自动化规则。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securityhub batch-update-automation-rules \
--update-automation-rules-request-items '[
    {
      "Actions": [{
        "Type": "FINDING_FIELDS_UPDATE",
        "FindingFieldsUpdate": {
          "Note": {
            "Text": "Known issue that is a risk",
            "UpdatedBy": "sechub-automation"
          },
          "Workflow": {
            "Status": "NEW"
          }
        }
      }],
      "Criteria": {
        "SeverityLabel": [{
         "Value": "LOW",
         "Comparison": "EQUALS"
        }]
      },
      "RuleArn": "arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
      "RuleOrder": 14,
      "RuleStatus": "DISABLED",
    }
  ]' \
--region us-east-1
```

------

# 编辑自动化规则顺序
<a name="edit-rule-order"></a>

自动化规则可用于自动更新 Security Hub CSP AWS M 中的搜索结果。有关自动化规则的工作原理的背景信息，请参阅[了解 Security Hub CSPM 中的自动化规则](automation-rules.md)。

创建自动化规则后，委派的 Security Hub CSPM 管理员可以编辑该规则。

如果您希望保持规则条件和操作不变，但要更改 Security Hub CSPM 应用自动化规则的顺序，可以编辑规则顺序。选择您喜欢的方法，然后按照步骤编辑规则顺序。

有关编辑自动化规则的条件或操作的说明，请参阅[编辑自动化规则](edit-automation-rules.md)。

------
#### [ Console ]

**编辑自动化规则顺序（控制台）**

1. 使用 Security Hub CSPM 管理员的凭据，打开 Sec AWS urity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

1. 在导航窗格中，选择 **自动化**。

1. 选择要更改其顺序的规则。选择**编辑优先级**。

1. 选择**向上移动**可将规则的优先级提高一个单位。选择**下移**可将规则优先级降低一个单位。选择**移至顶部**，将规则的顺序分配为 **1**（这使规则优先于其他现有规则）。

**注意**  
在 Security Hub CSPM 控制台中创建规则时，Security Hub CSPM 会根据规则的创建顺序自动分配规则顺序。最近创建的规则具有最低的规则顺序数值，因此首先适用。

------
#### [ API ]

**编辑自动化规则顺序（API）**

1. 从 Security Hub CSPM 管理员账户使用 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchUpdateAutomationRules.html) 操作。

1. 对于 `RuleArn` 参数，请提供要编辑其顺序的规则的 ARN。

1. 修改 `RuleOrder` 字段的值。

**注意**  
如果多个规则具有相同的 `RuleOrder`，Security Hub CSPM 会先为 `UpdatedAt` 字段应用具有较早值的规则（也就是说，最后应用最近编辑的规则）。

------

# 删除或禁用自动化规则
<a name="delete-automation-rules"></a>

自动化规则可用于自动更新 Security Hub CSP AWS M 中的搜索结果。有关自动化规则的工作原理的背景信息，请参阅[了解 Security Hub CSPM 中的自动化规则](automation-rules.md)。

当您删除自动化规则时，Security Hub CSPM 会将其从您的账户中移除，并且不再将该规则应用于调查发现。除了删除之外，您还可以*禁用*规则。这会保留该规则以备将来使用，但是在您启用该规则之前，Security Hub CSPM 不会将该规则应用于任何匹配的调查发现。

选择您的首选方法，然后按照步骤删除自动化规则。您可以在单个请求中删除一个或多个规则。

------
#### [ Console ]

**删除或禁用自动化规则（控制台）**

1. 使用 Security Hub CSPM 管理员的凭据，打开 Sec AWS urity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

1. 在导航窗格中，选择 **自动化**。

1. 选择您要删除的规则。选择**操作**和**删除**（要保留规则，但暂时将其禁用，请选择**禁用**）。

1. 确认您的选择，然后选择**删除**。

------
#### [ API ]

**删除或禁用自动化规则（API）**

1. 从 Security Hub CSPM 管理员账户使用 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchDeleteAutomationRules.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchDeleteAutomationRules.html) 操作。

1. 对于 `AutomationRulesArns` 参数，请提供要删除的规则的 ARN（要保留规则，但暂时将其禁用，请提供 `RuleStatus` 参数的 `DISABLED`）。

以下示例将删除指定自动化规则。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securityhub batch-delete-automation-rules \
--automation-rules-arns '["arn:aws:securityhub:us-east-1:123456789012:automation-rule/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"]' \
--region us-east-1
```

------

# 自动化规则示例
<a name="examples-automation-rules"></a>

本部分提供了常见 Security Hub CSPM 使用案例的自动化规则示例。这些示例对应于 Security Hub CSPM 控制台上提供的规则模板。

## 当特定资源（例如 S3 存储桶）面临风险时，将严重性提升为“严重”
<a name="example-automation-rule-severity-resource"></a>

在本示例中，当 `ResourceId` 在调查发现中的对象是特定的 Amazon Simple Storage Service（Amazon S3）存储桶时，匹配规则条件。规则操作是将匹配调查发现的严重性更改为 `CRITICAL`。您可以修改此模板以应用于其他资源。

**API 请求示例**：

```
{
    "IsTerminal": true,
    "RuleName": "Elevate severity of findings that relate to important resources",
    "RuleOrder": 1,
    "RuleStatus": "ENABLED",
    "Description": "Elevate finding severity to CRITICAL when specific resource such as an S3 bucket is at risk",
    "Criteria": {
        "ProductName": [{
            "Value": "Security Hub CSPM",
            "Comparison": "EQUALS"
        }],
        "ComplianceStatus": [{
            "Value": "FAILED",
            "Comparison": "EQUALS"
        }],
        "RecordState": [{
            "Value": "ACTIVE",
            "Comparison": "EQUALS"
        }],
        "WorkflowStatus": [{
            "Value": "NEW",
            "Comparison": "EQUALS"
        }],
        "ResourceId": [{
            "Value": "arn:aws:s3:::amzn-s3-demo-bucket/developers/design_info.doc",
            "Comparison": "EQUALS"
        }]
    },
    "Actions": [{
        "Type": "FINDING_FIELDS_UPDATE",
        "FindingFieldsUpdate": {
            "Severity": {
                "Label": "CRITICAL"
            },
            "Note": {
                "Text": "This is a critical resource. Please review ASAP.",
                "UpdatedBy": "sechub-automation"
            }
        }
    }]
}
```

**示例 CLI 命令：**

```
$ 
aws securityhub create-automation-rule \
--is-terminal \
--rule-name "Elevate severity of findings that relate to important resources" \
--rule-order 1 \
--rule-status "ENABLED" \

--description "Elevate finding severity to CRITICAL when specific resource such as an S3 bucket is at risk" \
--criteria '{
"ProductName": [{
"Value": "Security Hub CSPM",
"Comparison": "EQUALS"
}],
"ComplianceStatus": [{
"Value": "FAILED",
"Comparison": "EQUALS"
}],
"RecordState": [{
"Value": "ACTIVE",
"Comparison": "EQUALS"
}],
"WorkflowStatus": [{
"Value": "NEW",
"Comparison": "EQUALS"
}],
"ResourceId": [{
"Value": "arn:aws:s3:::amzn-s3-demo-bucket/developers/design_info.doc",
"Comparison": "EQUALS"
}]
}' \
--actions '[{
"Type": "FINDING_FIELDS_UPDATE",
"FindingFieldsUpdate": {
"Severity": {
"Label": "CRITICAL"
},
"Note": {
"Text": "This is a critical resource. Please review ASAP.",
"UpdatedBy": "sechub-automation"
}
}
}]' \
--region us-east-1
```

## 提高与生产账户中资源相关调查发现的严重性
<a name="example-automation-rule-severity-change"></a>

在此示例中，当在特定的生产账户中生成 `HIGH` 严重级别的调查发现时，匹配规则条件。规则操作是将匹配调查发现的严重性更改为 `CRITICAL`。

**API 请求示例**：

```
{
    "IsTerminal": false,
    "RuleName": "Elevate severity for production accounts",
    "RuleOrder": 1,
    "RuleStatus": "ENABLED",
    "Description": "Elevate finding severity from HIGH to CRITICAL for findings that relate to resources in specific production accounts",
    "Criteria": {
        "ProductName": [{
            "Value": "Security Hub CSPM",
            "Comparison": "EQUALS"
        }],
        "ComplianceStatus": [{
            "Value": "FAILED",
            "Comparison": "EQUALS"
        }],
        "RecordState": [{
            "Value": "ACTIVE",
            "Comparison": "EQUALS"
        }],
        "WorkflowStatus": [{
            "Value": "NEW",
            "Comparison": "EQUALS"
        }],
        "SeverityLabel": [{
            "Value": "HIGH",
            "Comparison": "EQUALS"
        }],
        "AwsAccountId": [
        {
            "Value": "111122223333",
            "Comparison": "EQUALS"
        },
        {
            "Value": "123456789012",
            "Comparison": "EQUALS"
        }]
    },
    "Actions": [{
        "Type": "FINDING_FIELDS_UPDATE",
        "FindingFieldsUpdate": {
            "Severity": {
                "Label": "CRITICAL"
            },
            "Note": {
                "Text": "A resource in production accounts is at risk. Please review ASAP.",
                "UpdatedBy": "sechub-automation"
            }
        }
    }]
}
```

**示例 CLI 命令**：

```
aws securityhub create-automation-rule \
--no-is-terminal \
--rule-name "Elevate severity of findings that relate to resources in production accounts" \
--rule-order 1 \
--rule-status "ENABLED" \
--description "Elevate finding severity from HIGH to CRITICAL for findings that relate to resources in specific production accounts" \
--criteria '{
"ProductName": [{
"Value": "Security Hub CSPM",
"Comparison": "EQUALS"
}],
"ComplianceStatus": [{
"Value": "FAILED",
"Comparison": "EQUALS"
}],
"RecordState": [{
"Value": "ACTIVE",
"Comparison": "EQUALS"
}],
"SeverityLabel": [{
"Value": "HIGH",
"Comparison": "EQUALS"
}],
"AwsAccountId": [
{
"Value": "111122223333",
"Comparison": "EQUALS"
},
{
"Value": "123456789012",
"Comparison": "EQUALS"
}]
}' \
--actions '[{
"Type": "FINDING_FIELDS_UPDATE",
"FindingFieldsUpdate": {
"Severity": {
"Label": "CRITICAL"
},
"Note": {
"Text": "A resource in production accounts is at risk. Please review ASAP.",
"UpdatedBy": "sechub-automation"
}
}
}]' \
--region us-east-1
```

## 隐藏信息性调查发现
<a name="example-automation-rule-change-workflow"></a>

在此示例中，与从亚马逊发送到 Security Hub CSPM 的`INFORMATIONAL`严重性调查结果的规则标准相匹配。 GuardDuty规则操作是将匹配调查发现的工作流状态更改为 `SUPPRESSED`。

**API 请求示例**：

```
{
    "IsTerminal": false,
    "RuleName": "Suppress informational findings",
    "RuleOrder": 1,
    "RuleStatus": "ENABLED",
    "Description": "Suppress GuardDuty findings with INFORMATIONAL severity",
    "Criteria": {
        "ProductName": [{
            "Value": "GuardDuty",
            "Comparison": "EQUALS"
        }],
        "RecordState": [{
            "Value": "ACTIVE",
            "Comparison": "EQUALS"
        }],
        "WorkflowStatus": [{
            "Value": "NEW",
            "Comparison": "EQUALS"
        }],
        "SeverityLabel": [{
            "Value": "INFORMATIONAL",
            "Comparison": "EQUALS"
        }]
    },
    "Actions": [{
        "Type": "FINDING_FIELDS_UPDATE",
        "FindingFieldsUpdate": {
            "Workflow": {
                "Status": "SUPPRESSED"
            },
            "Note": {
                "Text": "Automatically suppress GuardDuty findings with INFORMATIONAL severity",
                "UpdatedBy": "sechub-automation"
            }
        }
    }]
}
```

**示例 CLI 命令**：

```
aws securityhub create-automation-rule \
--no-is-terminal \
--rule-name "Suppress informational findings" \
--rule-order 1 \
--rule-status "ENABLED" \
--description "Suppress GuardDuty findings with INFORMATIONAL severity" \
--criteria '{
"ProductName": [{
"Value": "GuardDuty",
"Comparison": "EQUALS"
}],
"ComplianceStatus": [{
"Value": "FAILED",
"Comparison": "EQUALS"
}],
"RecordState": [{
"Value": "ACTIVE",
"Comparison": "EQUALS"
}],
"WorkflowStatus": [{
"Value": "NEW",
"Comparison": "EQUALS"
}],
"SeverityLabel": [{
"Value": "INFORMATIONAL",
"Comparison": "EQUALS"
}]
}' \
--actions '[{
"Type": "FINDING_FIELDS_UPDATE",
"FindingFieldsUpdate": {
"Workflow": {
"Status": "SUPPRESSED"
},
"Note": {
"Text": "Automatically suppress GuardDuty findings with INFORMATIONAL severity",
"UpdatedBy": "sechub-automation"
}
}
}]' \
--region us-east-1
```