HashiCorp Vaultとは
HashiCorp Vaultは、シークレット管理、暗号化サービス、アクセス制御を提供するオープンソースツールです。APIキー、パスワード、証明書、暗号化キーなどの機密情報を安全に保存し、きめ細かいアクセス制御と監査ログを提供します。
Vaultの主要機能:
- シークレット管理:静的/動的なシークレットの保存と配布
- Encryption as a Service:アプリケーションデータの暗号化
- 動的シークレット:データベース認証情報のオンデマンド生成
- PKI:証明書の発行と管理
- アクセス制御:ポリシーベースの権限管理
AIエンジニアとしての実体験
AIエンジニアとして、機械学習パイプラインでのシークレット管理にVaultを活用しています。APIキー、データベース接続情報、モデルストレージの認証情報などを安全に管理できます:
# Vault CLIでシークレットを保存
vault kv put secret/ml-pipeline/openai api_key="sk-..."
# シークレットの取得
vault kv get -field=api_key secret/ml-pipeline/openai
# 動的データベースシークレットの取得
vault read database/creds/ml-readonly
# Pythonでの使用例
import hvac
client = hvac.Client(url='https://vault.example.com:8200')
client.token = os.environ['VAULT_TOKEN']
# シークレットの取得
secret = client.secrets.kv.v2.read_secret_version(
path='ml-pipeline/openai'
)
api_key = secret['data']['data']['api_key']
Kubernetesとの統合
Kubernetesでのシークレット管理にVaultを使用する設計:
# Vault Agent Sidecar Injector
apiVersion: v1
kind: Pod
metadata:
annotations:
vault.hashicorp.com/agent-inject: "true"
vault.hashicorp.com/role: "ml-pipeline"
vault.hashicorp.com/agent-inject-secret-config: "secret/ml-pipeline/config"
spec:
containers:
- name: ml-app
image: ml-inference:latest
最新動向(2026年)
Vault Enterprise
大規模環境向けに、レプリケーション、ネームスペース、高度な監査機能が提供されています。
クラウドマネージドサービス
HCP Vault(HashiCorp Cloud Platform)により、マネージドなVaultを利用可能。AWS、GCP、Azureとのネイティブ統合も進んでいます。
トラブル事例と対策
⚠️ シールされたVault
症状:再起動後にVaultがシールド状態
対策:オートアンシールを設定(AWS KMS、GCP KMS、Azure Key Vault)。
⚠️ トークンの期限切れ
症状:アプリケーションがシークレットにアクセスできない
対策:トークンの自動更新を実装、Vault Agentの使用を検討。
