Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
機密情報をKMS+RDS,S3とParameter Storeを使って保存した話
Search
MATSUURA, yosuke
February 02, 2020
Technology
0
3.3k
機密情報をKMS+RDS,S3とParameter Storeを使って保存した話
機密性が高い情報をAWSに保存するために、KMSを活用してRDS, S3, Parameter Storeに保存したという話
MATSUURA, yosuke
February 02, 2020
Tweet
Share
More Decks by MATSUURA, yosuke
See All by MATSUURA, yosuke
CircleCIとSchemaSpyを使ったMySQLドキュメントの自動生成
bateleurx
1
870
WebRTC配信システムをAWSからオンプレミスに切り替えている話
bateleurx
14
13k
AWS Keymanagement Serviceを知ろう
bateleurx
0
620
VAddy導入案内
bateleurx
0
250
0から始まるかもしれない固定長整数をINT型に入れたい
bateleurx
0
1.8k
Other Decks in Technology
See All in Technology
手を動かしてレベルアップしよう!
maruto
0
240
エンジニア主導の企画立案を可能にする組織とは?
recruitengineers
PRO
1
280
MIMEと文字コードの闇
hirachan
2
1.4k
LINEギフトにおけるバックエンド開発
lycorptech_jp
PRO
0
400
JAWS FESTA 2024「バスロケ」GPS×サーバーレスの開発と運用の舞台裏/jawsfesta2024-bus-gps-serverless
ma2shita
3
290
目標と時間軸 〜ベイビーステップでケイパビリティを高めよう〜
kakehashi
PRO
8
910
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
3k
20250304_赤煉瓦倉庫_DeepSeek_Deep_Dive
hiouchiy
2
120
役員・マネージャー・著者・エンジニアそれぞれの立場から見たAWS認定資格
nrinetcom
PRO
4
6.5k
OPENLOGI Company Profile for engineer
hr01
1
20k
IAMのマニアックな話2025
nrinetcom
PRO
6
1.4k
JavaにおけるNull非許容性
skrb
2
2.7k
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
244
12k
Bash Introduction
62gerente
611
210k
KATA
mclloyd
29
14k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Fireside Chat
paigeccino
35
3.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
4 Signs Your Business is Dying
shpigford
183
22k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Thoughts on Productivity
jonyablonski
69
4.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Transcript
機密情報を と を 使って保存した話 京王線 勉強会
自己紹介 • 蟒蛇 • 名前 松浦 庸介 • • 所属
株式会社 • 表紙のキャラクターは弊社サービス のマスコット「てんちょ」で す •
なのでいきなりオチから • は 内で暗号鍵を統一的に取り扱うための機能 • 機密情報を種類別にそれぞれ以下の方法で保存している • クレデンシャル ( の透過的暗
号化) • 個人情報(テキスト) (自前で暗号化) • 個人情報( ) (自前で暗号化) アンチパターンによれば、 型で に入れた方がよかったらし い・・・ • を呼び出すときの キーは、 でもよいが が便利
と の関係 • はその名の通りパラメーターを保 存する の は で透過的に暗号化される
は とほぼ同じサービス • は暗号鍵を管理するサービス 暗号化は自分でやるか などマネージドサービスで行う 経由で鍵を生成、取得できる この表現は厳密ではないので、参考資料を読んでください
機密性が高い情報を格納したい • 「機密性が高い情報」といっても タイプある 設定情報 たとえば、各種 のクレデンシャルや のパスワード
ユーザー入力情報 たとえば、クレジットカード番号などテキスト 免許証の画像など • 設定情報は • ユーザー入力情報のうち、テキストは も使えるが、 バックアップを考えると のほうがよかった • は暗号化して か
鍵を取得するための キーは • の鍵は で生成・取得する • を利用するための キーの管理はどうすれば • に入れてもよいが、
のほうがお すすめ キーで認証するのではなく、インスタンスメタデータから一時的な認証情 報を生成する • に限らず、 などでも キーより が おすすめ キーの管理は辛いですよね
参考資料 • はだいたいこのあたりを見ればわかります • 開発者ガイド • シリーズ •
再入門 編
発表後に聞かれた質問について
を に保存するのが推奨され ない理由は • 操作の原子性を保証するため • 確かに は に保存した方がストレージコストが安く、削除した容 量が課金されないためコストメリットがあります。
• 一方で と違って の書き込みと の書き込みのどちらかが失敗 したときのエラー処理が必要になります。 で トランザクションで 処理した場合はこの心配がいりません。 • コストと開発効率を天秤にかけてどちらかを選べばよいかと思います。
のデータはすべて暗号化して いる • カラムを暗号化しているのは一部のデータだけですが、 クラス ター全体に透過的暗号化を行っています • 暗号化したカラムは検索などもできないので、重要なデータが入ってい るカラムだけ暗号化して、他は検索できるように平文カラムになってい ます。
• クラスターや ボリュームの透過的暗号化はあまり意味がない気 もしているのですが、運用コストはほとんど変わらないので有効化して います。もしかしたら、対外的にアピールできる日が来るのかもしれま せん・・・