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
3.4k
0
Share
機密情報をKMS+RDS,S3とParameter Storeを使って保存した話
機密性が高い情報をAWSに保存するために、KMSを活用してRDS, S3, Parameter Storeに保存したという話
MATSUURA, yosuke
February 02, 2020
More Decks by MATSUURA, yosuke
See All by MATSUURA, yosuke
CircleCIとSchemaSpyを使ったMySQLドキュメントの自動生成
bateleurx
1
970
WebRTC配信システムをAWSからオンプレミスに切り替えている話
bateleurx
14
13k
AWS Keymanagement Serviceを知ろう
bateleurx
0
710
VAddy導入案内
bateleurx
0
310
0から始まるかもしれない固定長整数をINT型に入れたい
bateleurx
0
2k
Other Decks in Technology
See All in Technology
Oracle Cloud Infrastructure:2026年5月度サービス・アップデート
oracle4engineer
PRO
1
110
AI時代に改めて考える、ドメイン駆動設計 - モデリングが「AIへの共通言語」になる
littlehands
8
2.4k
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
2
320
Typiaで配信JSONの安全性を構造的に担保する(TSKaigi2026)
righttouch
PRO
1
170
キャリア25年目にしてTypeScript に出会うまで - 「型」を通じて振り返るプログラミング言語遍歴 / Meeting TypeScript After 25 Years in Tech - Looking Back at My Programming Language Journey Through "Types"
bitkey
PRO
2
280
TSKaigi 2026 - enumよ、さようなら
teamlab
PRO
3
550
『家族アルバム みてね』における インシデント対応との向き合い方 / Approach incident response in Family Album
kohbis
2
190
Javaで学ぶSOLID原則
negima
1
130
データ基盤構築・運用の現場から 〜 Snowflake Intelligence 導入で変わった、データ活用の未来 〜
wonohe
0
180
コーポレートサイトのアクセシビリティ改善とJIS準拠への実践
lycorptech_jp
PRO
2
140
責任あるソフトウェアエンジニアリングの紹介4章・5章 / RSE_Ch4-5
ido_kara_deru
0
340
Node.js+TypeScriptにおけるCJS/ESM相互運用の最新ポイント
grainrigi
2
120
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.8k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
200
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
320
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
190
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
340
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
AI: The stuff that nobody shows you
jnunemaker
PRO
7
660
Transcript
機密情報を と を 使って保存した話 京王線 勉強会
自己紹介 • 蟒蛇 • 名前 松浦 庸介 • • 所属
株式会社 • 表紙のキャラクターは弊社サービス のマスコット「てんちょ」で す •
なのでいきなりオチから • は 内で暗号鍵を統一的に取り扱うための機能 • 機密情報を種類別にそれぞれ以下の方法で保存している • クレデンシャル ( の透過的暗
号化) • 個人情報(テキスト) (自前で暗号化) • 個人情報( ) (自前で暗号化) アンチパターンによれば、 型で に入れた方がよかったらし い・・・ • を呼び出すときの キーは、 でもよいが が便利
と の関係 • はその名の通りパラメーターを保 存する の は で透過的に暗号化される
は とほぼ同じサービス • は暗号鍵を管理するサービス 暗号化は自分でやるか などマネージドサービスで行う 経由で鍵を生成、取得できる この表現は厳密ではないので、参考資料を読んでください
機密性が高い情報を格納したい • 「機密性が高い情報」といっても タイプある 設定情報 たとえば、各種 のクレデンシャルや のパスワード
ユーザー入力情報 たとえば、クレジットカード番号などテキスト 免許証の画像など • 設定情報は • ユーザー入力情報のうち、テキストは も使えるが、 バックアップを考えると のほうがよかった • は暗号化して か
鍵を取得するための キーは • の鍵は で生成・取得する • を利用するための キーの管理はどうすれば • に入れてもよいが、
のほうがお すすめ キーで認証するのではなく、インスタンスメタデータから一時的な認証情 報を生成する • に限らず、 などでも キーより が おすすめ キーの管理は辛いですよね
参考資料 • はだいたいこのあたりを見ればわかります • 開発者ガイド • シリーズ •
再入門 編
発表後に聞かれた質問について
を に保存するのが推奨され ない理由は • 操作の原子性を保証するため • 確かに は に保存した方がストレージコストが安く、削除した容 量が課金されないためコストメリットがあります。
• 一方で と違って の書き込みと の書き込みのどちらかが失敗 したときのエラー処理が必要になります。 で トランザクションで 処理した場合はこの心配がいりません。 • コストと開発効率を天秤にかけてどちらかを選べばよいかと思います。
のデータはすべて暗号化して いる • カラムを暗号化しているのは一部のデータだけですが、 クラス ター全体に透過的暗号化を行っています • 暗号化したカラムは検索などもできないので、重要なデータが入ってい るカラムだけ暗号化して、他は検索できるように平文カラムになってい ます。
• クラスターや ボリュームの透過的暗号化はあまり意味がない気 もしているのですが、運用コストはほとんど変わらないので有効化して います。もしかしたら、対外的にアピールできる日が来るのかもしれま せん・・・