You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

REST API创建WAF_v2 SKU应用网关关联WAF策略报错求助

问题

是否可以通过REST API创建WAF_v2 SKU的应用网关并关联WAF策略?

我使用包含webApplicationFirewallConfiguration的配置代码可成功部署应用网关:

"webApplicationFirewallConfiguration" = @{
    "disabledRuleGroups" = @()
    "enabled" = $true
    "exclusions" = @()
    "fileUploadLimitInMb" = 100
    "firewallMode" = "Detection"
    "maxRequestBodySizeinKb" = 128
    "requestBodyCheck"       = $true
    "ruleSetType"        = "OWASP"
    "ruleSetVersion"     = "3.1"
}

但将该配置替换为指定WAF策略ID的firewallPolicy字段后:

"firewallPolicy"      = @{
    "id" = "path to WAF Policy"
}

收到错误代码为ApplicationGatewayFirewallNotConfiguredForSelectedSku的报错:

{
  "error": {
    "code": "ApplicationGatewayFirewallNotConfiguredForSelectedSku",
    "message": "Application Gateway (Path to gateway) with the selected SKU tier WAF_v2 must have a valid WAF policy or configuration",
    "details": []
  }
}

我已添加forceFirewallPolicyAssociation=$true,但问题仍未解决。

解决方案

要解决这个问题,需注意以下几个关键要点:

  • 移除旧版WAF配置字段:完全删除webApplicationFirewallConfiguration字段,不能同时保留该字段和firewallPolicy字段,二者互斥,同时存在会导致系统无法识别有效的WAF配置。
  • 确认WAF策略类型:确保关联的WAF策略是WAF_v2类型,旧版WAF策略(对应经典WAF配置)无法与WAF_v2 SKU的应用网关兼容。
  • 正确放置forceFirewallPolicyAssociation参数:该参数属于应用网关的顶层属性,需与sku、firewallPolicy同级,而非嵌套在某个子配置中。
  • 验证WAF策略ID格式:确保策略ID路径正确,格式应为/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName},同时确认当前操作账号对该策略有访问权限。

以下是调整后的核心配置示例(PowerShell格式):

"sku" = @{
    "name" = "WAF_v2"
    "tier" = "WAF_v2"
    "capacity" = 2
}
"firewallPolicy" = @{
    "id" = "/subscriptions/xxx/resourceGroups/xxx/providers/Microsoft.Network/firewallPolicies/your-waf-policy-name"
}
"forceFirewallPolicyAssociation" = $true
// 保留其他必要的应用网关配置(如前端IP、端口、后端池等)

内容的提问来源于stack exchange,提问作者rian cox

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 14:54:24