AWS Config ルールの評価モードとトリガータイプ - AWS Config

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

AWS Config ルールの評価モードとトリガータイプ

アカウントにルールを追加するときに、リソースの作成および管理プロセスでリソース AWS Config を評価するタイミングを指定できます。リソースの作成と管理のプロセスは、リソースプロビジョニングと呼ばれます。評価モードを選択して、このプロセスでリソース AWS Config を評価するタイミングを指定します。

ルールに応じて、 はリソースのデプロイ前、リソースのデプロイ後、またはその両方でリソース設定を評価 AWS Config できます。デプロイ前にリソースを評価するのは、プロアクティブ評価です。デプロイ後にリソースを評価するのは、検出評価です。

トリガータイプを選択して、 AWS Config ルールでリソースを評価する頻度を指定することもできます。リソースは、設定変更時、定期的、あるいはその両方で評価できます。

トリガータイプ

アカウントにルールを追加すると、 はリソースをルールの条件 AWS Config と比較します。この最初の評価の後、 は引き続き、評価 AWS Config がトリガーされるたびに評価を実行します。評価のトリガーは、ルールの一部として定義されます。以下のタイプを含めることができます。

トリガータイプ 説明
設定変更 AWS Config は、ルールのスコープに一致するリソースがあり、リソースの設定が変更された場合に、ルールの評価を実行します。評価は、 が設定項目の変更通知 AWS Config を送信した後に実行されます。

どのリソースで評価を開始するかは、ルールのスコープで定義します。スコープには以下を含めることができます。

  • 1 つ以上のリソースタイプ

  • リソースタイプとリソース ID の組み合わせ

  • タグキーとタグ値の組み合わせ

  • 記録対象リソースの作成、更新、または削除時

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

定期的 AWS Config は、24 時間ごとなど、選択した頻度でルールの評価を実行します。
ハイブリッド 一部のルールでは、設定変更と定期的なトリガーの両方があります。これらのルールでは、 は、設定の変更を検出したときと、指定した頻度でリソース AWS Config を評価します。

評価モード

評価モードには 2 種類あります。

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

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

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

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

注記

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

プロアクティブ評価によるマネージドルールのリスト

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

プロアクティブ評価がサポートされているリソースタイプのリスト

プロアクティブ評価がサポートされているリソースタイプのリストを以下に示します。

  • AWS::ApiGateway::Stage

  • AWS::AutoScaling::AutoScalingGroup

  • AWS::EC2::EIP

  • AWS::EC2::Instance

  • AWS::EC2::Subnet

  • AWS::Elasticsearch::Domain

  • AWS::Lambda::Function

  • AWS::RDS::DBInstance

  • AWS::Redshift::Cluster

  • AWS::S3::Bucket

  • AWS::SNS::Topic

プロアクティブ評価によるルールの例

プロアクティブルールの例
  1. AWS Config マネージドルール をアカウントに追加してS3_BUCKET_LOGGING_ENABLED、S3 バケットでログ記録が有効になっているかどうかを確認します。

  2. 評価モードでは、 AWS マネジメントコンソールでプロアクティブ評価を有効にするか、 PutConfigRule API EvaluationModesPROACTIVE を有効にするを選択します。

プロアクティブ評価を有効にしたら、 StartResourceEvaluation API と GetResourceEvaluationSummary API を使用して、本番稼働環境にデプロイされていないアカウントのバケットでログ記録が有効になっていないかどうかを確認できます。これにより、デプロイ前にリソースの設定をテストし、リソースを本番環境にデプロイするかどうかを再評価できます。

例えば、 StartResourceEvaluation API から始めます。

aws configservice start-resource-evaluation --evaluation-mode PROACTIVE --resource-details '{"ResourceId":"MY_RESOURCE_ID", "ResourceType":"AWS::S3::Bucket", "ResourceConfiguration": "{\"BucketName\": \"my-bucket\", \"LoggingConfiguration\": {\"DestinationBucketName\": \"my-log-bucket\",\"LogFilePrefix\":\"my-log\"}}", "ResourceConfigurationSchemaType":"CFN_RESOURCE_SCHEMA"}'

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

{ "ResourceEvaluationId": "MY_RESOURCE_EVALUATION_ID" }

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

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": "{\"BucketName\": \"my-bucket\", \"LoggingConfiguration\": {\"DestinationBucketName\": \"my-log-bucket\",\"LogFilePrefix\":\"my-log\"}}", } }

どのルールがリソースに NON_COMPLIANT のフラグを付けたかなど、評価結果に関する追加情報を表示するには、 GetComplianceDetailsByResource API を使用します。

検出評価は、デプロイ済みのリソースを評価するために使用します。これにより、既存のリソース構成の設定を評価できます。

検出評価によるルールの例

変更によってトリガーされるルールの例
  1. マネージドルールの S3_BUCKET_LOGGING_ENABLED をアカウントに追加し、S3 バケットのログ記録が有効になっているかどうかを確認します。

  2. ルールのトリガータイプは、設定の変更です。S3 バケットが作成、変更、または削除されると、 はルールの評価 AWS Config を実行します。

  3. バケットが更新されると、この設定変更によってルールが開始され、バケットがルールに準拠しているかどうかが AWS Config で評価されます。

定期的なルールの例
  1. マネージドルールの IAM_PASSWORD_POLICY をアカウントに追加します。このルールでは、IAM ユーザーのパスワードポリシーがアカウントポリシーに準拠しているかどうか (最小長や特定の文字の要件を満たしているかどうかなど) を確認します。

  2. ルールのトリガータイプは、24 時間ごとなど、指定した頻度でルールの評価を実行する periodic. AWS Config runs です。

  3. 24 時間ごとにルールが開始され、IAM ユーザーのパスワードがルールに準拠しているかどうかが AWS Config 評価されます。

設定変更トリガーと定期的なトリガーの両方によるハイブリッドルールの例
  1. アカウントの AWS CloudTrail 証跡が有効になっているかどうかと、すべてのリージョンのログ記録を評価するカスタムルールを作成します。

  2. 証跡が作成、更新、または削除されるたびに、ルールの評価を実行 AWS Config したい場合。また AWS Config 、ルールは 12 時間ごとに実行する必要があります。

  3. トリガータイプには、設定変更と定期的なトリガーの両方のロジックを記述します。詳細については、「 AWS Config ルールのコンポーネント: ルールの記述」を参照してください。

設定レコーダーがオフになっているときのルールの評価

設定レコーダーをオフにすると、 はリソース設定の変更の記録を AWS Config 停止します。これは以下のようにルールの評価ルールに影響します。

  • 定期的なトリガールールにより、指定された間隔で継続して評価が実行されます。

  • 変更によってトリガーされたルールでは評価を実行しません。

  • ハイブリッドルールでは、指定された間隔でのみ評価を実行します。設定変更のルールでは評価が実行されません。

  • 設定変更トリガーのルールのオンデマンド評価を実行すると、リソースの最後の知られている状態 (前回記録された設定項目) が評価されます。

重要

不要な AWS Config 評価を避ける

定期ルールとハイブリッドルールは、設定レコーダーをオフにした場合でも、削除しない限り実行を継続します。これらのルールは、設定レコーダーがオフになる前に記録された設定項目のみを評価します。つまり、これらのルールは、新しい情報なしで同じ評価結果を再現します。設定レコーダーをオフにする場合は、不必要なアクティビティやルール評価が行われないようにするため、定期ルールとハイブリッドルールを削除してください。