AMI またはスナップショットの暗号化情報を表示するにはどうすればよいですか?
最終更新日: 2020 年 10 月 8 日
Amazon マシンイメージ (AMI) またはスナップショットが暗号化されているかどうか、また暗号化されている場合は AWS マネージド型カスタマーマスターキー (CMK) とカスタマーマネージド型 CMK のどちらを使用しているか、どうすれば判断できますか?
簡単な説明
スナップショットまたは AMI の暗号化情報を表示するには、コンソールまたは AWS コマンドラインインターフェイス (AWS CLI) を使用します。
解決方法
注意:
- AWS CLI コマンドの実行時にエラーが発生した場合は、AWS CLI の最新バージョンを使用していることを確認してください。
- デフォルトの AWS CLI 出力は JSON です。次の例に示すように、デフォルトを使用するか、またはコマンドに --output json を追加して、出力を受け取ることができます。詳細については、「--query オプションを使用して出力をフィルタリングする方法」を参照してください。
AWS CLI コマンドを使用して暗号化情報を表示する
1. BlockDeviceMappings クエリフィルターを使用して describe-images コマンドを実行し、AMI に関連付けられたスナップショットを表示します。次の例の image-ids と region を、お使いの AMI の ID とリージョンに置き換えます。
# aws ec2 describe-images --image-ids ami-xxxxxxxxx --region eu-west-1 --query "Images[*].BlockDeviceMappings"
[
[
{
"DeviceName": "/dev/xvda",
"Ebs": {
"DeleteOnTermination": true,
"SnapshotId": "snap-xxxxxxxxx",
"VolumeSize": 8,
"VolumeType": "gp2",
"Encrypted": true
}
}
]
]
上記のコマンド出力例では、AMI に関連付けられたスナップショットの Encrypted パラメータが true に設定されています。
2. describe-images コマンドの出力に表示されているスナップショットの snapshot-id を使用して、describe-snapshots コマンドを実行します。
# aws ec2 describe-snapshots --snapshot-ids snap-xxxxxxxxx --region eu-west-1
{
"Snapshots": [
{
"Description": "Copied for DestinationAmi ami-xxxxxxxxx from SourceAmi ami-xxxxxxxxx for SourceSnapshot snap-xxxxxxxxx. Task created on 1,579,611,950,318.",
"Encrypted": true,
"KmsKeyId": "arn:aws:kms:eu-west-1:9208xxxxxxxxx:key/dcd4d062-xxxxxxxxx-xxxxxxxxxx",
"OwnerId": "920893848407",
"Progress": "100%",
"SnapshotId": "snap-xxxxxxxxx",
"StartTime": "2020-01-21T13:05:53.887Z",
"State": "completed",
"VolumeId": "vol-ffffffff",
"VolumeSize": 8
}
]
}
コマンド出力の KMSKeyId をメモします。
3. describe-key コマンドを実行して、キーが AWS マネージド型 CMK かカスタマー管理の CMK かを判断します。次のコマンドの key-id を describe-snapshot コマンドに表示されている KMSKeyId に置き換えます。region をスナップショットのリージョンに置き換えます。
# aws kms describe-key --key-id dcd4d062-xxxxxxxxx-xxxxxxxxx --region eu-west-1
{
"KeyMetadata": {
"AWSAccountId": "92xxxxxxxxx",
"KeyId": "dcd4d062-xxxxxxxxx-xxxxxxxx",
"Arn": "arn:aws:kms:eu-west-1:92xxxxxxxxx:key/dcd4d062-xxxxxxxxx-xxxxxxx",
"CreationDate": 1579611763.538,
"Enabled": true,
"Description": "02-ratheed-CMK",
"KeyUsage": "ENCRYPT_DECRYPT",
"KeyState": "Enabled",
"Origin": "AWS_KMS",
"KeyManager": "CUSTOMER",
"CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
"EncryptionAlgorithms": [
"SYMMETRIC_DEFAULT"
]
}
}
上記の出力例では、KeyManager パラメータが Customer となっており、キーがカスタマーマネージド型 CMK であることが示されています。AWS マネージド型キーの場合には、KeyManager パラメータは AWS になります。
コンソールを使用して暗号化情報を表示する
1. Amazon EC2 コンソールを開き、[AMI] を選択します。
2. 詳細を確認したい AMI の ID をコピーします。
3. [Elastic Block Store] で [スナップショット] を選択します。
4. 検索ボックスに AMI ID を貼り付け、ENTER キーを押します。
5. スナップショットを選択し、[説明] タブで [暗号化] が [暗号化済み] または [暗号化なし] のどちらに設定されているかを確認します。スナップショットが暗号化されている場合は、KMS キー ID と KMS キー ARN をメモします。
6. AWS Key Management Service (AWS KMS) コンソールを開きます。
7. [AWS マネージド型キー] を選択し、KMS キー ID をフィルターボックスに貼り付けます。結果が表示されない場合は、[カスタマー管理型のキー] を選択し、KMS キー ID をフィルターボックスに貼り付けます。
注意: AWS マネージド型キーを使用して暗号化された AMI を共有することはできません。詳細については、「Amazon EBS スナップショットの共有 - 考慮事項」を参照してください。