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
HCP Vault Secrets でシークレット管理を始めよう / Getting Star...
Search
ののし
November 14, 2024
Technology
0
210
HCP Vault Secrets でシークレット管理を始めよう / Getting Started with Secret Management Using HCP Vault Secrets
HashiTalks: Japan 2024 で投影した資料です。
ののし
November 14, 2024
Tweet
Share
More Decks by ののし
See All by ののし
シークレット管理だけじゃない!HashiCorp Vault でデータ暗号化をしよう / Beyond Secret Management! Let's Encrypt Data with HashiCorp Vault
nnstt1
3
290
Azure Developer CLI と Azure Deployment Environment / Azure Developer CLI and Azure Deployment Environment
nnstt1
1
480
Terraform にコントリビュートしていたら Azure のコストをやらかした話 / How I Messed Up Azure Costs While Contributing to Terraform
nnstt1
1
730
進化するクラウド管理 -Azure と Terraform の最新トレンド- / Evolving Cloud Management - Latest Trends in Azure and Terraform
nnstt1
0
48
今から、 今だからこそ始める Terraform で Azure 管理 / Managing Azure with Terraform: The Perfect Time to Start
nnstt1
0
420
HashiCorp Ambassador が予想!Red Hat × HashiCorp の未来 / The Future of Red Hat and HashiCorp
nnstt1
1
210
Terraform を使った Front Door の小ネタ / Terraform for Front Door
nnstt1
0
190
つまずきから学ぶ Backstage の Golden Path 構築
nnstt1
2
1.4k
Azure ユーザに捧げる Terraform Cloud 101 / Terraform Cloud 101 for Azure Users
nnstt1
0
570
Other Decks in Technology
See All in Technology
GraphRAG グラフDBを使ったLLM生成(自作漫画DBを用いた具体例を用いて)
seaturt1e
1
130
AWS DMS で SQL Server を移行してみた/aws-dms-sql-server-migration
emiki
0
210
スタートアップの現場で実践しているテストマネジメント #jasst_kyushu
makky_tyuyan
0
120
Implementing and Evaluating a High-Level Language with WasmGC and the Wasm Component Model: Scala’s Case
tanishiking
0
180
SRE × マネジメントレイヤーが挑戦した組織・会社のオブザーバビリティ改革 ― ビジネス価値と信頼性を両立するリアルな挑戦
coconala_engineer
0
140
HonoとJSXを使って管理画面をサクッと型安全に作ろう
diggymo
0
170
クラウドとリアルの融合により、製造業はどう変わるのか?〜クラスメソッドの製造業への取組と共に〜
hamadakoji
0
410
プレイドのユニークな技術とインターンのリアル
plaidtech
PRO
1
330
Linux カーネルが支えるコンテナの仕組み / LF Japan Community Days 2025 Osaka
tenforward
1
120
SCONE - 動画配信の帯域を最適化する新プロトコル
kazuho
1
350
知覚とデザイン
rinchoku
1
540
コンパウンド組織のCRE #cre_meetup
layerx
PRO
1
260
Featured
See All Featured
Gamification - CAS2011
davidbonilla
81
5.5k
Docker and Python
trallard
46
3.6k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Automating Front-end Workflow
addyosmani
1371
200k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
YesSQL, Process and Tooling at Scale
rocio
173
15k
How GitHub (no longer) Works
holman
315
140k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
Code Reviewing Like a Champion
maltzj
526
40k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
116
20k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
A designer walks into a library…
pauljervisheath
209
24k
Transcript
HCP Vault Secrets で シークレット管理を始めよう HashiTalks: Japan 2024-11-14 Taichi Nonoshita
(@nnstt1)
自己紹介 埜下 太一 / Taichi Nonoshita 株式会社エーピーコミュニケーションズ Terraform, Vault, Azure,
Kubernetes HashiCorp Ambassador 2024 Microsoft Top Partner Engineer Award 2024 <Azure> @nnstt1
こんな方に聞いて欲しい • 組織・個人開発にシークレット管理を導入したい方 • Vault は知ってるけど HCP Vault Secrets は知らない方
HashiCorp Vault のおさらい
HashiCorp Vault とは • データ暗号化 • シークレット管理 クラウドやアプリケーションを跨がり、 インフラで必要なシークレットを一元管理 環境やワークロードを跨がり、
アプリケーションデータを暗号化して保護
• Vault Community Edition ◦ シークレット管理/暗号化の基本機能を無償提供 • Vault Enterprise ◦
Namespace や 高可用性クラスタ などの企業向け機能を提供 ◦ セキュリティ要件が高い組織向け • HCP Vault Dedicated ◦ Enterprise 相当のマネージド Vault クラスタを提供 ◦ Azure/AWS とプライベートアクセス可能 少し前までの HashiCorp Vault の種類
Vault クラスタはオーバースペックな場合もある • 組織が小規模・個人開発 • Vault でシークレット管理以外の機能を使う予定がない ◦ データ暗号化、証明書管理… •
Vault 自体の運用が不安 ◦ アクセスコントロール、ポリシー、Namespace… • 費用感が合わない
None
HCP Vault Secrets (HVS) の特徴 • クラスタ管理は不要 ◦ HCP 上で提供されるマネージドサービス
◦ シークレット管理に注力 • 機能はシークレット管理に限定 ◦ スモールに始められる ◦ 学習コストが低い • シークレット数の課金 ◦ 費用を予想しやすい ◦ 用途に応じたプランあり
HCP Vault Secrets のはじめ方
HCP Vault Secrets のはじめ方 1. HCP (HashiCorp Cloud Platform) へログイン
https://portal.cloud.hashicorp.com/sign-in
HCP Vault Secrets のはじめ方 2. Organization と Project を作成 Organization
• 請求、ユーザーアクセスの管理単位 • 組織内で Organization 作成済みの場合は招待してもらう ◦ 1アカウントで作れる Organization は1つだけ
HCP Vault Secrets のはじめ方 2. Organization と Project を作成 Organization
Project “Stage” Project “Production” • HCP リソースをまとめる単位 • ワークロードや環境などで分割 ◦ プロジェクト毎の費用が分かる ◦ RBAC に影響してくる(後述)
HCP Vault Secrets のはじめ方 3. HCP Vault Secrets でアプリケーションを作成
HCP Vault Secrets のはじめ方 3. HCP Vault Secrets でアプリケーションを作成 Organization
Project “Stage” Project “Production” App“foo” App“bar” App“foo” App“bar” • シークレットを管理する単位 • Kubernetes の Secret リソースに似ている
HCP Vault Secrets のはじめ方 4. アプリケーション内に Key-Value 形式でシークレットを登録 シークレット値は参 照可能
HCP Vault Secrets のはじめ方 4. アプリケーション内に Key-Value 形式でシークレットを登録 Organization Project
“Stage” Project “Production” App“foo” App“bar” App“foo” App“bar” 🔑 🔑 🔑 🔑 🔑 🔑 🔑 🔑
HCP Vault Secrets の シークレットを使う
プッシュ型とプル型 シークレットの利用方法 App 🔑 🔑 AWS Secrets Manager CLI Azure
Key Vault Google Cloud Secrets Manager GitHub Actions HCP Terraform Vercel API Kubernetes プッシュ プル
アプリケーション毎に「Secrets Sync」を設定 • クラウドプロバイダーのシークレットマネージャーや CI ツールとシークレットを同期 • 1アプリケーションに対して複数の同期先を設定できる • 各サービスのシークレットを一元管理
プッシュ型 App 🔑 🔑 AWS Secrets Manager Azure Key Vault Google Cloud Secrets Manager GitHub Actions HCP Terraform Vercel Secrets Sync プッシュ
利用するユーザ/システム側からシークレットを取得 • CLI は hcp コマンドを利用可能 • Kubernetes は Vault
Secrets Operator を利用可能 プル型 CLI API Kubernetes プル App 🔑 🔑
プラン 3種類のプラン毎に制約が異なる • 登録できるシークレット数、Secrets Sync 設定数、シークレットの履歴 • Plus プラン限定の機能 Free
Standard Plus 料金 無料 $0.50/シークレット/月 $0.95/シークレット/月 アプリケーション 25 1,000 10,000 静的シークレット 25 2,500 25,000 Auto rotating シークレット - - 5,000 動的シークレット - - 5,000 シークレットのバージョン 5 50 50 Secrets Sync 5 200 2000
下にいくほど安全なシークレット シークレット管理のベストプラクティス Unmanaged secrets Vaulted Rotated Dynamic Short-lived + unique
secret Medium-lived + shared secret Long-lived + shared secret
Auto rotating シークレット • シークレットの存続期間を中程度に保つ ◦ 30日 or 60日 or
90日でシークレットを自動更新 ◦ AWS、Google Cloud、MongoDB Atlas、Twilio をサポート ◦ Plus プラン限定 🔑 App AWS 1.ローテーション 2.シークレット参照 3.更新されたシーク レットで認証
動的シークレット (beta) • Just In Time でシークレットを作成 ◦ シークレットの存続期間が短い ◦
AWS、Google Cloud をサポート、DB などは未サポート ◦ Plus プラン限定 🔑 App AWS 2.シークレット作成 4.作成されたシーク レットで認証 1.シークレット参照 3.シークレット応答
HCP Vault Secrets を 使う上での注意点
注意点 • API リミット ◦ 6000 リクエスト/分 ◦ プル型、特に Kubernetes
の場合は上限に到達しやすい • RBAC で細やかな設定は(まだ)できない ◦ 組み込みロールは管理者と閲覧者のみ ◦ 権限付与はプロジェクト単位 • パブリックアクセスのみ ◦ HCP Vault Dedicated のようなプライベートエンドポイントは 払い出されない
まとめ
まとめ HCP Vault Secrets はシークレット管理に特化した マネージドサービス 1 Secrets Sync でシークレットマネージャー/CIツールと
連携して一元管理 2 ベストプラクティスに対応したシークレット管理が可能 3
None