共有元 EBS スナップショット又は AMI を削除すると、共有先では非表示となるか教えてください

2023.11.13

困っていること

EBS スナップショットと AMI を信頼できる アカウント保有者に共有しています。
共有元の EBS スナップショットを削除すると、共有先のアカウントでは非表示となるのか教えてください。

どう対応すればいいの?

対象 EBS スナップショット又は AMI に対して共有可能な権限を付与しているだけな為、削除した場合は共有先で非表示になります。 なお、共有されているスナップショットを削除しようと試みてもグレーアウトになり叶いません。

スナップショットの許可を変更することで、他の AWS アカウントとスナップショットを共有できます。スナップショットを他のすべての AWS アカウントとパブリックに共有することも、個別の AWS アカウントを指定してプライベートに共有することもできます。許可を受けたユーザーは、共有するスナップショットを使用して自分の EBS ボリュームを作成できますが、元のスナップショットは影響を受けません。

念のため確認してみた

アカウントA で共有元になる EBS スナップショットのアクセス権限を変更。
共有先アカウントB を追加。

共有先アカウントB で対象の EBS スナップショットが共有されていることを確認。
※共有されるまで 1 分程度でした。

アカウントA で共有元の対象スナップショットを削除。

結果、非表示となりました。
※1 分以内には削除が完了しました。

AMI の共有 に関しても同様に確認しましたが、非表示となります。

補足

共有したスナップショットを基に共有先でコピーや EBS ボリューム作成を行うと、共有元の AWS CloudTrail に記録が残ります。

AWS CloudTrail を使用して、他のユーザーと共有しているスナップショットがコピーされているか、ボリュームの作成に使用されているかをモニタリングできます。次のイベントが CloudTrail に記録されます。

・SharedSnapshotCopyInitiated — 共有スナップショットをコピーしています。
・SharedSnapshotVolumeCreated — ボリュームを作成するために共有スナップショットを使用しています。

例)

  • SharedSnapshotCopyInitiated
    ※一部マスクしてます。

    {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AWSAccount",
            "accountId": "281234567890",
            "invokedBy": "ec2.amazonaws.com"
        },
        "eventTime": "2023-11-10T15:23:36Z",
        "eventSource": "ec2.amazonaws.com",
        "eventName": "SharedSnapshotCopyInitiated",
        "awsRegion": "ap-northeast-1",
        "sourceIPAddress": "ec2.amazonaws.com",
        "userAgent": "ec2.amazonaws.com",
        "requestParameters": null,
        "responseElements": null,
        "eventID": "3717636e-2b74-3610-9660-xxxxxxxxxxxx",
        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "managementEvent": true,
        "recipientAccountId": "200987654321",
        "sharedEventID": "24190da2-396e-4218-8168-2xxxxxxxx",
        "serviceEventDetails": {
            "snapshotId": "snap-0521cb2cb2a7efc98"
        },
        "eventCategory": "Management"
    }

  • SharedSnapshotVolumeCreated
    ※一部マスクしてます。

    {
        "eventVersion": "1.08",
        "userIdentity": {
            "type": "AWSAccount",
            "accountId": "281234567890",
            "invokedBy": "ec2.amazonaws.com"
        },
        "eventTime": "2023-11-10T15:33:12Z",
        "eventSource": "ec2.amazonaws.com",
        "eventName": "SharedSnapshotVolumeCreated",
        "awsRegion": "ap-northeast-1",
        "sourceIPAddress": "ec2.amazonaws.com",
        "userAgent": "ec2.amazonaws.com",
        "requestParameters": null,
        "responseElements": null,
        "eventID": "2f4xxx48-8xx7-3cx3-9b2d-9xxxxxxxxx",
        "readOnly": false,
        "eventType": "AwsServiceEvent",
        "managementEvent": true,
        "recipientAccountId": "200987654321",
        "sharedEventID": "30xxx4b8-0xda-43xc-a6be-acxxxxxxxx",
        "serviceEventDetails": {
            "snapshotId": "snap-0521cb2cb2a7efc98"
        },
        "eventCategory": "Management"
    }

なお、AMI をコピーした場合は、SharedSnapshotCopyInitiated が記録されることを確認済みです。

参考資料