我正在寻找确定给定密钥保险库是否设置了任何访问策略,并将其用作模板中的条件的条件。如果没有,我要创建访问策略,否则应跳过创建。我怎样才能做到这一点?下面是我现在没有条件表达式的情况。
{
"comments": "Create an Azure Key Vault and add an access policy in the key vault for the webb app.",
"type": "Microsoft.KeyVault/vaults",
"name": "[parameters('KeyVaultName')]",
"apiVersion": "2018-02-14",
"location": "[resourceGroup().location]",
"properties": {
"enabledForDeployment": false,
"enabledForTemplateDeployment": false,
"enabledForVolumeEncryption": false,
"tenantId": "[reference(variables('identity_resource_id'), '2018-11-01', 'Full').identity.tenantId]",
"accessPolicies": [
{
"tenantId": "[reference(variables('identity_resource_id'), '2018-11-01', 'Full').identity.tenantId]",
"objectId": "[reference(variables('identity_resource_id'), '2018-11-01', 'Full').identity.principalId]",
"permissions": {
"secrets": [ "get", "list" ]
}
}
],
"sku": {
"name": "standard",
"family": "A"
}
},
"dependsOn": [
"[resourceId('Microsoft.Web/Sites', variables('webSiteName'))]"
]
},
答案 0 :(得分:2)
您无法真正使用Arm模板检查任何内容,您需要外部化此检查或仅始终应用它们。缺点是-如果您这样做,它将覆盖现有的。或者,您可以在模板中一个接一个地添加策略,这可以同时解决这两种情况。