我创建了一个 ARM 模板来部署一个 Azure WebApp,该应用程序使用托管服务身份验证和 KeyVault 来获取机密。因此,ARM 模板创建 WebApp 资源并启用 MSI,还创建 KeyVault 资源并将 WebApptenantid 和 objectid 添加到 accessPolicies,但是,ARM 模板还会从我的 Keyvault 中删除所有其他现有访问策略。
有没有办法对访问策略进行增量部署,这样我就不必在部署后将用户添加回 KeyVault 访问策略?
{
"type": "Microsoft.KeyVault/vaults",
"name": "[parameters('ICMODSKeyVaultName')]",
"apiVersion": "2016-10-01",
"location": "[resourceGroup().location]",
"properties": {
"sku": {
"family": "A",
"name": "standard"
},
"tenantId": "[reference(variables('identityResourceId'), '2015-08-31-PREVIEW').tenantId]",
"accessPolicies": [
{
"tenantId": "[reference(variables('identityResourceId'), '2015-08-31-PREVIEW').tenantId]",
"objectId": "[reference(variables('identityResourceId'), '2015-08-31-PREVIEW').principalId]",
"permissions": {
"secrets": [
"get"
]
}
}
],
"enabledForDeployment": true,
"enabledForTemplateDeployment": true
},
"dependsOn": [
"[concat('Microsoft.Web/sites/', parameters('AppName'))]"
]
}
Run Code Online (Sandbox Code Playgroud)