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
41
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 Ambassador が予想!Red Hat × HashiCorp の未来 / The Future of Red Hat and HashiCorp
nnstt1
1
120
Terraform を使った Front Door の小ネタ / Terraform for Front Door
nnstt1
0
76
つまずきから学ぶ Backstage の Golden Path 構築
nnstt1
2
920
Azure ユーザに捧げる Terraform Cloud 101 / Terraform Cloud 101 for Azure Users
nnstt1
0
460
AKS と HCP Vault の組み合わせでつまずいた話 / Stumbles with AKS and HCP Vault combination
nnstt1
1
96
Vault Secrets Operator と HCP Vault を使った AKS のシークレット管理 / AKS secret management using the Vault Secrets Operator and HCP Vault
nnstt1
0
110
Vault Secrets Operator と Dynamic Secrets で安全にシークレットを使おう / Vault Secrets Operator and Dynamic Secrets
nnstt1
4
780
OpenShift を身近に感じる Single Node OpenShift と OpenShift Local / Single Node OpenShift and OpenShift Local that makes OpenShift familiar
nnstt1
1
980
カンタンお手軽?!k8sから使えるラズパイ分散ストレージ / Raspberry Pi distributed storage from k8s
nnstt1
1
1.5k
Other Decks in Technology
See All in Technology
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
390
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
210
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
130
The Role of Developer Relations in AI Product Success.
giftojabu1
1
130
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
120
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
180
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
13k
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
What's in a price? How to price your products and services
michaelherold
243
12k
GraphQLとの向き合い方2022年版
quramy
43
13k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Docker and Python
trallard
40
3.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Site-Speed That Sticks
csswizardry
0
27
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