データ暗号化の設計 KMS の鍵管理とエンベロープ暗号化を理解する
本記事はSCS(Security Specialty)を目指す方向けに、AWS KMSを中心としたデータ暗号化の設計を解説します。試験では「規制要件や鍵の管理主体から適切な暗号化方式を選ぶ」力が問われます。
覚え方のフレームは3つの観点です。鍵の所有(誰が鍵を管理するか)・保管対象(保存時か通信時か)・鍵運用(ローテーションと監査)で整理します。
KMSキーの種類と使いどころ
AWSマネージドキーは各サービスが自動管理し手間がかかりません。カスタマーマネージドキー(CMK)はキーポリシー・ローテーション・削除を自分で制御できます。鍵ポリシーを細かく制御し、監査ログや自動ローテーションを要件とする場合はCMKを選びます。専用ハードウェアで鍵を物理的に隔離する厳格な規制要件ではCloudHSMを選びます。
エンベロープ暗号化
大きなデータはデータキーで暗号化し、そのデータキー自体をKMSのキーで暗号化する二段構えの方式です。大容量データを効率的に暗号化しつつ、鍵をKMSで安全に保護したい要件で使う標準手法です。復号時はKMSでデータキーを復号してから本体を復号します。
鍵の権限委譲
キーグラントを使うと、キーポリシーを変更せずに特定プリンシパルへ一時的な使用権限を委譲できます。一時的にLambdaへ復号権限を渡したい要件などで有効です。
| 項目 | AWSマネージドキー | カスタマーマネージドキー | CloudHSM |
|---|---|---|---|
| 管理主体 | AWS | 利用者 | 利用者(専用HSM) |
| ローテーション | 自動 | 自動または手動を選択 | 利用者が管理 |
| 選ぶ要件 | 手軽に暗号化したい | ポリシーと監査を制御したい | 専用ハードで隔離したい |
チェックリスト
- エンベロープ暗号化の仕組みを説明できる
- CMKとAWSマネージドキーの違いを要件で選べる
- キーポリシーとグラントの役割を区別できる
- CloudHSMを選ぶべき規制要件を判断できる
まとめ
暗号化は「所有・保管・運用」の3観点で捉え、標準はCMKによるエンベロープ暗号化です。厳格な鍵隔離要件ではCloudHSMを検討します。この記事の理解度はクイズで確認し、最新の試験範囲はAWS認定 公式ページで確認しましょう。
SCS(セキュリティ) におすすめの教材
要点整理から攻略する AWS認定 セキュリティ−専門知識 改訂2版
AWS認定 セキュリティ−専門知識 SCS-C02 練習問題集
AWS認定SCS(SCS-C03)対策トレーニングコース
AWS認定SCS 本番模試(4回分/260問)
本セクションにはAmazonアソシエイト・Udemyアフィリエイトのリンクが含まれます。