

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Security Hub CSPM の自動化ルールについて
<a name="automation-rules"></a>

自動化ルールを使用して、 AWS Security Hub CSPM の結果を自動的に更新できます。検出結果が取り込まれると、Security Hub CSPM は検出結果の非表示、重要度の変更、メモの追加など、さまざまなルールアクションを適用できます。このようなルールアクションは、指定した条件に一致する検出結果を変更します。

自動化ルールの使用例には、次のようなものがあります。
+ 検出結果のリソース ID がビジネス上重要なリソースを参照している場合、検出結果の重大度を `CRITICAL` に上げます。
+ 検出結果が特定の本番稼働用アカウントのリソースに影響する場合は、検出結果の重要度を `HIGH` から `CRITICAL` に引き上げます。
+ `INFORMATIONAL` 重要度を持つ `SUPPRESSED` ワークフローステータスの特定の検出結果を割り当てます。

Security Hub CSPM 管理者アカウントからのみ自動化ルールを作成および管理できます。

ルールは、新しい検出結果と更新された検出結果の両方に適用されます。カスタムルールを最初から作成することも、Security Hub CSPM が提供するルールテンプレートを使用することもできます。テンプレートから開始し、必要に応じて変更することもできます。

## ルール基準とルールアクションの定義
<a name="automation-rules-how-it-works"></a>

Security Hub CSPM 管理者アカウントから、1 つ以上のルール*条件* と 1 つ以上のルール*アクション*を定義することで、自動化ルールを作成できます。検出結果が定義済みの条件と一致すると、Security Hub CSPM はその結果にルールアクションを適用します。使用可能な条件とアクションの詳細については、「[使用可能なルール基準とルールアクション](#automation-rules-criteria-actions)」を参照してください。

Security Hub CSPM は現在、管理者アカウントごとに最大 100 の自動化ルールをサポートしています。

Security Hub CSPM 管理者アカウントは、自動化ルールを編集、表示、削除できます。ルールは、管理者アカウントとすべてのメンバーアカウントの一致する検出結果に適用されます。メンバーアカウント ID をルール条件に指定することで、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 Security Finding Format (ASFF) フィールドがサポートされています。


| ルール基準 | フィルター演算子 | フィールドタイプ | 
| --- | --- | --- | 
| AwsAccountId  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | String  | 
| 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  | String  | 
| ComplianceStatus  | Is, Is Not  | 選択:[FAILED, NOT\$1AVAILABLE, PASSED, WARNING]  | 
| Confidence  | Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal)  | Number  | 
| CreatedAt  | Start, End, DateRange  | 日付 (形式例: 2022-12-01T21:47:39.269Z)  | 
| Criticality  | Eq (equal-to), Gte (greater-than-equal), Lte (less-than-equal)  | Number  | 
| Description  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | String  | 
| FirstObservedAt  | Start, End, DateRange  | 日付 (形式例: 2022-12-01T21:47:39.269Z)  | 
| GeneratorId  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | String  | 
| Id  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | String  | 
| LastObservedAt  | Start, End, DateRange  | 日付 (形式例: 2022-12-01T21:47:39.269Z)  | 
| NoteText  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | String  | 
| NoteUpdatedAt  | Start, End, DateRange  | 日付 (形式例: 2022-12-01T21:47:39.269Z)  | 
| NoteUpdatedBy  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | String  | 
| 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  | String  | 
| ResourceDetailsOther  | CONTAINS, EQUALS, NOT\$1CONTAINS, NOT\$1EQUALS  | マッピング  | 
| ResourceId  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | String  | 
| ResourcePartition  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 文字列  | 
| ResourceRegion  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | String  | 
| ResourceTags  | CONTAINS, EQUALS, NOT\$1CONTAINS, NOT\$1EQUALS  | マッピング  | 
| 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  | String  | 
| Title  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | 文字列  | 
| Type  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | String  | 
| UpdatedAt  | Start, End, DateRange  | 日付 (形式例: 2022-12-01T21:47:39.269Z)  | 
| UserDefinedFields  | CONTAINS, EQUALS, NOT\$1CONTAINS, NOT\$1EQUALS  | マッピング  | 
| VerificationState  | CONTAINS, EQUALS, PREFIX, NOT\$1CONTAINS, NOT\$1EQUALS, PREFIX\$1NOT\$1EQUALS  | String  | 
| 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 Security Finding Format (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`

1 つ以上の自動化ルールを作成したら、[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>

自動化ルールを使用して、 AWS Security Hub CSPM の結果を自動的に更新できます。カスタム自動化ルールを最初から作成することも、Security Hub CSPM コンソールで事前に入力されているルールテンプレートを使用することもできます。自動化ルールの仕組みに関する背景情報については、「[Security Hub CSPM の自動化ルールについて](automation-rules.md)」を参照してください。

一度に作成できる自動化ルールは 1 つだけです。複数の自動化ルールを作成するには、コンソールの手順を複数回実行するか、必要なパラメータを指定して API またはコマンドを複数回呼び出します。

ルールを検出結果に適用させる各リージョンとアカウントで自動化ルールを作成する必要があります。

Security Hub CSPM コンソールで自動化ルールを作成すると、Security Hub CSPM では、そのルールが適用される検出結果のベータが表示されます。ルール条件に CONTAINS または NOT\$1CONTAINS フィルターが含まれている場合のベータは現在サポートされていません。これらのフィルターは、マッピングフィールドタイプと文字列フィールドタイプに対して選択できます。

**重要**  
AWS では、ルール名、説明、またはその他のフィールドに個人を特定できる情報、機密情報、または機密情報を含めないことをお勧めします。

## カスタム自動化ルールの作成
<a name="create-automation-rules-custom"></a>

ご希望の方法を選択し、次の手順を完了させ、カスタム自動化ルールを作成します。

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

**カスタムオー自動化ルールを作成するには (コンソール)**

1. Security Hub CSPM 管理者の認証情報を使用して、[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/) で AWS Security Hub CSPM コンソールを開きます。

1. ナビゲーションペインで **[オートメーション]** を選択します。

1. **[‬ルールを作成]‭** を選択します。**[ルールタイプ]** で **[カスタムルールを作成]** を選択します。

1. **[ルール]** セクションで、一意のルール名とルールの説明を入力します。

1. **[基準]** では、**[キー]**、**[オペレータ]**、および **[値]** のドロップダウンメニューを使用して、ルール条件を指定します。少なくとも 1 つのルール基準を指定する必要があります。

   選択した基準でサポートされている場合、コンソールには、基準に一致する検出結果のベータが表示されます。

1. **[自動アクション]** の場合は、ドロップダウンメニューを使用して、検出結果がルール条件に一致したときに更新する結果フィールドを指定します。少なくとも 1 つのルールアクションを指定する必要があります。

1. **[ルールステータス]** では、ルールを作成した後でそのルールを **[有効]** にするか **[無効]** にするかを選択します。

1. (オプション) **[詳細設定]** セクションを展開します。このルールをルール条件に一致する検出結果に適用する最後のルールにしたい場合は、**[これらの条件に一致する検出結果については後続のルールを無視する]** を選択します。

1. (オプション) **[タグ]** でタグをキーと値のペアとして追加すると、ルールを簡単に識別できるようになります。

1. **[‬ルールを作成]‭** を選択します。

------
#### [ 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 管理者の認証情報を使用して、[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/) で AWS Security Hub CSPM コンソールを開きます。

1. ナビゲーションペインで **[オートメーション]** を選択します。

1. **[‬ルールを作成]‭** を選択します。**[ルールタイプ]** で、**[テンプレートからルールを作成]** を選択します。

1. ドロップダウンメニューからルールテンプレートを選択します。

1. (オプション) 使用状況の必要に応じて、**[ルール]**、**[基準]**、**[自動化アクション]** セクションを変更します。少なくとも 1 つのルール基準と 1 つのルールアクションを指定する必要があります。

   選択した基準でサポートされている場合、コンソールには、基準に一致する検出結果のベータが表示されます。

1. **[ルールステータス]** では、ルールを作成した後でそのルールを **[有効]** にするか **[無効]** にするかを選択します。

1. (オプション) **[詳細設定]** セクションを展開します。このルールをルール条件に一致する検出結果に適用する最後のルールにしたい場合は、**[これらの条件に一致する検出結果については後続のルールを無視する]** を選択します。

1. (オプション) **[タグ]** でタグをキーと値のペアとして追加すると、ルールを簡単に識別できるようになります。

1. **[‬ルールを作成]‭** を選択します。

# 自動化ルールを表示する
<a name="view-automation-rules"></a>

自動化ルールを使用して、 AWS Security Hub CSPM の結果を自動的に更新できます。自動化ルールの仕組みに関する背景情報については、「[Security Hub CSPM の自動化ルールについて](automation-rules.md)」を参照してください。

ご希望の方法を選択し、手順に従って既存の自動化ルールと各ルールの詳細を確認してください。

自動化ルールによって検出結果がどのように変化したかの履歴を表示するには、「[Security Hub CSPM での検出結果詳細と検出結果履歴のレビュー](securityhub-findings-viewing.md)」を参照してください。

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

**自動化ルールを表示するには (コンソール)**

1. Security Hub CSPM 管理者の認証情報を使用して、[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/) で AWS Security Hub CSPM コンソールを開きます。

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 は、使用中のルールのルール ARN とその他のメタデータを返します。この 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) を実行してください。詳細を指定する自動化ルールの ARN を指定します。

   次の例では、指定した自動化ルールに関する詳細を取得します。この例は 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>

自動化ルールを使用して、 AWS Security Hub CSPM の結果を自動的に更新できます。自動化ルールの仕組みに関する背景情報については、「[Security Hub CSPM の自動化ルールについて](automation-rules.md)」を参照してください。

自動化ルールを作成した後、Security Hub CSPM の委任管理者はルールを編集できます。自動化ルールを編集すると、ルール編集後に Security Hub CSPM が生成または取り込む新しい検出結果や更新された結果に変更が適用されます。

ご希望の方法を選択し、手順に従って自動化ルールの内容を編集します。1 回のリクエストで 1 つ以上のルールを編集できます。ルール順序の編集方法については、「[自動化ルールの順序の編集](edit-rule-order.md)」を参照してください。

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

**自動化ルールを編集するには (コンソール)**

1. Security Hub CSPM 管理者の認証情報を使用して、[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/) で AWS Security Hub CSPM コンソールを開きます。

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>

自動化ルールを使用して、 AWS Security Hub CSPM の結果を自動的に更新できます。自動化ルールの仕組みに関する背景情報については、「[Security Hub CSPM の自動化ルールについて](automation-rules.md)」を参照してください。

自動化ルールを作成した後、Security Hub CSPM の委任管理者はルールを編集できます。

ルールの条件とアクションはそのままで、Security Hub CSPM が自動化ルールを適用する順序を変更する場合は、ルールの順序のみ編集できます。ご希望の方法を選択し、手順に従ってルールの順序を編集します。

自動化ルールの基準またはアクションを編集する手順については、「[自動化ルールの編集](edit-automation-rules.md)」を参照してください。

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

**自動化ルールの順序を編集するには (コンソール)**

1. Security Hub CSPM 管理者の認証情報を使用して、[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/) で AWS Security Hub CSPM コンソールを開きます。

1. ナビゲーションペインで **[オートメーション]** を選択します。

1. 順序を変更するルールを選択します。**[優先度を編集]** を選択します。

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>

自動化ルールを使用して、 AWS Security Hub CSPM の結果を自動的に更新できます。自動化ルールの仕組みに関する背景情報については、「[Security Hub CSPM の自動化ルールについて](automation-rules.md)」を参照してください。

自動化ルールを削除すると、Security Hub CSPM はそのルールをアカウントから削除し、検出結果に適用されなくなります。削除の代わりに、ルールを*無効にする*こともできます。これにより、ルールは後で使用できるよう保持されますが、Security Hub CSPM は、有効にするまで一致する検出結果にはルールを適用しません。

ご希望の方法を選択し、手順に従って自動化ルールを削除します。1 回のリクエストで 1 つ以上のルールを削除できます。

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

**自動化ルールを削除または無効にするには (コンソール)**

1. Security Hub CSPM 管理者の認証情報を使用して、[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/) で AWS Security Hub CSPM コンソールを開きます。

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>

この例では、Amazon GuardDuty から Security Hub CSPM に送信された重要度 `INFORMATIONAL` の検出結果に対してルール条件が一致しています。ルールアクションは、一致した検出結果のワークフローステータスを `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
```