在ARM模板中验证子网是否在vnet内

时间:2019-09-09 11:03:28

标签: azure arm-template azure-virtual-network

我正在研究用于在Azure中部署资源的ARM模板,并且 我想在用户可以指定的参数中添加一些验证。

在我的部署中,用户可以指定他要在特定的虚拟网络和特定的子网中部署资源。

现在,可以指定一个不存在的子网,并且资源的部署将启动,之后才会失败。

是否有任何方法可以验证子网确实在该虚拟网络中,从而使验证立即进行并且部署不会首先开始


在AWS中,这可以通过 Constraints 规则来实现: https://docs.aws.amazon.com/servicecatalog/latest/adminguide/reference-template_constraint_rules.html

ARM模板是否等效? 我在docs for ARM中找不到任何内容。

1 个答案:

答案 0 :(得分:1)

不,ARM模板语法中没有类似的东西,您需要创建一个脚本并运行它,然后再调用模板进行检查。或者,您可以创建一个可能值的列表,并使用参数的allowedvalues属性定义该人可以部署其东西的所有子网。

https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-authoring-templates#parameters