AWS CLI list-aliases
のレスポンスに、TargetKeyId フィールドがないエイリアスが含まれていることがあります。
aws kms list-aliases { "Aliases": [ { "AliasName": "alias/aws/codecommit", "AliasArn": "arn:aws:kms:ap-northeast-1:xxxxxxxxxxxx:alias/aws/codecommit", "TargetKeyId": "xxxx...", "CreationDate": "2024-06-17T00:34:07.222000+00:00", "LastUpdatedDate": "2024-06-17T00:34:07.222000+00:00" }, { "AliasName": "alias/aws/dynamodb", "AliasArn": "arn:aws:kms:ap-northeast-1:xxxxxxxxxxxx:alias/aws/dynamodb" }, ...
なぜ、KMSキーが割り当てられていないエイリアスが存在するのか疑問に思い、調べてみました。
これらは、AWS が作成した定義済みのエイリアスで、まだ KMS キーとは関連付けられていないものでした。これらの定義済みエイリアスは、通常、サービスの使用をスタートすると AWS 管理キーに関連付けられます。
レスポンスには、TargetKeyId フィールドがないエイリアスが含まれている場合もあります。これらは AWS が作成した定義済みのエイリアスですが、まだ KMS キーとは関連付けられていません。
一部の AWS エイリアスには KMS キーがありません。これらの定義済みエイリアスは、通常、サービスの使用をスタートすると、AWS マネージドキー に関連付けられます。
ちなみに、CreateAlias API は TargetKeyId が必須なので、KMS キーが割り当てられないエイリアスを作成することはできません。