CloudTrail で AWS Config の設定を変更した際のイベントを確認する方法

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

困っていた内容

AWS Config の設定変更を実施したのですが、変更した際のイベントはどのように確認するのでしょうか。

どう対応すればいいの?

CloudTrail のイベント履歴にて、PutConfigurationRecorderPutDeliveryChannel の イベントより、AWS Config で設定を変更した時のイベントを確認することができます。

PutConfigurationRecorder

configurationRecorder より記録するリソースタイプ、AWS Config ロールを確認することができます。
含まれる内容は以下となります。

{
   "ConfigurationRecorder": { 
      "name": "string",
      "recordingGroup": { 
         "allSupported": boolean,
         "includeGlobalResourceTypes": boolean,
         "resourceTypes": [ "string" ]
      },
      "roleARN": "string"
   }
}

PutDeliveryChannel

DeliveryChannel より配信先の S3 バケット名、SNS トピックの ARN を確認することができます。
含まれる内容は以下となります。

{
   "DeliveryChannel": { 
      "configSnapshotDeliveryProperties": { 
         "deliveryFrequency": "string"
      },
      "name": "string",
      "s3BucketName": "string",
      "s3KeyPrefix": "string",
      "s3KmsKeyArn": "string",
      "snsTopicARN": "string"
   }
}

やってみた

PutConfigurationRecorder

実際に以下のリソースタイプを追加するため、AWS Config の設定を変更して、CloudTrail のイベント履歴を確認しました。

  • AWS::EC2::VPNConnection
  • AWS::EC2::VPNGateway

resourceTypes に追加されたリソースタイプが含まれていることが分かります。

{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AIDAJ45Q7YFFAREXAMPLE:hogehoge",
        "arn": "arn:aws:sts::123456789012:assumed-role/hogehoge",
        "accountId": "123456789012",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AIDAJ45Q7YFFAREXAMPLE",
                "arn": "arn:aws:iam::123456789012:role/hogehoge",
                "accountId": "123456789012",
                "userName": "hogehoge"
            },
            "webIdFederationData": {},
            "attributes": {
                "creationDate": "2022-08-10T07:21:07Z",
                "mfaAuthenticated": "true"
            }
        }
    },
    "eventTime": "2022-08-10T08:16:06Z",
    "eventSource": "config.amazonaws.com",
    "eventName": "PutConfigurationRecorder",
    "awsRegion": "ap-northeast-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
    "requestParameters": {
        "configurationRecorder": {
            "roleARN": "arn:aws:iam::123456789012:role/config-role",
            "name": "default",
            "recordingGroup": {
                "allSupported": false,
                "includeGlobalResourceTypes": false,
                "resourceTypes": [
                    "AWS::EC2::VPNConnection",
                    "AWS::EC2::VPNGateway"
                ]
            }
        }
    },
    "responseElements": null,
    "requestID": "c745f55f-xxxx-xxxx-xxxx-xxxxxxxx",
    "eventID": "4e6a466e-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "readOnly": false,
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "eventCategory": "Management",
    "sessionCredentialFromConsole": "true"
}

PutDeliveryChannel

実際に以下の SNS トピックを追加しました。

  • Topic-config

deliveryChannel に追加された SNS トピックが含まれていることを確認できます。

{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AIDAJ45Q7YFFAREXAMPLE:hogehoge",
        "arn": "arn:aws:sts::123456789012:assumed-role/hogehoge",
        "accountId": "123456789012",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AIDAJ45Q7YFFAREXAMPLE",
                "arn": "arn:aws:iam::123456789012:role/hogehoge",
                "accountId": "123456789012",
                "userName": "hogehoge"
            },
            "webIdFederationData": {},
            "attributes": {
                "creationDate": "2022-08-10T05:31:30Z",
                "mfaAuthenticated": "true"
            }
        }
    },
     "eventTime": "2022-08-10T06:05:02Z",
    "eventSource": "config.amazonaws.com",
    "eventName": "PutDeliveryChannel",
    "awsRegion": "ap-northeast-1",
    "sourceIPAddress": "AWS Internal",
    "userAgent": "AWS Internal",
     "requestParameters": {
        "deliveryChannel": {
            "name": "default",
            "s3BucketName": "account-123456789012",
            "snsTopicARN": "arn:aws:sns:ap-northeast-1:123456789012:Topic-config"
        }
    },
    "responseElements": null,
    "requestID": "8b97e572-xxxx-xxxx-xxxx-xxxxxxxx",
    "eventID": "2f12a4f2-xxxx-xxxx-xxxx-xxxxxxxxxx",
    "readOnly": false,
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "eventCategory": "Management",
    "sessionCredentialFromConsole": "true"
}

参考情報