説明
EBS ボリュームには、アプリケーションデータ、ログ、一時ファイル、運用資産などが保存されます。保存時の暗号化は、ボリュームとそのデータから作成するスナップショットを保護します。
実際の暗号化には、元のスナップショットやリージョンの EBS 既定の暗号化も関係します。encrypted の省略や false だけで非暗号化と判断せず、状態を確認してください。
想定される影響
非暗号化ボリュームやスナップショットを不正に取得されると、機密情報が漏えいするおそれがあります。一部のボリュームだけが組織の暗号化基準を満たさずに残る場合もあります。
対処方法
- 新規ボリュームに
encrypted = trueを設定し、作成モジュールやテンプレートにも適用してください。 - 必要な KMS 権限と、作成されたボリュームの実際の暗号化を確認してください。
- 既存の非暗号化ボリュームは、暗号化したスナップショットのコピーから新しいボリュームを作成して移行してください。Terraform の置き換え、整合性、インスタンスへの接続を検討し、検証が終わるまで元のデータを保持してください。
例
ボリューム作成設定の抜粋です。アベイラビリティゾーンは使用するインスタンスと一致させる必要があり、接続設定は別途必要です。
変更前
hcl
resource "aws_ebs_volume" "app_data_volume" {
availability_zone = "us-west-2a"
size = 40
encrypted = false
}
ボリュームの暗号化を明示的には要求していません。リージョンの既定値も含め、実際の暗号化を確認してください。
変更後
hcl
resource "aws_ebs_volume" "app_data_volume" {
availability_zone = "us-west-2a"
size = 40
encrypted = true
}
新規ボリュームの暗号化を要求します。このフラグだけで既存ボリュームが暗号化されるわけではありません。