AWS Config を使用してリソースを作成したときに、カスタムメール通知を受け取る方法を教えてください。

所要時間2分
0

Amazon EventBridge が新しい AWS リソースを作成したときに、サービスイベントタイプで開始する Amazon EventBridge ルールを作成しました。ただし、応答は JSON 形式です。

解決策

EventBridge ルールでカスタムイベントパターンを使用して、AWS Config がサポートするリソースタイプと一致させます。次に、応答を Amazon Simple Notification Service (Amazon SNS) トピックにルーティングします。

次の例では、AWS::EC2::Instance リソースタイプを使用して新しい Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを作成したときに、SNS 通知を受け取ります。

注: リソースタイプを、実際の特定の AWS サービスに置き換えます。

次の手順を実行します。

  1. Amazon SNS トピックを作成します
    **注:**Amazon SNS トピックは、AWS Config サービスと同じ AWS リージョンにある必要があります。

  2. EventBridge コンソールを開きます。

  3. ナビゲーションペインで、[ルール][ルールを作成] の順に選択します。

  4. 次の情報を入力します。
    [名前] に、ルールの名前を入力します。
    (オプション) [説明] に、ルールの説明を入力します。
    [ルールタイプ] で、[イベントパターンを含むルール] を選択し、[次へ] を選択します。
    [イベントソース] で、[AWS イベントまたは EventBridge パートナーイベント] を選択します。

  5. [イベントパターン] で、[カスタムパターン (JSON エディタ)] を選択します。その後、次のイベントパターンの例を入力します。

    {
      "source": [
        "aws.config"
      ],
      "detail-type": [
        "Config Configuration Item Change"
      ],
      "detail": {
        "messageType": [
          "ConfigurationItemChangeNotification"
        ],
        "configurationItem": {
          "resourceType": [
            "AWS::EC2::Instance"
          ],
          "configurationItemStatus": [
            "ResourceDiscovered"
          ]
        }
      }
    }

    注: リソースタイプ EC2::Instance は、実際のリソースタイプに置き換えます。使用可能なリソースタイプのリストについては、ResourceIdentifierresourceType セクションを参照してください。

  6. [次へ] を選択します。

  7. 次の情報を入力します。
    [ターゲットタイプ] で、[AWS サービス] を選択します。
    [ターゲットを選択] で、[SNS トピック] を選択します。
    [トピック] で、SNS トピックを選択します。
    [その他の設定][ターゲット入力を設定] で、[入力トランスフォーマー] を選択します。

  8. [入力トランスフォーマーを設定] を選択します。次に、[入力パス] テキストボックスの [ターゲット入力トランスフォーマー] に、次のパスの例を入力します。

    {
        "awsRegion": "$.detail.configurationItem.awsRegion",
        "awsAccountId": "$.detail.configurationItem.awsAccountId",
        "resource_type": "$.detail.configurationItem.resourceType",
        "resource_ID": "$.detail.configurationItem.resourceId",
        "configurationItemCaptureTime": "$.detail.configurationItem.configurationItemCaptureTime"
    }
  9. [テンプレート] テキストボックスに、次のテンプレート例を入力します。

    "On <configurationItemCaptureTime> AWS Config service recorded a creation of a new <resource_type> with Id <resource_ID> in the account <awsAccountId> region <awsRegion>. For more details open the AWS Config console at https://console.aws.amazon.com/config/home?region=<awsRegion>#/timeline/<resource_type>/<resource_ID>/configuration"
  10. [確認] を選択します。[次へ] を選択します。

  11. [ルールを作成] を選択します。

イベントタイプの開始時に、カスタムフィールドが入力された SNS メール通知が届きます。

例:

"On ExampleTime AWS Config service recorded a creation of a new AWS::EC2::Instance with Id ExampleID in the account AccountID region ExampleRegion. For more details open the AWS Config console at https://console.aws.amazon.com/config/home?region=*ExampleRegion*#/timeline/AWS::EC2::Instance/*ExampleID*/configuration"

関連情報

特定の AWS サービスイベントタイプに対してカスタム SNS 通知を送信するように GuardDuty の EventBridge ルールを設定する方法を教えてください

AWS Config サービスを使用して、AWS アカウントでリソースが削除されたときにメール通知を受け取る方法を教えてください

AWS公式
AWS公式更新しました 3ヶ月前
コメントはありません