3

我在尝试执行资源组部署时收到以下错误。

链接授权失败

“具有对象 id '' 的客户端 '' 有权在范围 /subscriptions/<subscriptionid1>/resourcegroups/<rgname1>/providers/Microsoft.Web/certificates/certificatename' 上执行操作 'Microsoft.Web/certificates / write ';但是,它无权对链接范围“/subscriptions/<subscriptionid2>/resourceGroups/<rgname2>/providers/Microsoft.KeyVault/vaults/keyvault01”执行“写入”操作

ARM 模板正在尝试从位于不同订阅中的 Keyvault 获取证书。该模板正在使用服务主体部署,并且已获得KeyVault 的读取权限。

如果我在服务主体的 Keyvault 上设置参与者角色或具有“Microsoft.KeyVault/vaults/write”权限的自定义角色,这将正常工作。我已确保 Microsoft.Azure.WebSites 具有 GET 权限并选中“启用对 Azure 资源管理器的访问以进行模板部署”。

ARM 模板与您在此处看到的类似: https ://github.com/Azure/azure-quickstart-templates/tree/master/201-web-app-certificate-from-key-vault

关于为什么这会因“读者”角色而失败的任何想法。授予对 Keyvault 的写入权限听起来像是分配了比所需更多的权限。

4

1 回答 1

0

要访问密钥保管库中的机密和证书,您需要通过“访问策略”授予权限

https://docs.microsoft.com/en-us/azure/key-vault/key-vault-secure-your-key-vault

于 2019-10-16T10:50:25.640 回答