Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
そのS3暗号化ちょっと待って(SSE-S3とSSE-KMSの違いと注意点)
Search
k_sasano
October 25, 2024
1k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
そのS3暗号化ちょっと待って(SSE-S3とSSE-KMSの違いと注意点)
k_sasano
October 25, 2024
Featured
See All Featured
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
290
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
Mind Mapping
helmedeiros
1
380
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
520
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
Evolving SEO for Evolving Search Engines
ryanjones
0
300
Building AI with AI
inesmontani
PRO
1
1.3k
How to make the Groovebox
asonas
2
2.5k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
430
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Transcript
そのS3暗号化ちょっと待って (SSE-S3とSSE-KMSの違いと注意点) 氏名:笹野 拳太郎
目次 • 自己紹介 • はじめに • ざっくりサーバサイド暗号化振り返る • S3で利用できる暗号化キーの説明/特徴 •
まとめ
自己紹介 名前:笹野拳太郎 Qiita:https://qiita.com/kaburagi_ 仕事内容:AWS基盤の設計・保守 最近興味:セキュリティ系サービス
• 自己紹介 • はじめに • ざっくりサーバサイド暗号化振り返る • S3で利用できる暗号化キーの説明/特徴 • まとめ
はじめに ◆S3のサーバーサイド暗号化キーは何を使用していますか? • 暗号化キーに対する特別な要件が無い場合、 SSE-S3が第一候補に挙がるかと思います S3 Managed DataKey 暗号化キーの要件ないし、 何となくデフォルトでええやろの精神
Amazon S3 Object
はじめに AWS KMS key 暗号化キーの要件ないし、 何となくデフォルトでええやろ Amazon S3 ◆S3のサーバーサイド暗号化キーは何を使用していますか? •
暗号化キーに対する特別な要件が無い PJ の場合、 SSE-S3が第一候補に挙がるかと思います • ただ、何となくデフォルト設定であるSSE-S3を選択していませんか? 今日はこの何となくを少しでも 解消できたらと思います。
目次 • 自己紹介 • はじめに • ざっくりサーバサイド暗号化振り返る • S3で利用できる暗号化キーの説明/特徴 •
まとめ
ざっくりサーバサイド暗号化振り返る ◆ざっくりサーバサイド暗号化をおさらい • 名前の通りサーバー(ストレージ)側で暗号/復号化される暗号方式 • 利用者側で鍵管理は不要、データ格納時にサーバ側で自動的に暗号化され、 利用時には自動的に復号化 Encrypted data put
object Data key 利用者(クライント)
ざっくりサーバサイド暗号化振り返る Encrypted data put object Data key 利用者(クライント) ストレージに対する盗難や発生不正アクセ スから防御してくれることが目的
攻撃者 通信の暗号化は別途検討が必要 ◆盗難や不正アクセスから防御
目次 • 自己紹介 • はじめに • ざっくりサーバサイド暗号化振り返る • S3で利用できる暗号化キーの説明/特徴 •
まとめ
S3で利用できる暗号化キーの説明/特徴 ◆S3 におけるサーバーサイド暗号化オプションは、 以下 5 パターンに分類できます。 • SSE-S3 • SSE-KMS(AWS
マネージドキー) • SSE-KMS(カスタマーマネージドキー) • SSE-C • DSSE-KMS
S3で利用できる暗号化キーの説明/特徴 ◆今回は利用が限定的な「SSE-C」「DSSE-KMS」は除外した上で、 それぞれの特徴を確認します。 • SSE-S3 • SSE-KMS(AWS マネージドキー) • SSE-KMS(カスタマーマネージドキー)
• SSE-C • DSSE-KMS
S3で利用できる暗号化キーの説明/特徴 ◆SSE-S3 • デフォルトで設定される暗号方式 • Amazon S3がキーの生成・管理・保管を行う • 透過的に暗号化・復号化されるため、S3 へのアクセス権があれば暗号・復号が可能
S3 Managed DataKey Amazon S3 Object Encrypted Object put object 利用者(クライント) Encryot
S3で利用できる暗号化キーの説明/特徴 SSE-S3:監視/明示的な制御はできないけど安価なマネージドキー ◆コスト • 利用料無料 ◆監査 • いつ/誰がキーを利用したのか追跡不可 ◆アクセス制御 •
S3 へのアクセス権限がある場合、 透過的(リクエスト側設定不要)に利用できるため制御不可 ◆拡張性 • 設定追加/変更不可能 ◆運用性 • AWS マネージドにつき運用不要、不定期で自動ローテーション
S3で利用できる暗号化キーの説明/特徴 ◆SSE-KMS(AWS マネージドキー) • RDSなどでもお馴染み「aws/{サービス名}」形式の名前 • AWS KMS がキーの生成・管理・保管を行う •
鍵の利用証跡が確認可能 DataKey Amazon S3 Object Encrypted Object put object 利用者(クライント) AWS KMS) AWS Cloud Encryot オブジェクトごとに異なる 暗号鍵 を生成
S3で利用できる暗号化キーの説明/特徴 SSE-KMS(AWS マネージドキー): 監査ができて明示的な制御ができないマネージドキー ◆コスト • 作成・保管無料だがAPI リクエストごとに料金発生 ◆監査 •
利用時はKMSに関連する API が発行されるため、CloudTrail より確認可能 ◆アクセス制御 • AWS 側がサービス単位で利用を制限するキーポリシーを付与(ポリシー変更不可) ◆拡張性 • 設定追加/変更不可 ◆運用性 • AWS マネージドにつき運用不要、1年単位で自動ローテーション
S3で利用できる暗号化キーの説明/特徴 ◆SSE-KMS(カスタマーマネージド) • 任意のキーを用いて暗号化可能 • リソースポリシーによるアクセス制御可能 • 暗号/復号化の際にはKMSのアクセス権限が必要 DataKey Amazon
S3 Object Encrypted Object put object 利用者(クライント) AWS KMS AWS Cloud Encryot オブジェクトごとに異なる 暗号鍵 を生成 管理者 キー生成/ポリシー等の設定
S3で利用できる暗号化キーの説明/特徴 SSE-KMS(カスタマーマネージドキー): カスタマイズ性が高いマネージドキー ◆コスト • 有料(1$/キー+リクエストごとの課金+オプションごとに別途課金) ◆監査 • 利用時は API
が発行されるため、CloudTrail より確認可能 ◆アクセス制御 • キー自体の管理者設定/キーポリシーを用いて利用元を制限することも可能 ◆拡張性 • 任意のキー/暗号化タイプの変更などの設定可能 ◆運用性 • AWS マネージドにつき運用不要+オプションにより自動ローテーション可能 • キーローテーションで作成されたキーを用いてデータの再暗号化が行われないため、 旧/新キーを持ち続けることになる。そのためコストがバージョンごとに発生
S3で利用できる暗号化キーの説明/特徴 項目 SSE-S3 SSE-KMS(AWS マネージド) SSE-KMS(カスタマーマネージド) コスト 〇(利用料無料) △(リクエストごとに課金) ×
(1$/キー+リクエストごとのに 課金+オプションごとに別途課金) 監査証跡 ×(追跡不可) 〇(CloudTrail から確認可) 〇(CloudTrail から確認可) アクセス制御 ×(S3 へのアクセス権限があ る場合、制御不可) △(AWS 側キーポリシーを付与(ポリシー変更不可)、 ポリシー内容も 同一アカウント内のサービスからリクエス ト可能など、広く設定されている) 〇(キー自体の管理者設定/キーポリ シーを設定して利用元を制限する ことも可能) 拡張性 ×(設定追加/変更不可能) ×(設定追加/変更不可能) 〇(任意のキー/暗号化タイプの変更 などの設定可能) 運用性 〇(AWS マネージドにつき運 用不要、不定期で自動ロー テーション) 〇(AWS マネージドにつき運用不要+1年単位で自動ロー テーション) 〇(AWS マネージドにつき運用不要 +オプションにより自動ローテー ション可能) 特筆すべき注意点 ・監査不可につき、監査要件 がある場合は利用が厳しい - ・キーローテーションで作成され たキーを用いてデータの再暗号化 が行われないため、旧/新キーを持 ち続けることになる(コスト ↑)
S3で利用できる暗号化キーの説明/特徴 以下用途においてサポートされている、 バケット暗号化方式は「S3-SSE」一択となります ◆SSE-KMSが利用できないパターン • ALBアクセスログ出力先バケットとして使用する予定がある • NLBアクセスログ出力先バケットとして使用する予定がある • S3アクセスログの出力先バケットとして使用する予定がある
• S3インベントリの出力先バケットとして使用する予定がある
S3で利用できる暗号化キーの説明/特徴 各AWSサービスからの出力先の暗号化要件はリファレンスを見ること ◆SSE-KMSが利用できないパターン • ALBアクセスログ出力先バケットとして使用する予定がある • NLBアクセスログ出力先バケットとして使用する予定がある • S3アクセスログの出力先バケットとして使用する予定がある •
S3インベントリの出力先バケットとして使用する予定がある
目次 • 自己紹介 • はじめに • ざっくりサーバサイド暗号化振り返る • S3で利用できる暗号化キーの説明/特徴 •
まとめ
まとめ 各キーの特徴を抑えて選択理由を説明できるように整理 暗号化キーに対する要件はなく、 アクセス制御はS3バケットポリシーにて行うので コストに秀でているSSE-S3を選択しました。 暗号化キー利用の監査要件がありますが、暗号化キー自体のアクセ ス制御要件はないためSSE-KMS(AWSマネージド)を選択しました。 ただ、コストが発生することとS3の用途によってはSSE-S3利用も 検討させてください。 暗号化キー監査/アクセス制御/任意のキーを使用する要件があるた
め、SSE-KMS(カスタマーマネージド)を選択しました。 ただ、AWS KMS利用制限が要件的に困難であれば別の暗号化方式を 検討します。 SSE-S3を説明する人 SSE-KMS(AWSマネージド)を説明する人 SSE-KMS(カスタマーマネージド)を説明する人