You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

配置Azure订阅级位置部署限制策略

修复Azure区域限制策略的配置问题

你的策略逻辑方向是对的——拒绝部署到非允许区域,但参数部分的配置有两处小问题导致它无法正常工作:

  1. 在参数定义里你用了value字段,但Azure策略的参数定义中,应该用defaultValue来指定默认的允许区域列表(value是在分配策略时动态传入的值,不是写在策略定义里的);
  2. JSON语法有多余的逗号("value": [ "West US", "East US" ],末尾的逗号),这会引发解析错误。

下面是修正后的完整策略代码:

{
  "policyRule": {
    "if": {
      "not": {
        "field": "location",
        "in": "[parameters('allowedLocations')]"
      }
    },
    "then": {
      "effect": "deny"
    }
  },
  "parameters": {
    "allowedLocations": {
      "type": "Array",
      "metadata": {
        "description": "The list of allowed locations for resources.",
        "displayName": "Allowed locations",
        "strongType": "location"
      },
      "defaultValue": [
        "West US",
        "East US"
      ]
    }
  }
}

关键要点说明:

  • 策略规则部分保持不变,逻辑依然是如果资源位置不在允许列表内则拒绝部署
  • strongType: "location"非常实用,它会在Azure门户分配策略时提供可视化的位置选择器,方便后续修改允许的区域;
  • defaultValue设置了默认的允许区域,你在分配策略时可以直接使用这个默认值,也能根据需要随时修改为其他区域列表。

内容的提问来源于stack exchange,提问作者craig Rickett

火山引擎 最新活动