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

使用Rest API和Databricks CLI创建Azure KeyVault后端密钥范围遇错求助

解决Databricks密钥范围关联Azure KeyVault的常见问题

错误1:Scope with Azure KeyVault must have userAADToken defined!

该错误表明调用REST API创建密钥范围时,必须携带有效的AAD用户令牌,处理步骤如下:

  • 确保获取的AAD令牌针对https://databricks.azure.net/资源(而非KeyVault),可通过Azure CLI执行以下命令获取:
    az account get-access-token --resource https://databricks.azure.net/ --query accessToken -o tsv
    
  • 调用REST API时,请求头添加Authorization: Bearer <你的AAD令牌>,同时在请求体的userAADToken字段填入同一令牌。示例请求体:
    {
      "scope": "your-scope-name",
      "scope_backend_type": "AZURE_KEYVAULT",
      "backend_azure_keyvault": {
        "resource_id": "/subscriptions/<订阅ID>/resourceGroups/<资源组>/providers/Microsoft.KeyVault/vaults/<密钥库名称>",
        "dns_name": "https://<密钥库名称>.vault.azure.net/"
      },
      "userAADToken": "<你的AAD令牌>"
    }
    

错误2:Databricks CLI执行list-scopes返回Bad Request

此问题多与CLI身份验证配置相关,排查步骤:

  • 检查CLI配置文件(通常在~/.databrickscfg):若用AAD令牌认证,需添加aad_token字段,同时确保host字段为正确的Databricks工作区URL(格式如https://<区域>.azuredatabricks.net);若用个人访问令牌,确认token字段有效。
  • 重新配置CLI的正确方式:
    databricks configure --aad-token
    
    执行后依次输入工作区URL和针对https://databricks.azure.net/的AAD令牌。
  • 确认命令拼写正确:需执行databricks secrets list-scopes,而非list-scopes。

AAD令牌获取失败通用排查

  • 确保当前Azure CLI登录账号拥有Databricks工作区管理员权限,以及Azure KeyVault的访问策略权限(至少含密钥读取权限)。
  • 若账号启用MFA,需通过设备码方式登录获取令牌:
    az login --use-device-code
    
  • 确认当前订阅为目标订阅,可通过以下命令切换:
    az account set --subscription <订阅ID>
    

内容的提问来源于stack exchange,提问作者Syamala Kumar Rama Koti Reddy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 12:10:32