在由Azure Key Vault支持的Databrick中创建Secret Scope失败

时间:2019-06-11 05:46:20

标签: azure azure-keyvault azure-databricks

您可以在由Azure Keyvault支持的Databricks中创建范围,而不是使用Databricks CLI。但是,当您尝试创建合并范围时,会显示模糊的错误消息(拼写错误!)。似乎没有多少人遇到此错误:

“向KeyVault:XYZ授予Databricks服务主体的读取/列表权限时发生内部错误”

在这种情况下,将“管理主体”设置为“所有用户”无济于事。

enter image description here

2 个答案:

答案 0 :(得分:1)

我发现这是Azure AD中的服务主体问题。我登录到Databricks的那个特定用户不是AD贡献者,并且仅在Databricks和Keyvault服务上具有贡献者角色。我在AD中没有为Databricks找到任何默认的对象ID,所以我认为它是在动态创建服务主体并将Databricks与Keyvault连接(我在这里可能是错误的-当您启用Databricks资源提供程序时,它可能已经存在于AD中)

以具有创建服务主体权限的管理员身份登录解决了该问题。之后,您可以在Key Vault中看到用于密钥检索的DB服务主体:

enter image description here

答案 1 :(得分:0)

正如@rcabr在其上面的评论中提到的那样,Enterprize Application中已经有一个名称为'AzureDatabricks'的SP,您需要获取对象ID详细信息并将其添加到密钥库的访问策略中。这样,Databricks将能够访问KeyVault enter image description here