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
900
WebRTC配信システムをAWSからオンプレミスに切り替えている話
bateleurx
14
13k
AWS Keymanagement Serviceを知ろう
bateleurx
0
660
VAddy導入案内
bateleurx
0
260
0から始まるかもしれない固定長整数をINT型に入れたい
bateleurx
0
1.9k
Other Decks in Technology
See All in Technology
マップを速く表示するために
tsuboyan5
0
170
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
1
7.1k
開発も運用もビジネス部門も! クラウドで実現する「つらくない」統制とセキュリティ / Effortless Governance and Security Enabled by the Cloud
kanny
3
1.2k
HA K8s Clusterのスタンダードが覆る!? Cilium 1.18の🔥激アツ🔥新機能
logica0419
0
120
MCP で繋ぐ Figma とデザインシステム〜LLM を使った UI 実装のリアル〜
kimuson
1
930
OSMnx Galleryの紹介
mopinfish
0
120
カンファレンスのつくりかた / The Conference Code: What Makes It All Work
tomzoh
5
600
主要ライブラリの実例に学ぶ、TypeScriptで実現する型安全な座標定義
tiroljpn
1
220
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
730
iOS/Androidで無限循環Carousel表現を考えてみる
fumiyasac0921
0
110
toittaにOpenTelemetryを導入した話 / Mackerel APM リリースパーティ
cohalz
1
170
AI駆動時代の新規事業の作り方
ryohysk
2
140
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.6k
Designing Experiences People Love
moore
142
24k
It's Worth the Effort
3n
184
28k
Documentation Writing (for coders)
carmenintech
71
4.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Being A Developer After 40
akosma
91
590k
GitHub's CSS Performance
jonrohan
1031
460k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Rails Girls Zürich Keynote
gr2m
94
13k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
105
19k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
42
2.3k
Transcript
機密情報を と を 使って保存した話 京王線 勉強会
自己紹介 • 蟒蛇 • 名前 松浦 庸介 • • 所属
株式会社 • 表紙のキャラクターは弊社サービス のマスコット「てんちょ」で す •
なのでいきなりオチから • は 内で暗号鍵を統一的に取り扱うための機能 • 機密情報を種類別にそれぞれ以下の方法で保存している • クレデンシャル ( の透過的暗
号化) • 個人情報(テキスト) (自前で暗号化) • 個人情報( ) (自前で暗号化) アンチパターンによれば、 型で に入れた方がよかったらし い・・・ • を呼び出すときの キーは、 でもよいが が便利
と の関係 • はその名の通りパラメーターを保 存する の は で透過的に暗号化される
は とほぼ同じサービス • は暗号鍵を管理するサービス 暗号化は自分でやるか などマネージドサービスで行う 経由で鍵を生成、取得できる この表現は厳密ではないので、参考資料を読んでください
機密性が高い情報を格納したい • 「機密性が高い情報」といっても タイプある 設定情報 たとえば、各種 のクレデンシャルや のパスワード
ユーザー入力情報 たとえば、クレジットカード番号などテキスト 免許証の画像など • 設定情報は • ユーザー入力情報のうち、テキストは も使えるが、 バックアップを考えると のほうがよかった • は暗号化して か
鍵を取得するための キーは • の鍵は で生成・取得する • を利用するための キーの管理はどうすれば • に入れてもよいが、
のほうがお すすめ キーで認証するのではなく、インスタンスメタデータから一時的な認証情 報を生成する • に限らず、 などでも キーより が おすすめ キーの管理は辛いですよね
参考資料 • はだいたいこのあたりを見ればわかります • 開発者ガイド • シリーズ •
再入門 編
発表後に聞かれた質問について
を に保存するのが推奨され ない理由は • 操作の原子性を保証するため • 確かに は に保存した方がストレージコストが安く、削除した容 量が課金されないためコストメリットがあります。
• 一方で と違って の書き込みと の書き込みのどちらかが失敗 したときのエラー処理が必要になります。 で トランザクションで 処理した場合はこの心配がいりません。 • コストと開発効率を天秤にかけてどちらかを選べばよいかと思います。
のデータはすべて暗号化して いる • カラムを暗号化しているのは一部のデータだけですが、 クラス ター全体に透過的暗号化を行っています • 暗号化したカラムは検索などもできないので、重要なデータが入ってい るカラムだけ暗号化して、他は検索できるように平文カラムになってい ます。
• クラスターや ボリュームの透過的暗号化はあまり意味がない気 もしているのですが、運用コストはほとんど変わらないので有効化して います。もしかしたら、対外的にアピールできる日が来るのかもしれま せん・・・