我无法从Databricks CLI在Azure Databricks上创建秘密范围。我运行这样的命令:
databricks secrets "create-scope" --scope "edap-dev-kv" --scope-backend-type AZURE_KEYVAULT --resource-id "/subscriptions/ba426b6f-65cb-xxxx-xxxx-9a1e1656xxxx/resourceGroups/edap-dev-rg/providers/Microsoft.KeyVault/vaults/edap-dev-kv" --profile profile_edap_dev2_dbx --dns-name "https://edap-dev-kv.vault.azure.net/"
I get error msg:
Error: b'<html>n<head>n<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>n<title>
Error 400 io.jsonwebtoken.IncorrectClaimException:
Expected aud claim to be: 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d, but was: https://management.core.windows.net/.
</title>n</head>n<body><h2>HTTP ERROR 400</h2>n<p>
Problem accessing /api/2.0/secrets/scopes/create.
Reason:n<pre> io.jsonwebtoken.IncorrectClaimException:
Expected aud claim to be: 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d,
but was: https://management.core.windows.net/.</pre></p>n</body>n</html>n'
我已经尝试使用用户(个人)和服务主体的AAD令牌进行操作。(我在某个地方发现它应该是用户帐户的AAD令牌)
我能够使用相同的参数与GUI做到这一点。
在您的情况下,个人访问令牌是为不正确的服务颁发的-它是为https://management.core.windows.net/.
颁发的,但要求您使用Azure Databricks的资源ID -2ff814a6-3304-4ab8-85cb-cd0e6f879c1d
。
最简单的方法是使用az-cli和下面的命令:
az account get-access-token -o tsv --query accessToken
--resource 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d