如何检查Azure存储帐户是否有名称以“ABC”开头的标签

kzipqqlq  于 2023-05-01  发布在  其他
关注(0)|答案(2)|浏览(99)

我试图创建一个Azure策略,阻止资源具有以“ABC”开头的标签。
政策

"parameter" :{
   "tagname":{
      "type":"string",
      "defaultValue":"ABC"
   }
},

"policyRule" :{
    "if" : {
        "allOf" : [
           {
              "field":"type",
              "equals":"Microsoft.Storage/storageAccounts"
           },
           {
               "field":"[concat('tags[', parameter('tagname'), '*', ']')]",
               "exists":true
           }
        ]
    },
    "then":{
        "effect":"deny"
    }
}

我们是否可以使用正则表达式(如“ABC*”)来获取标记名中以ABC开头的标记

oug3syen

oug3syen1#

试试这个。

{
  "mode": "All",
  "policyRule": {
    "if": {
      "allOf": [
        {
          "field": "type",
          "equals": "Microsoft.Storage/storageAccounts"
        },
        {
          "not": {
            "field": "[concat('tags[', parameters('tagname'), ']')]",
            "like": "ABC*"
          }
        }
      ]
    },
    "then": {
      "effect": "deny"
    }
  },
  "parameters": {
    "tagname": {
      "type": "String",
      "metadata": {
        "displayName": "Tag Name"
      }
    }
  }
}
66bbxpm5

66bbxpm52#

我试图创建一个Azure策略,阻止资源具有以“ABC”开头的标签。
这里是阻止Tag名称以ABC开头的更新策略。

{
      "mode": "All",
      "policyRule": {
        "if": {
          "allOf": [
            {
              "field": "tags",
              "exists": "true"
            },
            {
              "field": "tags['ABC']",
              "exists": "true"
            }
          ]
        },
        "then": {
          "effect": "deny"
        }
      },
      "parameters": {}
    }

如果我输入Tag名称**“ABC”,则策略拒绝创建资源组**

相关问题