<矩形寬度=“1200”高度=“340”rx=“12”填滿=“url(#bg-8461)”/>
<矩形x =“60”y =“50”寬度=“4”高度=“60”rx =“2”填滿=“#fb923c”/>
<矩形x =“80”y =“50”寬度=“121”高度=“28”rx =“14”填滿=“#fb923c”不透明度=“0.15”/>
1. Vault CLI 概述
Vault CLI 是用於與 Vault 伺服器互動的主要命令列工具。 CLI 使用與其他所有客戶端相同的 HTTP API,以確保一致性。
需要環境變數
# Vault 伺服器 匯出 VAULT_ADDR='https://vault.example.com:8200'代幣 xác thực
導出 VAULT_TOKEN='hvs.xxxxx'
命名空間(企業)
導出 VAULT_NAMESPACE='admin/team-a'
跳過 TLS 驗證 (chỉ dev)
導出 VAULT_SKIP_VERIFY=true
CA憑證
導出 VAULT_CACERT='/path/to/ca.pem'
基本 CLI 指令
# Kiểm tra trạng thái vault status登入với các auth方法
vault login # Token-based vault login -method=userpass username=admin vault login -method=oidc
KV操作
vault kv put secret/myapp password="s3cr3t" vault kv get secret/myapp vault kv get -field=password secret/myapp vault kv list secret/ vault kv delete secret/myapp
秘密引擎管理
vault secrets enable -path=kv kv-v2 vault secrets list vault secrets disable kv/
認證方法管理
vault auth enable userpass vault auth list vault auth disable userpass/
策略管理
vault policy write my-policy policy.hcl vault policy read my-policy vault policy list vault policy delete my-policy
操作員命令
vault operator seal vault operator unseal vault operator raft list-peers vault operator raft snapshot save backup.snap
2. Vault HTTP API
Vault 提供完整的 RESTful API。所有操作都可以透過API執行:
# 秘密
curl -s \
--header "X-Vault-Token: hvs.xxxxx" \
https://vault.example.com:8200/v1/secret/data/myapp |傑克
#吉的秘密
curl -s \
--header "X-Vault-Token: hvs.xxxxx" \
--請求貼文\
--data '{"資料": {"密碼": "s3cr3t", "使用者名稱": "admin"}}' \
https://vault.example.com:8200/v1/secret/data/myapp
# Liệt kê 秘密
curl -s \
--header "X-Vault-Token: hvs.xxxxx" \
--請求清單\
https://vault.example.com:8200/v1/secret/metadata/ |傑克
# 健康檢查
curl -s https://vault.example.com:8200/v1/sys/health | jq
3. SDK客戶端
Python(暖通空調)
導入暖通空調客戶端 = hvac.Client(url='https://vault.example.com:8200', token='hvs.xxxxx')
秘密
秘密 = client.secrets.kv.v2.read_secret_version(path='myapp') print(秘密['資料']['資料']['密碼'])#吉的秘密 client.secrets.kv.v2.create_or_update_secret( 路徑='myapp', 秘密=字典(密碼='新密碼',使用者名稱='管理員') )
去
導入 ( “github.com/hashicorp/vault-client-go” )客戶端, _ :=Vault.New( vault.WithAddress("https://vault.example.com:8200"), ) client.SetToken("hvs.xxxxx")
秘密, _ := client.Secrets.KvV2Read(ctx, "myapp", vault.WithMountPath("secret"))
4.保險箱網頁使用者介面
Vault Web UI 提供了由配置中的 ui = true 啟用的視覺化介面。訪問 https://vault.example.com:8200/ui.
網路使用者介面支援:
管理機密引擎和機密
管理身分驗證方法
政策管理
Xem 審核日誌
客戶計數儀表板 (1.21)
秘密恢復(1.21)
5。摘要
Vault 提供三種主要的互動方式:CLI、HTTP API 和 Web UI。 CLI 適用於開發和腳本編寫,API 適用於應用程式集成,Web UI 適用於管理員。下一篇文章將深入探討密封/解封和自動解封機制。