我有一个用于创建密钥库的 ARM 模板。
出于非常具体的原因,我需要在创建密钥保管库后手动为其设置访问策略。
如果我再次运行我的 ARM 模板(以更改某些设置),我手动设置的访问策略将被删除。
我可以使用什么功能或技巧来拥有将 ARM 模板中的访问策略与手动设置的访问策略相结合的 ARM 模板?
答案 0 :(得分:0)
这可能是因为您可能正在完整模式下部署 ARM 模板。验证用于部署模板的命令并检查是否有任何 -Mode
参数被传递。
具体来说,ARM模板部署有两种模式:
增量:在增量模式下,资源管理器保留资源组中存在但未在模板中指定的未更改资源。模板中的资源被添加到资源组中。
完整:在完整模式下,资源管理器会删除资源组中存在但未在模板中指定的资源。
默认部署模式始终是增量,尽管您可以通过显式传递 -Mode
参数来覆盖它。
要在使用 PowerShell 部署时将 deployment mode 显式设置为 Complete
或 Incremental
,请使用 Mode
参数,如下所示:
New-AzResourceGroupDeployment `
-Mode Incremental `
-Name ExampleDeployment `
-ResourceGroupName ExampleResourceGroup `
-TemplateFile c:\MyTemplates\storage.json
完全跳过 -Mode
参数也与在增量模式下部署一样好。
提示:在部署模板之前始终使用 what-if operation 在完整模式下。 What-if 显示将创建哪些资源, 删除或修改。使用假设来避免无意中删除 资源。