如果公共IP地址分配为“动态”,我试图创建一个Azure策略以拒绝创建应用程序网关。
我尝试将“ publicIPAllocationMethod”用作强类型,但它引发了错误。
我看到这些字段出现在属性中,而不是类型。
{
"mode": "all",
"policyRule": {
"if": {
"allOf": [
{
"field": "publicIPAddress",
"equals": "dynamic"
}
]
},
"then": {
"effect": "deny"
}
},
"parameters": {}
}
答案 0 :(得分:0)
策略基于别名工作,因此该字段必须是别名。根据我的研究,看起来Application Gateway中publicIDAddress的别名是Microsoft.Network/applicationGateways/frontendIPConfigurations[*].publicIPAddress。
但是我资源有效负载中的值是一个id。
我看到的唯一可以标记为动态的是Microsoft.Network/applicationGateways/frontendIPConfigurations[*].privateIPAllocationMethod,但这可能只是我的资源配置方式。
我建议在此处查看如何查找别名:https://docs.microsoft.com/en-us/azure/governance/policy/concepts/definition-structure#aliases