S3のデータ保護設計 サーバーサイド暗号化とブロックパブリックアクセスを使い分ける
本記事はSCS試験対策として、Amazon S3におけるデータ保護の基本であるサーバーサイド暗号化とパブリックアクセス制御の設計を解説します。試験では、鍵の管理主体や公開範囲の要件から適切な組み合わせを選ぶ力が問われます。
覚え方のフレームは3つの観点です。暗号化方式(鍵を誰が管理するか)・公開範囲(誰がアクセスできるか)・強制(意図しない設定を防ぐ)。
暗号化方式 SSE-S3・SSE-KMS・SSE-C
SSE-S3はAWSが完全に鍵を管理する最も手軽な方式です。SSE-KMSはKMSのCMKを使い、キーポリシーで復号権限を細かく制御でき、CloudTrailで鍵の利用を監査できます。誰がどのオブジェクトを復号したかを監査ログで追跡したい要件ではSSE-KMSを選びます。SSE-Cは鍵の管理を完全に利用者側で行う方式で、自社の鍵管理システムと連携し、AWS側には鍵を一切保存したくない要件で使います。
公開範囲 バケットポリシーとACL
バケットポリシーはバケット単位、ACLはオブジェクト単位でアクセスを制御しますが、AWSは現在ACLの利用を非推奨としバケットポリシーとIAMポリシーの利用を推奨しています。
強制 ブロックパブリックアクセス
ブロックパブリックアクセスは、アカウントやバケット単位でパブリックなACLやポリシーの設定自体を無効化する強制的な安全弁です。担当者の設定ミスによって意図せずバケットが公開されることを組織全体で防ぎたい要件では、Organizations経由でアカウント全体に強制適用します。
| 方式 | 鍵の管理者 | 選ぶ要件 |
|---|---|---|
| SSE-S3 | AWS | 手軽に既定の暗号化をしたい |
| SSE-KMS | 利用者(KMSのCMK) | 復号権限の統制と監査ログが必要 |
| SSE-C | 利用者(リクエストごとに提供) | 鍵をAWS側に保存したくない |
チェックリスト
- SSE-S3・SSE-KMS・SSE-Cを鍵の管理主体で説明できる
- SSE-KMSで復号操作を監査できる理由を説明できる
- バケットポリシーとACLの違い、ACLの非推奨動向を理解している
- ブロックパブリックアクセスの強制範囲(アカウント・バケット)を説明できる
まとめ
S3のデータ保護は「暗号化方式・公開範囲・強制」の3観点で捉え、監査要件が高い場合はSSE-KMS、意図しない公開防止にはブロックパブリックアクセスを組み合わせるのが定石です。この記事の理解度はクイズで確認し、最新の試験範囲はAWS認定 公式ページで確認しましょう。
SCS(セキュリティ) におすすめの教材
要点整理から攻略する AWS認定 セキュリティ−専門知識 改訂2版
AWS認定 セキュリティ−専門知識 SCS-C02 練習問題集
AWS認定SCS(SCS-C03)対策トレーニングコース
AWS認定SCS 本番模試(4回分/260問)
本セクションにはAmazonアソシエイト・Udemyアフィリエイトのリンクが含まれます。