ARM 模板 - Keyvault - 如何保留手动添加的访问策略

时间:2021-03-25 20:48:28

标签: azure arm-template

我有一个用于创建密钥库的 ARM 模板。

出于非常具体的原因,我需要在创建密钥保管库后手动为其设置访问策略。

如果我再次运行我的 ARM 模板(以更改某些设置),我手动设置的访问策略将被删除。

我可以使用什么功能或技巧来拥有将 ARM 模板中的访问策略与手动设置的访问策略相结合的 ARM 模板?

1 个答案:

答案 0 :(得分:0)

这可能是因为您可能正在完整模式下部署 ARM 模板。验证用于部署模板的命令并检查是否有任何 -Mode 参数被传递。

具体来说,ARM模板部署有两种模式:

  • 增量:在增量模式下,资源管理器保留资源组中存在但未在模板中指定的未更改资源。模板中的资源被添加到资源组中。

  • 完整:在完整模式下,资源管理器会删除资源组中存在但未在模板中指定的资源。

默认部署模式始终是增量,尽管您可以通过显式传递 -Mode 参数来覆盖它。

要在使用 PowerShell 部署时将 deployment mode 显式设置为 CompleteIncremental,请使用 Mode 参数,如下所示:

New-AzResourceGroupDeployment `
  -Mode Incremental `
  -Name ExampleDeployment `
  -ResourceGroupName ExampleResourceGroup `
  -TemplateFile c:\MyTemplates\storage.json

完全跳过 -Mode 参数也与在增量模式下部署一样好。

<块引用>

提示:在部署模板之前始终使用 what-if operation 在完整模式下。 What-if 显示将创建哪些资源, 删除或修改。使用假设来避免无意中删除 资源。