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.1k
機密情報を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
670
WebRTC配信システムをAWSからオンプレミスに切り替えている話
bateleurx
14
12k
AWS Keymanagement Serviceを知ろう
bateleurx
0
480
VAddy導入案内
bateleurx
0
230
0から始まるかもしれない固定長整数をINT型に入れたい
bateleurx
0
1.5k
Other Decks in Technology
See All in Technology
SWC Transformerから見るTypeScript関数記述ベストプラクティス
fujiyamaorange
1
170
RubyKaigi 2024 - Make Your Own Regex Engine!
makenowjust
0
130
使われないものを作るな!出口から作るデータ分析基盤 / Data Platform Development Starting from the User Needs
amaotone
16
4.5k
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
12
7.9k
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
0
2k
The depthes of profiling Ruby - RubyKaigi 2024
osyoyu
0
130
Autonomous Database Cloud 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
15
36k
データ分析力を高めるSQL研修サービス『SQL Everyone』
hikarut
1
380
iThome2024 Wailing Wall of Enterprise Security
notsurprised
0
280
SLOいつ決めましょう?
abnoumaru
2
150
グイグイ系QAエンジニアでやっていくよ!
____rina____
0
760
Taking Flight with Tailwind CSS
opdavies
0
4.3k
Featured
See All Featured
Writing Fast Ruby
sferik
622
60k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Building an army of robots
kneath
300
41k
Art, The Web, and Tiny UX
lynnandtonic
290
19k
Visualization
eitanlees
137
14k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Code Review Best Practice
trishagee
56
15k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Agile that works and the tools we love
rasmusluckow
325
20k
Debugging Ruby Performance
tmm1
70
11k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
26
2.3k
Transcript
機密情報を と を 使って保存した話 京王線 勉強会
自己紹介 • 蟒蛇 • 名前 松浦 庸介 • • 所属
株式会社 • 表紙のキャラクターは弊社サービス のマスコット「てんちょ」で す •
なのでいきなりオチから • は 内で暗号鍵を統一的に取り扱うための機能 • 機密情報を種類別にそれぞれ以下の方法で保存している • クレデンシャル ( の透過的暗
号化) • 個人情報(テキスト) (自前で暗号化) • 個人情報( ) (自前で暗号化) アンチパターンによれば、 型で に入れた方がよかったらし い・・・ • を呼び出すときの キーは、 でもよいが が便利
と の関係 • はその名の通りパラメーターを保 存する の は で透過的に暗号化される
は とほぼ同じサービス • は暗号鍵を管理するサービス 暗号化は自分でやるか などマネージドサービスで行う 経由で鍵を生成、取得できる この表現は厳密ではないので、参考資料を読んでください
機密性が高い情報を格納したい • 「機密性が高い情報」といっても タイプある 設定情報 たとえば、各種 のクレデンシャルや のパスワード
ユーザー入力情報 たとえば、クレジットカード番号などテキスト 免許証の画像など • 設定情報は • ユーザー入力情報のうち、テキストは も使えるが、 バックアップを考えると のほうがよかった • は暗号化して か
鍵を取得するための キーは • の鍵は で生成・取得する • を利用するための キーの管理はどうすれば • に入れてもよいが、
のほうがお すすめ キーで認証するのではなく、インスタンスメタデータから一時的な認証情 報を生成する • に限らず、 などでも キーより が おすすめ キーの管理は辛いですよね
参考資料 • はだいたいこのあたりを見ればわかります • 開発者ガイド • シリーズ •
再入門 編
発表後に聞かれた質問について
を に保存するのが推奨され ない理由は • 操作の原子性を保証するため • 確かに は に保存した方がストレージコストが安く、削除した容 量が課金されないためコストメリットがあります。
• 一方で と違って の書き込みと の書き込みのどちらかが失敗 したときのエラー処理が必要になります。 で トランザクションで 処理した場合はこの心配がいりません。 • コストと開発効率を天秤にかけてどちらかを選べばよいかと思います。
のデータはすべて暗号化して いる • カラムを暗号化しているのは一部のデータだけですが、 クラス ター全体に透過的暗号化を行っています • 暗号化したカラムは検索などもできないので、重要なデータが入ってい るカラムだけ暗号化して、他は検索できるように平文カラムになってい ます。
• クラスターや ボリュームの透過的暗号化はあまり意味がない気 もしているのですが、運用コストはほとんど変わらないので有効化して います。もしかしたら、対外的にアピールできる日が来るのかもしれま せん・・・