Azure 策略拒绝将空路由表添加到子网

问题描述 投票:0回答:1

我正在制定一项策略,以在附加空(具有 0 条路由)路由表时拒绝在 Vnet 上创建子网。在azure中,只有创建路由表后才能创建路由。

我有一项策略,当路由表未分配给子网时拒绝创建,希望通过确保路由表至少有一个 UDR 来改进该策略。

`"if": {
         "anyOf": [
           {
              "allOf": [
            {
              "equals": "Microsoft.Network/virtualNetworks/subnets",
              "field": "type"
            },
            {
              "exists": "false",
              "field": "Microsoft.Network/virtualNetworks/subnets/routeTable.id"
            }
          ]
        }
      ]
    },
    "then": {
      "effect": "deny"
    }
}

}`

azure routes policy azure-virtual-network subnet
1个回答
0
投票

我有一项策略,当路由表未分配给子网时拒绝创建,希望通过确保路由表至少有一个 UDR 来改进该策略。

如果子网未分配路由表,或者子网已分配路由表但该路由表中未定义路由,则以下策略将

deny
创建子网。

这是更新的政策。

{
  "mode": "All",
  "policyRule": {
    "if": {
      "anyOf": [
        {
          "allOf": [
            {
              "equals": "Microsoft.Network/virtualNetworks/subnets",
              "field": "type"
            },
            {
              "exists": "false",
              "field": "Microsoft.Network/virtualNetworks/subnets/routeTable.id"
            }
          ]
        },
        {
          "allOf": [
            {
              "field": "Microsoft.Network/virtualNetworks/subnets/routeTable.routes",
              "exists": "false"
            }
          ]
        }
      ]
    },
    "then": {
      "effect": "deny"
    }
  },
  "parameters": {}
}

当我尝试使用路由表创建子网时,策略拒绝创建子网,但分配的路由表没有定义的路由 (UDR),如下所示。

输出: enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.