Amazon SNS ConfigurationItemChangeNotification 通知の configurationItemDiff フィールドを理解するにはどうすればよいですか?

最終更新日: 2021 年 4 月 29 日

ConfigurationItemChangeNotification Amazon Simple Notification Service (Amazon SNS) の通知を受け取りました。この通知を受け取ったのはなぜですか? また、configurationItemDiff フィールドの情報をどのように解釈すればよいですか?

解決方法

AWS Config は、リソースの設定が変更されるたびに (作成/更新/削除) 設定項目を作成します。AWS Config がサポートするリソースのリストについては、サポートされているリソースタイプをご参照ください。AWS Config は、変更が発生したときに Amazon SNS を使用して通知を配信します。Amazon SNS 通知ペイロードには、特定の AWS リージョンにおけるリソースの変更を追跡するのに役立つフィールドが含まれています。詳細については、構成項目の変更通知の例をご参照ください。

ConfigurationItemChangeNotification を受け取る理由を理解するには、configurationItemDiff の詳細を確認します。フィールドは変更タイプによって異なり、UPDATE-UPDATE、UPDATE-CREATE、DELETE-DELETE などの異なる組み合わせを形成する場合があります。以下は、一般的な組み合わせの説明です。

UPDATE-CREATE と UPDATE-UPDATE

次の例では、リソースの直接関係とリソースの設定の変更が含まれます。configurationItemDiff の詳細からは、次の情報を読み取ることができます。

実行されたアクション: アカウントに存在する管理ポリシーが AWS Identity and Access Management (IAM) ロールにアタッチされました。

実行された基本的なオペレーション: UPDATE (アカウント内のリソースタイプ AWS::IAM::Policy の関連付けの数の更新)。

変更タイプの組み合わせ:

  1. リソースの直接関係の変更の UPDATE-CREATE。IAM ポリシーと IAM ロールの間に新しいアタッチメントまたは関連付けが作成されました。
  2. リソースの設定の変更の UPDATE-UPDATE。IAM ロールにポリシーがアタッチされたときに、IAM ポリシーの関連付けの数が 2 から 3 に増加しました。

UPDATE-CREATE および UPDATE-UPDATE の configurationItemDiff 通知の例:

{
    "configurationItemDiff": {
        "changedProperties": {
            "Relationships.0": {
                "previousValue": null,
                "updatedValue": {
                    "resourceId": "AROA6D3M4S53*********",
                    "resourceName": "Test1",
                    "resourceType": "AWS::IAM::Role",
                    "name": "Is attached to Role"
                },
                "changeType": "CREATE"                >>>>>>>>>>>>>>>>>>>> 1
            },
            "Configuration.AttachmentCount": {
                "previousValue": 2,
                "updatedValue": 3,
                "changeType": "UPDATE"                 >>>>>>>>>>>>>>>>>>>> 2
            }
        },
        "changeType": "UPDATE"
    }
}

UPDATE-DELETE

次の例は、リソースの直接関係の変更を含んでいます。configurationItemDiff の詳細からは、次の情報を読み取ることができます。

実行されたアクション: アカウントに存在する管理ポリシーが IAM ユーザーからデタッチされました。

実行された基本的なオペレーション: UPDATE (リソースタイプ AWS::IAM::User に関連付けられたアクセス権限ポリシーの更新)。

変更タイプの組合せ: リソースの直接関係の変更の UPDATE-DELETE。アカウント内の IAM ユーザーと IAM ポリシーの関連付けが削除されました。

UPDATE-DELETE の configurationItemDiff 通知の例:

{
  "configurationItemDiff": {
    "changedProperties": {
      "Configuration.UserPolicyList.0": {
        "previousValue": {
          "policyName": "Test2",
          "policyDocument": "{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "ec2:RunInstances",
            "Resource": "arn:aws:ec2:*:*:instance/*",
            "Condition": {
                "StringLike": {
                    "aws:RequestTag/VPCId": "*"
                }
            }
        }
    ]
}"
        },
        "updatedValue": null,
        "changeType": "DELETE"                                >>>>>>>>>>>>>>>>>>>> 3
      }
    },
    "changeType": "UPDATE"
  }
}

DELETE-DELETE

次の例では、リソースの直接関係とリソースの設定の変更が含まれます。configurationItemDiff の詳細からは、次の情報を読み取ることができます。

実行されたアクション: アカウントに存在する IAM ロールが削除されました。

実行された基本的なオペレーション: DELETE (リソースタイプ AWS::IAM::Role のリソースが削除されました)。

変更タイプの組合せ: リソースの直接関係の変更およびリソースの設定の変更の DELETE-DELETE。IAM ロールの削除により、IAM ポリシーと IAM ロールとの関連付けも削除されました。

DELETE-DELETE の configurationItemDiff 通知の例:

{
  "configurationItemDiff": {
    "changedProperties": {
      "Relationships.0": {
        "previousValue": {
          "resourceId": "ANPAIJ5MXUKK*********",
          "resourceName": "AWSCloudTrailAccessPolicy",
          "resourceType": "AWS::IAM::Policy",
          "name": "Is attached to CustomerManagedPolicy"
        },
        "updatedValue": null,
        "changeType": "DELETE"
      },
      "Configuration": {
        "previousValue": {
          "path": "/",
          "roleName": "CloudTrailRole",
          "roleId": "AROAJITJ6YGM*********",
          "arn": "arn:aws:iam::123456789012:role/CloudTrailRole",
          "createDate": "2017-12-06T10:27:51.000Z",
          "assumeRolePolicyDocument": "{"Version":"2012-10-17","Statement":[{"Sid":"","Effect":"Allow","Principal":{"AWS":"arn:aws:iam::123456789012:root"},"Action":"sts:AssumeRole","Condition":{"StringEquals":{"sts:ExternalId":"123456"}}}]}",
          "instanceProfileList": [],
          "rolePolicyList": [],
          "attachedManagedPolicies": [
            {
              "policyName": "AWSCloudTrailAccessPolicy",
              "policyArn": "arn:aws:iam::123456789012:policy/AWSCloudTrailAccessPolicy"
            }
          ],
          "permissionsBoundary": null,
          "tags": [],
          "roleLastUsed": null
        },
        "updatedValue": null,
        "changeType": "DELETE"
      }
    },
    "changeType": "DELETE"
  }

この記事はお役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?