AWS Config ルールの追加、更新、削除 - AWS Config

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

AWS Config ルールの追加、更新、削除

AWS Config コンソール、AWS CLI、および AWS Config API を使用してルールを表示、追加、および削除できます。

ルールの追加、表示、更新、削除 (コンソール)

[Rules] (ルール) ページの表に、ルールとその現在のコンプライアンス結果が表示されます。各ルールの結果は、 でそのルールを適用したリソースの評価が完了するまでは、Evaluating...AWS Config になります。結果は、更新ボタンを使用して更新できます。AWS Config で評価が完了すると、ルールとリソースタイプの準拠または非準拠がわかります。詳細については、「設定のコンプライアンスの確認」を参照してください。

注記

AWS Config は、記録対象のリソースタイプのみを評価します。例えば、cloudtrail-enabled ルールを追加しても、CloudTrail 証跡リソースタイプを記録しなければ、AWS Config はアカウントの証跡が準拠しているかどうかを評価できません。詳細については、「AWS Config どのリソースを記録するかを選択する」を参照してください。

ルールを追加するには
  1. AWS Management Console にサインインして、AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. AWS Management Console メニューで、リージョンセレクターが AWS Config ルールをサポートするリージョンに設定されていることを確認します。サポートされているリージョンのリストについては、AWS Config の「Amazon Web Services 全般のリファレンス のリージョンとエンドポイント」を参照してください。

  3. 左のナビゲーションで、ルール を選択します。

  4. [Rules] (ルール) ページで、A[dd rule] (ルールの追加) を選択します。

  5. [Specify rule type] (ルールタイプの指定) ページで、以下のステップを完了してルールタイプを指定します。

    1. 検索フィールドに入力して、ルール名、説明、ラベルでマネージドルールのリストをフィルタリングします。例えば、EC2 と入力すると、EC2 リソースタイプを評価するルールが返されます。periodic と入力すると、定期的にトリガーされるルールが返されます。

    2. 独自のカスタムルールを作成することもできます。[Lambda を使用してカスタムルールを作成] または [Guard を使用してカスタムルールを作成] を選択し、[AWS Config カスタム Lambda ルールの作成] または [AWS Config カスタムポリシールールの作成] の手順に従います。

  6. [Configure rule] (ルールの設定) ページで、以下のステップを実行してルールを設定します。

    1. 名前 に、ルールの一意の名前を入力します。

    2. [説明] に、ルールの説明を入力します。

    3. 評価モードでは、リソースの作成および管理プロセスのどの時点で AWS Config によりリソースを評価するかを選択します。ルールに応じて、AWS Config は、リソースのデプロイ前、デプロイ後、またはその両方でリソース設定を評価できます。

      1. [Turn on proactive evaluation] (プロアクティブ評価をオンにする) を選択すると、リソースをデプロイする前に、その構成設定に対して評価を実行できます。

        プロアクティブ評価をオンにすると、StartResourceEvaluation API と GetResourceEvaluationSummary API を使用して、これらのコマンドで指定したリソースが、リソースのアカウントのプロアクティブルールに基づいて NON_COMPLIANT としてフラグが設定されるかどうかを確認できます。

        これらのコマンドの使用方法の詳細については、「AWS Config ルールでのリソースの評価」を参照してください。プロアクティブ評価をサポートするマネージドルールのリストについては、「評価モード別の AWS Config マネージドルールのリスト」を参照してください。

      2. 既存のリソースの構成設定を評価するには、[Turn on detective evaluation] (検出評価を有効にする) を選択します。

        検出評価には、設定変更時定期的の 2 種類のトリガーがあります。

        1. ルールのトリガータイプとして [Configuration changes] (設定変更) を選択した場合、AWS Config が Lambda 関数を呼び出す [Scope of changes] (変更範囲) で以下のいずれかのオプションを指定します。

          • [Resource] (リソース) – 指定したリソースタイプや、リソースタイプおよび識別子と一致するリソースが作成、変更、または削除された場合。

          • [Tags] (タグ) – 指定したタグを含むリソースが作成、変更、または削除された場合。

          • [All changes] (すべての変更) – AWS Config によって記録されたリソースが作成、変更、または削除された場合。

          AWS Config は、ルールのスコープに該当するリソースで変更を検出すると、評価を実行します。スコープを使用して、評価を開始するリソースを定義できます。

        2. ルールのトリガータイプとして [Periodic] (定期的) を選択した場合、AWS Config が Lambda 関数を呼び出す [Frequency] (頻度) を指定します。

    4. [Parameters] (パラメータ) では、ルールにパラメータが含まれる場合、提供されたキーの値をカスタマイズできます。パラメータは、ルールに準拠しているとみなされるためにリソースが従う必要がある属性です。

  7. [Review and create] (確認と作成) ページで、AWS アカウントにルールを追加する前に、編集中のすべての選択項目を確認します。ルールが正常に動作していない場合は、[Compliance] (コンプライアンス) に以下のいずれかが表示されます。

    • [No results reported] (報告される結果がありません) - AWS Config でルールに対してリソースが評価されました。ルールがスコープ内の AWS リソースに適用されなかったか、指定したリソースが削除されたか、または評価結果が削除されました。評価結果を取得するには、ルールを更新するか、スコープを変更するか、または [Re-evaluate] (再評価) を選択します。

      このメッセージは、ルールから評価結果が報告されなかった場合にも表示される場合があります。

    • [No resources in scope] (対象にリソースがありません) - 記録された AWS Config リソースは、このルールのスコープ内にないため、AWS ではこのルールに対してリソースを評価できません。評価結果を取得するには、ルールを編集してスコープを変更するかAWS ConfigSettings ページで記録対象の のリソースを追加します。

    • [Evaluations failed] (評価が失敗しました) - 問題の原因を判断するには、ルール名を選択して詳細ページを開き、エラーメッセージを確認します。

ルールを表示するには
  1. AWS Management Console にサインインして、AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. AWS Management Console メニューで、リージョンセレクターが AWS Config ルールをサポートするリージョンに設定されていることを確認します。サポートされているリージョンのリストについては、AWS Config の「Amazon Web Services 全般のリファレンス のリージョンとエンドポイント」を参照してください。

  3. 左のナビゲーションで、ルール を選択します。

  4. [Rule] (ルール) ページには、現在 AWS アカウント にあるルールがすべて表示されます。ここには、各ルールの名前、関連する修復アクション、およびコンプライアンスステータスが一覧表示されます。

    • [Add rule] (ルールの追加) を選択し、ルールの作成を開始します。

    • ルールを選択して設定を表示するか、ルールを選択して [View details] (詳細を表示) をクリックします。

    • リソースを評価したときのルールのコンプライアンス状態が表示されます。

    • ルールを選択し、[Edit rule] (ルールの編集) をクリックしてルールの設定を変更し、準拠していないルールの修復アクションを設定します。

ルールを更新するには
  1. AWS Management Console にサインインして、AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. AWS Management Console メニューで、リージョンセレクターが AWS Config ルールをサポートするリージョンに設定されていることを確認します。サポートされているリージョンのリストについては、AWS Config の「Amazon Web Services 全般のリファレンス のリージョンとエンドポイント」を参照してください。

  3. 左のナビゲーションで、ルール を選択します。

  4. 更新するルールを選択し、[Edit rule] (ルールの編集) をクリックします。

  5. 必要に応じて [Edit rule] (ルールの編集) ページの設定を変更し、ルールを変更します。

  6. [Save (保存)] を選択します。

ルールを削除するには
  1. AWS Management Console にサインインして、AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. AWS Management Console メニューで、リージョンセレクターが AWS Config ルールをサポートするリージョンに設定されていることを確認します。サポートされているリージョンのリストについては、AWS Config の「Amazon Web Services 全般のリファレンス のリージョンとエンドポイント」を参照してください。

  3. 左のナビゲーションで、ルール を選択します。

  4. テーブルから削除するルールを選択します。

  5. [Actions] (アクション) ドロップダウンリストから、[Delete rule] (ルールの削除) を選択します。

  6. プロンプトが表示されたら、「Delete」(大文字と小文字を区別) と入力し、[Delete] (削除) をクリックします。

プロアクティブ評価を使用して、デプロイ前のリソースを評価できます。これにより、AWS リソースを定義するために使用した一連のリソースプロパティが、リージョンのアカウントにあるプロアクティブなルールセットに照らして、COMPLIANT または NON_COMPLIANT であるかを評価できます。

リソースタイプスキーマは、リソースのプロパティを記述します。リソースタイプスキーマは、AWS CloudFormation レジストリ内の「AWS public extensions」または次の CLI コマンドで確認できます。

aws cloudformation describe-type --type-name "AWS::S3::Bucket" --type RESOURCE

詳細については、AWS CloudFormation ユーザーガイドの「AWS CloudFormation レジストリを使用した拡張機能の管理」と「AWS リソースおよびプロパティタイプのリファレンス」を参照してください。

注記

プロアクティブルールは、NON_COMPLIANT のフラグが付けられたリソースを修正したり、これらのリソースのデプロイを妨げたりしません。

プロアクティブな評価を有効にするには
  1. AWS Management Console にサインインして、AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. AWS Management Console メニューで、リージョンセレクターが AWS Config ルールをサポートするリージョンに設定されていることを確認します。サポートされている AWS リージョンのリストについては、Amazon Web Services 全般のリファレンス の「AWS Config のリージョンとエンドポイント」を参照してください。

  3. 左のナビゲーションで、ルール を選択します。プロアクティブ評価をサポートするマネージドルールのリストについては、「評価モード別の AWS Config マネージドルールのリスト」を参照してください。

  4. ルールを選択し、更新するルールの [Edit rule] (ルールの編集) をクリックします。

  5. [Evaluation mode] (評価モード) で、[Turn on proactive evaluation] (プロアクティブな評価をオンにする) を選択し、デプロイ前のリソースの構成設定に対して評価を実行します。

  6. [Save (保存)] を選択します。

プロアクティブ評価をオンにすると、StartResourceEvaluation APIと GetResourceEvaluationSummary APIを使用して、これらのコマンドで指定したリソースが、リソースのアカウントのプロアクティブルールに基づいて NON_COMPLIANT としてフラグが設定されるかどうかを確認できます。

例えば、StartResourceEvaluation API を開始します。

aws configservice start-resource-evaluation --evaluation-mode PROACTIVE --resource-details '{"ResourceId":"MY_RESOURCE_ID", "ResourceType":"AWS::RESOURCE::TYPE", "ResourceConfiguration":"RESOURCE_DEFINITION_AS_PER_THE_RESOURCE_CONFIGURATION_SCHEMA", "ResourceConfigurationSchemaType":"CFN_RESOURCE_SCHEMA"}'

出力に ResourceEvaluationId が表示されます。

{ "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID" }

次に、ResourceEvaluationId を GetResourceEvaluationSummary API で使用して評価結果を確認します。

aws configservice get-resource-evaluation-summary --resource-evaluation-id MY_RESOURCE_EVALUATION_ID

次のような出力が表示されます。

{ "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID", "EvaluationMode": "PROACTIVE", "EvaluationStatus": { "Status": "SUCCEEDED" }, "EvaluationStartTimestamp": "2022-11-15T19:13:46.029000+00:00", "Compliance": "COMPLIANT", "ResourceDetails": { "ResourceId": "MY_RESOURCE_ID", "ResourceType": "AWS::RESOURCE::TYPE", "ResourceConfiguration": "RESOURCE_DEFINITION_AS_PER_THE_RESOURCE_CONFIGURATION_SCHEMA" } }

どのルールがリソースに NON_COMPLIANT のフラグを付けたかなど、評価結果に関する詳細を確認するには、GetComplianceDetailsByResource API を使用します。

ルールの表示、更新または追加、削除 (AWS CLI)

ルールを表示するには
  • describe-config-rulesコマンドを使用します。

    $ aws configservice describe-config-rules

    AWS Config からすべてのルールの詳細が返されます。

ルールを更新または追加するには
  1. put-config-rule command コマンドと --generate-cli-skeleton パラメータを使用して、ルールのパラメータを含むローカル JSON ファイルを作成します。

    $ aws configservice put-config-rule --generate-cli-skeleton > putConfigRule.json
  2. JSON ファイルをテキストエディタで開き、更新する必要がないパラメータを削除します。ただし、以下は例外です。

    • ルールを識別するために以下のパラメータの少なくとも 1 つを含めます。

      ConfigRuleNameConfigRuleArnConfigRuleId

    • カスタムルールを更新する場合は、Source オブジェクトとそのパラメータを含める必要があります。

  3. 残ったパラメータの値を入力します。ルールの詳細を参照するには、describe-config-rules コマンドを使用します。

    例えば、次の JSON コードではカスタムルールのスコープ内にあるリソースタイプが更新されます。

    { "ConfigRule": { "ConfigRuleName": "ConfigRuleName", "Scope": { "ComplianceResourceTypes": [ "AWS::EC2::Instance", "AWS::EC2::Volume", "AWS::EC2::VPC" ] }, "Source": { "Owner": "CUSTOM_LAMBDA", "SourceIdentifier": "arn:aws:lambda:us-east-2:123456789012:function:ConfigRuleName", "SourceDetails": [ { "EventSource": "aws.config", "MessageType": "ConfigurationItemChangeNotification" } ] } } }
  4. put-config-rule コマンドと --cli-input-json パラメータを使用して、JSON 設定を AWS Config に渡します。

    $ aws configservice put-config-rule --cli-input-json file://putConfigRule.json
  5. ルールが正常に更新されたことを確認するには、describe-config-rules コマンドを使用してルールの設定を表示します。

    $ aws configservice describe-config-rules --config-rule-name ConfigRuleName { "ConfigRules": [ { "ConfigRuleState": "ACTIVE", "ConfigRuleName": "ConfigRuleName", "ConfigRuleArn": "arn:aws:config:us-east-2:123456789012:config-rule/config-rule-nnnnnn", "Source": { "Owner": "CUSTOM_LAMBDA", "SourceIdentifier": "arn:aws:lambda:us-east-2:123456789012:function:ConfigRuleName", "SourceDetails": [ { "EventSource": "aws.config", "MessageType": "ConfigurationItemChangeNotification" } ] }, "Scope": { "ComplianceResourceTypes": [ "AWS::EC2::Instance", "AWS::EC2::Volume", "AWS::EC2::VPC" ] }, "ConfigRuleId": "config-rule-nnnnnn" } ] }
ルールを削除するには
  • 次の例に示す delete-config-rule コマンドを使用します。

    $ aws configservice delete-config-rule --config-rule-name ConfigRuleName

プロアクティブ評価を使用して、デプロイ前のリソースを評価できます。これにより、AWS リソースを定義するために使用した一連のリソースプロパティが、リージョンのアカウントにあるプロアクティブなルールセットに照らして、COMPLIANT または NON_COMPLIANT であるかを評価できます。

リソースタイプスキーマは、リソースのプロパティを記述します。リソースタイプスキーマは、AWS CloudFormation レジストリ内の「AWS public extensions」または次の CLI コマンドで確認できます。

aws cloudformation describe-type --type-name "AWS::S3::Bucket" --type RESOURCE

詳細については、AWS CloudFormation ユーザーガイドの「AWS CloudFormation レジストリを使用した拡張機能の管理」と「AWS リソースおよびプロパティタイプのリファレンス」を参照してください。

注記

プロアクティブルールは、NON_COMPLIANT のフラグが付けられたリソースを修正したり、これらのリソースのデプロイを妨げたりしません。

プロアクティブな評価を有効にするには

put-config-rule コマンドを使用して、EvaluationModesPROACTIVE を有効にします。

プロアクティブ評価をオンにすると、start-resource-evaluation CLI コマンドと get-resource-evaluation-summary CLI コマンドを使用して、これらのコマンドで指定したリソースが、リージョンのアカウントのプロアクティブルールに照らして NON_COMPLIANT としてフラグが設定されるかどうかを確認できます。

例えば、start-resource-evaluation コマンドを開始します。

aws configservice start-resource-evaluation --evaluation-mode PROACTIVE --resource-details '{"ResourceId":"MY_RESOURCE_ID", "ResourceType":"AWS::RESOURCE::TYPE", "ResourceConfiguration":"RESOURCE_DEFINITION_AS_PER_THE_RESOURCE_CONFIGURATION_SCHEMA", "ResourceConfigurationSchemaType":"CFN_RESOURCE_SCHEMA"}'

出力に ResourceEvaluationId が表示されます。

{ "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID" }

次に、ResourceEvaluationIdget-resource-evaluation-summary で使用して評価結果を確認します。

aws configservice get-resource-evaluation-summary --resource-evaluation-id MY_RESOURCE_EVALUATION_ID

次のような出力が表示されます。

{ "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID", "EvaluationMode": "PROACTIVE", "EvaluationStatus": { "Status": "SUCCEEDED" }, "EvaluationStartTimestamp": "2022-11-15T19:13:46.029000+00:00", "Compliance": "COMPLIANT", "ResourceDetails": { "ResourceId": "MY_RESOURCE_ID", "ResourceType": "AWS::RESOURCE::TYPE", "ResourceConfiguration": "RESOURCE_DEFINITION_AS_PER_THE_RESOURCE_CONFIGURATION_SCHEMA" } }

どのルールがリソースに NON_COMPLIANT のフラグを付けたかなど、評価結果に関する詳細を確認するには、get-compliance-details-by-resource CLI コマンドを使用します。

注記

プロアクティブ評価をサポートするマネージドルールのリストについては、「評価モード別の AWS Config マネージドルールのリスト」を参照してください。

ルールの表示、更新または追加、削除 (API)

ルールを表示するには

DescribeConfigRules アクションを使用します。

ルールを更新または追加するには

PutConfigRule アクションを使用します。

ルールを削除するには

DeleteConfigRule アクションを使用します。

注記

ルールが、無効な評価結果を作成している場合は、これらの結果を削除してから、ルールを修正して新しい評価を実行することをお勧めします。詳細については、「AWS Config ルールから評価結果を削除する」を参照してください。

プロアクティブ評価を使用して、デプロイ前のリソースを評価できます。これにより、AWS リソースを定義するために使用した一連のリソースプロパティが、リージョンのアカウントにあるプロアクティブなルールセットに照らして、COMPLIANT または NON_COMPLIANT であるかを評価できます。

リソースタイプスキーマは、リソースのプロパティを記述します。リソースタイプスキーマは、AWS CloudFormation レジストリ内の「AWS public extensions」または次の CLI コマンドで確認できます。

aws cloudformation describe-type --type-name "AWS::S3::Bucket" --type RESOURCE

詳細については、AWS CloudFormation ユーザーガイドの「AWS CloudFormation レジストリを使用した拡張機能の管理」と「AWS リソースおよびプロパティタイプのリファレンス」を参照してください。

注記

プロアクティブルールは、NON_COMPLIANT のフラグが付けられたリソースを修正したり、これらのリソースのデプロイを妨げたりしません。

ルールのプロアクティブな評価を有効にするには

PutConfigRule アクションを使用して、EvaluationModesPROACTIVE を有効にします。

プロアクティブ評価をオンにすると、StartResourceEvaluation APIと GetResourceEvaluationSummary APIを使用して、これらのコマンドで指定したリソースが、リソースのアカウントのプロアクティブルールに基づいて NON_COMPLIANT としてフラグが設定されるかどうかを確認できます。例えば、StartResourceEvaluation API を開始します。

aws configservice start-resource-evaluation --evaluation-mode PROACTIVE --resource-details '{"ResourceId":"MY_RESOURCE_ID", "ResourceType":"AWS::RESOURCE::TYPE", "ResourceConfiguration":"RESOURCE_DEFINITION_AS_PER_THE_RESOURCE_CONFIGURATION_SCHEMA", "ResourceConfigurationSchemaType":"CFN_RESOURCE_SCHEMA"}'

出力に ResourceEvaluationId が表示されます。

{ "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID" }

次に、ResourceEvaluationId を GetResourceEvaluationSummary API で使用して評価結果を確認します。

aws configservice get-resource-evaluation-summary --resource-evaluation-id MY_RESOURCE_EVALUATION_ID

次のような出力が表示されます。

{ "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID", "EvaluationMode": "PROACTIVE", "EvaluationStatus": { "Status": "SUCCEEDED" }, "EvaluationStartTimestamp": "2022-11-15T19:13:46.029000+00:00", "Compliance": "COMPLIANT", "ResourceDetails": { "ResourceId": "MY_RESOURCE_ID", "ResourceType": "AWS::RESOURCE::TYPE", "ResourceConfiguration": "RESOURCE_DEFINITION_AS_PER_THE_RESOURCE_CONFIGURATION_SCHEMA" } }

どのルールがリソースに NON_COMPLIANT のフラグを付けたかなど、評価結果に関する詳細を確認するには、GetComplianceDetailsByResource API を使用します。

注記

プロアクティブ評価をサポートするマネージドルールのリストについては、「評価モード別の AWS Config マネージドルールのリスト」を参照してください。

ルール評価を Security Hub に送信する

AWS Config ルールを追加した後、ルール評価を AWS Security Hub に送信することもできます。AWS Config と Security Hub の統合により、他の設定ミスやセキュリティの問題と共に、ルール評価をトリアージして修正することができます。

ルール評価を Security Hub に送信する

ルール評価を Security Hub に送信するには、まず AWS Security Hub と AWS Config をセットアップして、少なくとも 1 つの AWS Config 管理ルールまたはカスタムルールを追加する必要があります。その後、AWS Config はすぐに Security Hub へのルール評価の送信を開始します。Security Hub はルール評価を強化して、Security Hub の結果に変換します。

この統合の詳細については、「AWS Security Hub ユーザーガイド」の「使用可能な AWS のサービスの統合」を参照してください。