首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure策略将额外资源报告为不符合要求

Azure策略将额外资源报告为不符合要求
EN

Stack Overflow用户
提问于 2019-08-29 16:11:00
回答 1查看 43关注 0票数 0

我从以下位置复制了示例:https://github.com/Azure/azure-policy/blob/master/samples/Network/no-route-table-in-ER-Network/azurepolicy.rules.json,并尝试创建拒绝没有NSG的子网的策略。

代码语言:javascript
复制
{
   "if": {
      "anyOf": [
         {
            "allOf": [
               {
                  "field": "type",
                  "equals": "Microsoft.Network/virtualNetworks"
               },
               {

                     "field": "Microsoft.Network/virtualNetworks/subnets[*].networkSecurityGroup.id",
                     "exists": false

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

策略工作正常,在不分配NSG和从子网中删除NSG的情况下停止创建子网。但是,它也会将虚拟网络报告为不兼容,即使虚拟网络也可以。如何将此策略设置为只报告子网而不报告虚拟网络?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-11 00:04:40

我设法通过稍微改变一下逻辑来让它工作起来:

代码语言:javascript
复制
{
  "if": {
    "anyOf": [
      {
        "allOf": [
          {
            "field": "type",
            "equals": "Microsoft.Network/virtualNetworks"
          },
          {
            "not": {
              "field": "Microsoft.Network/virtualNetworks/subnets[*].networkSecurityGroup.id",
              "exists": true
            }
          }
        ]
      },
      {
        "allOf": [
          {
            "field": "type",
            "equals": "Microsoft.Network/virtualNetworks/subnets"
          },
          {
            "not": {
              "field": "Microsoft.Network/virtualNetworks/subnets/networkSecurityGroup.id",
              "exists": true
            }
          }
        ]
      }
    ]
  },
  "then": {
    "effect": "deny"
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57705848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档