AWS Config
開発者ガイド

AWS Config ルールによる非準拠の AWS リソースの修復

AWS Config では、AWS Config ルール で評価されている非準拠のリソースを修復できます。AWS Config では、AWS Systems Manager 自動化ドキュメントを使用して修復が適用されます。これらのドキュメントでは、AWS Config ルール によって評価された非準拠の AWS リソースに対して実行されるアクションを定義します。AWS マネジメントコンソール または API を使用して SSM ドキュメントを関連付けることができます。

AWS Config には、一連のマネージド型 Automation ドキュメントの修復アクションが用意されています。カスタムの Automation ドキュメントを作成し、AWS Config ルールに関連付けることもできます。

非準拠のリソースに修復を適用するには、事前設定されたリストから関連付ける修復アクションを選択するか、SSM ドキュメントを使用して独自のカスタム修復アクションを作成します。AWS Config では、推奨される修復アクションのリストが AWS マネジメントコンソール に表示されます。

AWS マネジメントコンソール では、非準拠のリソースの修復を手動で行うか、自動で行うかを選択できます。自動で行う場合は、修復アクションを AWS Config ルールに関連付けます。すべての修復アクションで、手動修復または自動修復のいずれかを選択できます。

前提条件

非準拠のリソースに修復を適用する前に、ルールを選択して、そのルールに修復 (手動または自動) を設定する必要があります。

手動修復の設定 (コンソール)

  1. AWS マネジメントコンソール にサインインして AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. 左側の [ルール] を選択後、[ルール] ページで [ルールの追加] を選択して、新しいルールをルールリストに追加します。

    既存のルールの場合は、ルールリストから非準拠のルールを選択後、[編集] を選択します。

  3. [Edit (編集) name of the rule (ルールの名前)] ページの [Choose remediation action (修復アクションの選択)] セクションで、修復リストから適切な修復アクションを選択します。

    選択した修復アクションに応じて、特定のパラメータが表示されるか、パラメータは表示されません。

  4. (オプション): 非準拠のリソースのリソース ID を修復アクションに渡す場合は、[リソース ID パラメータ] を選択します。選択した場合は、そのパラメータは実行時に、修復されるリソースの ID に置き換えられます。

    各パラメータの値は、静的または動的です。ドロップダウンリストから特定のリソース ID パラメータを選択していない場合は、キーごとに値を入力することができます。ドロップダウンリストからリソース ID パラメータを選択した場合は、その他のすべてのキーの値を入力できます (選択したリソース ID のパラメータを除く)。

  5. [Save] を選択します。[ルール] ページが表示されます。

自動修復の設定 (コンソール)

  1. AWS マネジメントコンソール にサインインして AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. 左側の [ルール] を選択後、[ルール] ページで [ルールの追加] を選択して、新しいルールをルールリストに追加します。

    既存のルールの場合は、ルールリストから非準拠のルールを選択後、[編集] を選択します。

  3. [Edit (編集) name of the rule (ルールの名前)] ページの [Choose remediation action (修復アクションの選択)] セクションで、修復リストから適切な修復アクションを選択します。

    選択した修復アクションに応じて、特定のパラメータが表示されるか、パラメータは表示されません。

  4. [Auto remediation (自動修復)] を選択して、非準拠のリソースを自動的に修復します。

    自動修復後もリソースがまだ非準拠である場合は、自動修復を再試行するようにルールを設定できます。目的の再試行階数と秒数を入力します。

    注記

    修復スクリプトを複数回実行するとコストがかかります。

  5. (オプション): 非準拠のリソースのリソース ID を修復アクションに渡す場合は、[リソース ID パラメータ] を選択します。選択した場合は、そのパラメータは実行時に、修復されるリソースの ID に置き換えられます。

    各パラメータの値は、静的または動的です。ドロップダウンリストから特定のリソース ID パラメータを選択していない場合は、キーごとに値を入力することができます。ドロップダウンリストからリソース ID パラメータを選択した場合は、その他のすべてのキーの値を入力できます (選択したリソース ID のパラメータを除く)。

  6. [Save] を選択します。[ルール] ページが表示されます。

ルールとリソースを使用した修復アクションの設定と適用 (コンソール)

[Rules (ルール)] および [Resources (リソース)] ページから修復を設定することもできます。以下の手順では、各ワークフローに関する詳細について説明します。

ルールの使用

修復アクションは、左の [ルール] から非準拠ルールに適用できます。

  1. AWS マネジメントコンソール にサインインして AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. 左側の [ルール] を選択後、[ルール] ページで [ルールの追加] を選択して、新しいルールをルールリストに追加します。

    既存のルールの場合は、ルールリストから非準拠のルールを選択後、[編集] を選択します。

  3. [Manage remediation (修復の管理)] を選択後、[修復の管理: ルールの名前] ページで、修復リストから適切な修復アクションを選択します。修復アクションは AWS Systems Manager の Automation ドキュメントに関連しています。

    選択した修復アクションに応じて、特定のパラメータが表示されるか、パラメータは表示されません。

  4. 非準拠のリソースのリソース ID を修復アクションに渡す場合は、[リソース ID パラメータ] を選択します。選択した場合は、そのパラメータは実行時に、修復されるリソースの ID に置き換えられます。

    各パラメータの値は、静的または動的です。ドロップダウンリストから特定のリソース ID パラメータを選択していない場合は、キーごとに値を入力することができます。ドロップダウンリストからリソース ID パラメータを選択した場合は、その他のすべてのキーの値を入力できます (選択したリソース ID のパラメータを除く)。

  5. [Save] を選択します。

  6. [Choose resources in scope (対象のリソースを選択)] セクションで、非準拠のリソースをすべて選択します。対象のリソースには、このルールが適用されるリソースと、その準拠ステータスが含まれます。

    リソースの詳細については、[リソースアクション] を選択後、[View details (詳細の表示)]、[Configuration timeline (設定タイムライン)]、[コンプライアンスタイムライン] の順に選択します。

  7. [修復] を選択します。

    リソースが修復されている場合、リソースの準拠ステータスは「準拠」です。準拠リソースを表示するには、準拠ステータスリストから [準拠] を選択します。

    リソースが修復されていない場合は、[Action execution failed (details)] とアクションステータス列に表示されます。[(詳細)] を選択すると、修復アクションの実行時に呼び出される主なアクションステップと、各アクションステップのステータスが表示されます。

    注記

    失敗した修復アクションをトラブルシューティングするには、AWS コマンドラインインターフェイス (AWS CLI) describe-remediation-execution-status コマンドを実行して、一連のリソースに対する修復実行の詳細を表示できます。詳細には、状態、修復実行ステップのタイムスタンプ、失敗したステップのエラーメッセージが含まれます。

リソースの使用

修復アクションは、左の [リソース] から非準拠ルールに適用することもできます。

  1. AWS マネジメントコンソール にサインインして AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. 左側の [リソース] を選択すると、[リソースインベントリ] ページで、[リソース] はデフォルトで選択されています。

  3. リソースタイプから 1 つ以上のリソースを選択し、[Look up (検索)] を選択します。

  4. リソーステーブルから適切な非準拠リソースの名前を選択します。

  5. [リソースの詳細: リソースの名前] ページで、対象のルールから非準拠のルールを 1 つ以上選択します。

  6. [ルールアクション]、[Manage remediation (修復の管理)] の順に選択します。

  7. [Manage remediation: (修復の管理:)name of the rule (ルールの名前)] ページで、適切な修復アクションを選択します。

    選択した修復アクションに応じて、特定のパラメータが表示されるか、パラメータは表示されません。

  8. 非準拠のリソースのリソース ID を修復アクションに渡す場合は、[リソース ID パラメータ] を選択します。選択した場合は、そのパラメータは実行時に、修復されるリソースの ID に置き換えられます。

    各パラメータの値は、静的または動的です。ドロップダウンリストから特定のリソース ID パラメータを選択していない場合は、キーごとに値を入力することができます。ドロップダウンリストからリソース ID パラメータを選択した場合は、その他のすべてのキーの値を入力できます (選択したリソース ID のパラメータを除く)。

  9. [Save] を選択します。

  10. [Choose resources in scope (対象のリソースを選択)] セクションで、非準拠のリソースをすべて選択します。対象のリソースには、このルールが適用されるリソースと、その準拠ステータスが含まれます。

    リソースの詳細については、[リソースアクション] を選択後、[View details (詳細の表示)]、[Configuration timeline (設定タイムライン)]、[コンプライアンスタイムライン] の順に選択します。

  11. [修復] を選択します。

    リソースが修復されている場合、リソースのコンプライアンスステータスは [準拠] です。準拠リソースを表示するには、準拠ステータスリストから [準拠] を選択します。

    リソースが修復されていない場合は、[Action execution failed (details)] とアクションステータス列に表示されます。[(詳細)] を選択すると、修復アクションの実行時に呼び出される主なアクションステップと、各アクションステップのステータスが表示されます。

    注記

    失敗した修復アクションをトラブルシューティングするには、AWS コマンドラインインターフェイス (AWS CLI) describe-remediation-execution-status コマンドを実行して、一連のリソースに対する修復実行の詳細を表示できます。詳細には、状態、修復実行ステップのタイムスタンプ、失敗したステップのエラーメッセージが含まれます。

修復アクションの削除 (コンソール)

ルールを削除するにはまずこのルールに関連付けられた修復アクションを削除する必要があります。

  1. AWS マネジメントコンソール にサインインして AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. 左側から [Rules (ルール)] を選択したら、[Rules (ルール)] ページでルールのリストからルールを選び、[Edit (編集)] を選択します。

  3. ルールページで [Edit (編集)] を再度選択します。

  4. [Edit name of the rule (ルール名の編集)] ページの [Choose remediation action (修復アクション)] セクションで [Delete remediation action (修復アクションの削除)] を選択し、削除アクションを確定します。

    注記

    修復が進行中の場合には、修復アクションは削除されません。[Delete remediation action (修復アクションの削除)] を選択する場合、修復アクションを回復することはできません。修復アクションを削除するとき、AWS Config はルールを削除しません。

    修復アクションが削除された場合、[Resource ID parameter (リソース ID パラメータ)] は空になり、N/A と表示されます。[Rules (ルール)] ページの修復アクション列には、該当するルールに [Not set (設定なし)] と表示されます。

修復の管理 (API)

手動修復

次の AWS Config API アクションを使用して修復を管理します。

自動修復

以下の AWS Config API アクションを使用して自動修復を管理します。