You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为已运行的Vault配置Azure自动解封

配置现有Vault实例使用Azure自动解封(保留原解封密钥)

前提条件

  • 已拥有Azure订阅,可创建Key Vault并配置权限
  • 现有Vault实例处于已解封状态(需修改配置)
  • 本地已安装vault CLI并能连接目标Vault实例

步骤1:在Azure创建用于自动解封的Key Vault并导入原密钥

  1. 登录Azure CLI:
    az login
    
  2. 创建资源组(无则新建):
    az group create --name vault-unseal-rg --location eastus
    
  3. 创建Azure Key Vault:
    az keyvault create --name my-vault-unseal-kv --resource-group vault-unseal-rg --location eastus --enable-rbac-authorization false
    
  4. 导入原解封密钥到Azure Key Vault:
    • 将你的Base64格式解封密钥保存到本地文件(如unseal-key.txt)
    • 执行导入命令:
      az keyvault key import --name vault-unseal-key --vault-name my-vault-unseal-kv --pem-file unseal-key.txt --kty RSA
      

    注意:若原密钥是二进制格式,需先转换为PEM格式再导入。

步骤2:配置Azure服务主体权限

  1. 创建服务主体,供Vault访问Azure Key Vault:
    az ad sp create-for-rbac --name vault-unseal-sp
    
    记录返回的appId、password和tenant信息,后续会用到。
  2. 给服务主体分配Azure Key Vault的密钥权限:
    az keyvault set-policy --name my-vault-unseal-kv --spn <appId> --key-permissions get unwrapKey wrapKey
    

步骤3:更新现有Vault的自动解封配置

  1. 用vault CLI登录目标Vault实例:
    vault login
    
  2. 启用Azure自动解封插件:
    vault write sys/unseal/azure-key-vault \
      tenant_id=<tenant> \
      client_id=<appId> \
      client_secret=<password> \
      vault_name=my-vault-unseal-kv \
      key_name=vault-unseal-key
    
  3. 验证配置:
    vault read sys/unseal/azure-key-vault/config
    
    能正常返回配置信息即为成功。

步骤4:验证自动解封功能

  1. 手动密封Vault:
    vault operator seal
    
  2. 等待数秒后检查状态,若Sealed显示false,说明自动解封生效:
    vault status
    

注意事项

  • 导入到Azure Key Vault的密钥必须和原Vault解封密钥完全一致,否则自动解封会失败
  • 若Vault通过Helm部署,后续升级chart时需避免配置被覆盖,可将自动解封参数加入values.yaml:
    server:
      extraEnvironmentVars:
        VAULT_AZUREKEYVAULT_TENANT_ID: <tenant>
        VAULT_AZUREKEYVAULT_CLIENT_ID: <appId>
        VAULT_AZUREKEYVAULT_CLIENT_SECRET: <password>
        VAULT_AZUREKEYVAULT_VAULT_NAME: my-vault-unseal-kv
        VAULT_AZUREKEYVAULT_KEY_NAME: vault-unseal-key
      unsealConfig:
        enabled: true
        azureKeyVault:
          enabled: true
    

内容的提问来源于stack exchange,提问作者icordoba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 21:25:03