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

启用软删除的Azure Key Vault无法恢复且无法同名重建,如何解决?

恢复处于软删除状态但无法正常列出的Azure Key Vault

问题原因

这种情况大概率是因为软删除的Key Vault记录没在当前订阅的默认检索范围内,或者ARM模板删除时的参数导致记录隐藏,也可能是权限范围没覆盖到软删除资源的检索操作。

解决步骤

1. 指定原区域检索软删除记录

默认的az keyvault list-deleted只会查当前默认区域的记录,你得明确指定Key Vault原来所在的区域:

az keyvault list-deleted --location <原Key Vault所在区域> --subscription <订阅ID>

要是忘了原区域,去Azure门户的「订阅」->「活动日志」里搜Delete Key Vault操作,就能找到对应的区域信息。

2. 直接执行恢复命令

如果上面的命令找到了目标Key Vault,用下面的命令恢复:

az keyvault recover --name <Key Vault名称> --location <原区域> --subscription <订阅ID>

3. 用ARM模板强制触发恢复

要是还是搜不到记录,试试用ARM模板来恢复。创建一个recover-keyvault.json文件,内容如下:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "resources": [
    {
      "type": "Microsoft.KeyVault/vaults",
      "apiVersion": "2023-02-01",
      "name": "<Key Vault名称>",
      "location": "<原区域>",
      "properties": {
        "sku": {
          "family": "A",
          "name": "standard"
        },
        "tenantId": "<你的租户ID>",
        "accessPolicies": [],
        "enableSoftDelete": true,
        "softDeleteRetentionInDays": 90
      }
    }
  ]
}

然后用Azure CLI部署这个模板:

az deployment sub create --location <原区域> --template-file recover-keyvault.json --parameters vaultName=<Key Vault名称> tenantId=<租户ID>

注意:模板里的tenantId必须和原Key Vault的租户ID一致,不然会失败。

4. 检查权限和订阅上下文

确保你用的CLI或DevOps服务连接有Microsoft.KeyVault/deletedVaults/recover/action和Microsoft.KeyVault/vaults/write权限,同时确认当前CLI上下文是正确的订阅:

az account set --subscription <订阅ID>

5. 最后一招:联系Azure支持

如果软删除记录确实存在但工具都搞不定,那可能是平台侧的异常。去Azure门户提交支持工单,提供Key Vault名称、订阅ID、删除时间这些信息,让微软工程师帮忙恢复。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 13:15:14