EBS ボリュームの暗号化の確認

EBS ボリュームとスナップショットの実際の暗号化を確認し、新規ボリュームには必要な暗号化を指定してください。既存の非暗号化データは別途移行が必要です。

説明

EBS 暗号化は、ボリュームのデータと関連するスナップショットを保護します。新規ボリュームには Encrypted: true を指定し、必要な KMS キーを選んでください。結果にはアカウント・リージョンの既定の暗号化設定や元のスナップショットも影響するため、false や省略だけで実際の非暗号化を断定しないでください。

想定される影響

  • 実際に非暗号化のボリュームとスナップショットにはこの追加保護がなく、データ保護要件を満たさない可能性があります。
  • 必要なキー権限を削除したり、データを移行せずボリュームを替えたりすると、アプリケーションのアクセスや復旧に支障が出る場合があります。

対処方法

  • 実際のボリュームとスナップショットの暗号化・キーを確認してください。新規ボリュームには必要な暗号化を明示し、KMS 権限も確認してください。
  • 既存の非暗号化ボリュームは、整合性のあるスナップショットの暗号化コピーから新しいボリュームを作るなど、対応する手順で移行してください。CloudFormation は既存ボリュームの Encrypted プロパティ更新に対応していません。
  • バックアップ、新しいボリュームの接続、データ検証とサービス停止を計画してください。既定の暗号化を有効にしても、既存ボリュームやスナップショットには遡って適用されません。

例

空のボリュームを新規作成する構成案です。接続先インスタンスと同じアベイラビリティーゾーンを指定してください。データのコピーやボリュームの接続は含みません。

暗号化を要求しない構成

yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: Volume
Parameters:
  VolumeAvailabilityZone:
    Type: AWS::EC2::AvailabilityZone::Name
Resources:
  NewVolume:
    Type: AWS::EC2::Volume
    Properties:
      Size: 100
      Encrypted: false
      AvailabilityZone: !Ref VolumeAvailabilityZone
      Tags:
        - Key: MyTag
          Value: TagValue
    DeletionPolicy: Snapshot

既定の暗号化が無効なら、非暗号化ボリュームが作成される場合があります。実際の結果を確認してください。

暗号化を要求する構成

yaml
AWSTemplateFormatVersion: "2010-09-09"
Description: Volume
Parameters:
  VolumeAvailabilityZone:
    Type: AWS::EC2::AvailabilityZone::Name
Resources:
  NewVolume:
    Type: AWS::EC2::Volume
    Properties:
      Size: 100
      Encrypted: true
      AvailabilityZone: !Ref VolumeAvailabilityZone
      Tags:
        - Key: MyTag
          Value: TagValue
    DeletionPolicy: Snapshot

新規ボリュームを既定の KMS キーで暗号化します。別のキーが必要なら承認済みの KmsKeyId を指定してください。DeletionPolicy: Snapshot はスタック削除時にスナップショットを残しますが、データ移行の代わりにはなりません。

参考資料