共用方式為


Microsoft.Network ApplicationGatewayWebApplicationFirewallPolicies 2019-12-01

Bicep 資源定義

ApplicationGatewayWebApplicationFirewallPolicies 資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies 資源,請將下列 Bicep 新增至範本。

resource symbolicname 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2019-12-01' = {
  location: 'string'
  name: 'string'
  properties: {
    customRules: [
      {
        action: 'string'
        matchConditions: [
          {
            matchValues: [
              'string'
            ]
            matchVariables: [
              {
                selector: 'string'
                variableName: 'string'
              }
            ]
            negationConditon: bool
            operator: 'string'
            transforms: [
              'string'
            ]
          }
        ]
        name: 'string'
        priority: int
        ruleType: 'string'
      }
    ]
    managedRules: {
      exclusions: [
        {
          matchVariable: 'string'
          selector: 'string'
          selectorMatchOperator: 'string'
        }
      ]
      managedRuleSets: [
        {
          ruleGroupOverrides: [
            {
              ruleGroupName: 'string'
              rules: [
                {
                  ruleId: 'string'
                  state: 'string'
                }
              ]
            }
          ]
          ruleSetType: 'string'
          ruleSetVersion: 'string'
        }
      ]
    }
    policySettings: {
      fileUploadLimitInMb: int
      maxRequestBodySizeInKb: int
      mode: 'string'
      requestBodyCheck: bool
      state: 'string'
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

屬性值

ManagedRuleGroupOverride

名字 描述 價值
ruleGroupName 要覆寫的受控規則群組。 字串 (必要)
規則 將會停用的規則清單。 如果未指定任何規則,群組中的所有規則都會停用。 ManagedRuleOverride[]

ManagedRuleOverride

名字 描述 價值
ruleId 受控規則的標識碼。 字串 (必要)
Managed 規則的狀態。 如果未指定,預設值為 Disabled。 'Disabled'

ManagedRulesDefinition

名字 描述 價值
排除 在原則上套用的排除專案。 OwaspCrsExclusionEntry[]
managedRuleSets 與原則相關聯的Managed規則集。 ManagedRuleSet[] (必要)

ManagedRuleSet

名字 描述 價值
ruleGroupOverrides 定義要套用至規則集的規則群組覆寫。 ManagedRuleGroupOverride[]
ruleSetType 定義要使用的規則集類型。 字串 (必要)
ruleSetVersion 定義要使用的規則集版本。 字串 (必要)

MatchCondition

名字 描述 價值
matchValues 比對值。 string[] (必要)
matchVariables 比對變數的清單。 MatchVariable[] (必要)
negationConditon 這是否為否定條件。 bool
算子 要比對的運算符。 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (必要)
變換 轉換清單。 包含任何的字串數組:
'HtmlEntityDecode'
'小寫'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

名字 描述 價值
選擇器 比對變數的選取器。 字串
variableName 比對變數。 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (必要)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

名字 描述 價值
位置 資源位置。 字串
名字 資源名稱 字串

約束:
最大長度 = (必要)
性能 Web 應用程式防火牆原則的屬性。 WebApplicationFirewallPolicyPropertiesFormat
標籤 資源標籤 標記名稱和值的字典。 請參閱範本中的 標籤

OwaspCrsExclusionEntry

名字 描述 價值
matchVariable 要排除的變數。 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (必要)
選擇器 matchVariable 是集合時,運算子會用來指定這個排除範圍套用至集合中的哪些專案。 字串 (必要)
selectorMatchOperator 當 matchVariable 是集合時,請在選取器上操作,以指定這個排除範圍套用至集合中的哪些元素。 'Contains'
'EndsWith'
'Equals'
'EqualsAny'
'StartsWith' (必要)

PolicySettings

名字 描述 價值
fileUploadLimitInMb WAF 的檔案上傳大小上限為 Mb。 int

約束:
最小值 = 0
maxRequestBodySizeInKb WAF 的要求本文大小上限,以 Kb 為單位。 int

約束:
最小值 = 8
最大值 = 128
模式 原則的模式。 'Detection'
'預防'
requestBodyCheck 是否允許 WAF 檢查要求本文。 bool
原則的狀態。 'Disabled'
'Enabled'

ResourceTags

名字 描述 價值

WebApplicationFirewallCustomRule

名字 描述 價值
行動 動作的類型。 'Allow'
'Block'
'Log' (必要)
matchConditions 比對條件的清單。 MatchCondition[] (必要)
名字 原則內唯一的資源名稱。 此名稱可用來存取資源。 字串

約束:
最大長度 =
優先權 規則的優先順序。 在具有較高值的規則之前,將會先評估具有較低值的規則。 int (必要)
ruleType 規則類型。 'Invalid'
'MatchRule' (必要)

WebApplicationFirewallPolicyPropertiesFormat

名字 描述 價值
customRules 原則內的自定義規則。 WebApplicationFirewallCustomRule[]
managedRules 描述managedRules結構。 ManagedRulesDefinition (必要)
policySettings 原則的 PolicySettings。 PolicySettings

快速入門範例

下列快速入門範例會部署此資源類型。

Bicep 檔案 描述
具有 NAT 閘道和應用程式閘道的 AKS 叢集 此範例示範如何使用 NAT 閘道部署 AKS 叢集以進行輸出連線,以及用於輸入連線的應用程式閘道。
使用應用程式閘道輸入控制器 AKS 叢集 此範例示範如何使用應用程式閘道、應用程式閘道輸入控制器、Azure Container Registry、Log Analytics 和 Key Vault 部署 AKS 叢集
使用 WAF 和防火牆原則 應用程式閘道 此範本會建立已設定 WAF 以及防火牆原則的應用程式閘道
在 Azure 應用程式閘道上建立 Azure WAF v2 此範本會在 Azure 應用程式閘道上建立 Azure Web 應用程式防火牆 v2,並在後端集區中有兩部 Windows Server 2016 伺服器
使用應用程式閘道來源 Front Door Standard/Premium 此範本會建立 Front Door Standard/Premium 和應用程式閘道實例,並使用 NSG 和 WAF 原則來驗證流量是否通過 Front Door 來源。
使用容器實例和應用程式閘道 Front Door 此範本會建立具有容器群組和應用程式閘道的 Front Door Standard/Premium。

ARM 樣本資源定義

ApplicationGatewayWebApplicationFirewallPolicies 資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies 資源,請將下列 JSON 新增至範本。

{
  "type": "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies",
  "apiVersion": "2019-12-01",
  "name": "string",
  "location": "string",
  "properties": {
    "customRules": [
      {
        "action": "string",
        "matchConditions": [
          {
            "matchValues": [ "string" ],
            "matchVariables": [
              {
                "selector": "string",
                "variableName": "string"
              }
            ],
            "negationConditon": "bool",
            "operator": "string",
            "transforms": [ "string" ]
          }
        ],
        "name": "string",
        "priority": "int",
        "ruleType": "string"
      }
    ],
    "managedRules": {
      "exclusions": [
        {
          "matchVariable": "string",
          "selector": "string",
          "selectorMatchOperator": "string"
        }
      ],
      "managedRuleSets": [
        {
          "ruleGroupOverrides": [
            {
              "ruleGroupName": "string",
              "rules": [
                {
                  "ruleId": "string",
                  "state": "string"
                }
              ]
            }
          ],
          "ruleSetType": "string",
          "ruleSetVersion": "string"
        }
      ]
    },
    "policySettings": {
      "fileUploadLimitInMb": "int",
      "maxRequestBodySizeInKb": "int",
      "mode": "string",
      "requestBodyCheck": "bool",
      "state": "string"
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

屬性值

ManagedRuleGroupOverride

名字 描述 價值
ruleGroupName 要覆寫的受控規則群組。 字串 (必要)
規則 將會停用的規則清單。 如果未指定任何規則,群組中的所有規則都會停用。 ManagedRuleOverride[]

ManagedRuleOverride

名字 描述 價值
ruleId 受控規則的標識碼。 字串 (必要)
Managed 規則的狀態。 如果未指定,預設值為 Disabled。 'Disabled'

ManagedRulesDefinition

名字 描述 價值
排除 在原則上套用的排除專案。 OwaspCrsExclusionEntry[]
managedRuleSets 與原則相關聯的Managed規則集。 ManagedRuleSet[] (必要)

ManagedRuleSet

名字 描述 價值
ruleGroupOverrides 定義要套用至規則集的規則群組覆寫。 ManagedRuleGroupOverride[]
ruleSetType 定義要使用的規則集類型。 字串 (必要)
ruleSetVersion 定義要使用的規則集版本。 字串 (必要)

MatchCondition

名字 描述 價值
matchValues 比對值。 string[] (必要)
matchVariables 比對變數的清單。 MatchVariable[] (必要)
negationConditon 這是否為否定條件。 bool
算子 要比對的運算符。 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (必要)
變換 轉換清單。 包含任何的字串數組:
'HtmlEntityDecode'
'小寫'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

名字 描述 價值
選擇器 比對變數的選取器。 字串
variableName 比對變數。 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (必要)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

名字 描述 價值
apiVersion API 版本 '2019-12-01'
位置 資源位置。 字串
名字 資源名稱 字串

約束:
最大長度 = (必要)
性能 Web 應用程式防火牆原則的屬性。 WebApplicationFirewallPolicyPropertiesFormat
標籤 資源標籤 標記名稱和值的字典。 請參閱範本中的 標籤
類型 資源類型 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies'

OwaspCrsExclusionEntry

名字 描述 價值
matchVariable 要排除的變數。 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (必要)
選擇器 matchVariable 是集合時,運算子會用來指定這個排除範圍套用至集合中的哪些專案。 字串 (必要)
selectorMatchOperator 當 matchVariable 是集合時,請在選取器上操作,以指定這個排除範圍套用至集合中的哪些元素。 'Contains'
'EndsWith'
'Equals'
'EqualsAny'
'StartsWith' (必要)

PolicySettings

名字 描述 價值
fileUploadLimitInMb WAF 的檔案上傳大小上限為 Mb。 int

約束:
最小值 = 0
maxRequestBodySizeInKb WAF 的要求本文大小上限,以 Kb 為單位。 int

約束:
最小值 = 8
最大值 = 128
模式 原則的模式。 'Detection'
'預防'
requestBodyCheck 是否允許 WAF 檢查要求本文。 bool
原則的狀態。 'Disabled'
'Enabled'

ResourceTags

名字 描述 價值

WebApplicationFirewallCustomRule

名字 描述 價值
行動 動作的類型。 'Allow'
'Block'
'Log' (必要)
matchConditions 比對條件的清單。 MatchCondition[] (必要)
名字 原則內唯一的資源名稱。 此名稱可用來存取資源。 字串

約束:
最大長度 =
優先權 規則的優先順序。 在具有較高值的規則之前,將會先評估具有較低值的規則。 int (必要)
ruleType 規則類型。 'Invalid'
'MatchRule' (必要)

WebApplicationFirewallPolicyPropertiesFormat

名字 描述 價值
customRules 原則內的自定義規則。 WebApplicationFirewallCustomRule[]
managedRules 描述managedRules結構。 ManagedRulesDefinition (必要)
policySettings 原則的 PolicySettings。 PolicySettings

快速入門範本

下列快速入門範本會部署此資源類型。

範本 描述
具有 NAT 閘道和應用程式閘道的 AKS 叢集

部署至 Azure
此範例示範如何使用 NAT 閘道部署 AKS 叢集以進行輸出連線,以及用於輸入連線的應用程式閘道。
使用應用程式閘道輸入控制器 AKS 叢集

部署至 Azure
此範例示範如何使用應用程式閘道、應用程式閘道輸入控制器、Azure Container Registry、Log Analytics 和 Key Vault 部署 AKS 叢集
使用 WAF 和防火牆原則 應用程式閘道

部署至 Azure
此範本會建立已設定 WAF 以及防火牆原則的應用程式閘道
在 Azure 應用程式閘道上建立 Azure WAF v2

部署至 Azure
此範本會在 Azure 應用程式閘道上建立 Azure Web 應用程式防火牆 v2,並在後端集區中有兩部 Windows Server 2016 伺服器
使用應用程式閘道來源 Front Door Standard/Premium

部署至 Azure
此範本會建立 Front Door Standard/Premium 和應用程式閘道實例,並使用 NSG 和 WAF 原則來驗證流量是否通過 Front Door 來源。
使用容器實例和應用程式閘道 Front Door

部署至 Azure
此範本會建立具有容器群組和應用程式閘道的 Front Door Standard/Premium。

Terraform (AzAPI 提供者) 資源定義

ApplicationGatewayWebApplicationFirewallPolicies 資源類型可以使用目標作業來部署:

  • 資源群組

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies 資源,請將下列 Terraform 新增至您的範本。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2019-12-01"
  name = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    properties = {
      customRules = [
        {
          action = "string"
          matchConditions = [
            {
              matchValues = [
                "string"
              ]
              matchVariables = [
                {
                  selector = "string"
                  variableName = "string"
                }
              ]
              negationConditon = bool
              operator = "string"
              transforms = [
                "string"
              ]
            }
          ]
          name = "string"
          priority = int
          ruleType = "string"
        }
      ]
      managedRules = {
        exclusions = [
          {
            matchVariable = "string"
            selector = "string"
            selectorMatchOperator = "string"
          }
        ]
        managedRuleSets = [
          {
            ruleGroupOverrides = [
              {
                ruleGroupName = "string"
                rules = [
                  {
                    ruleId = "string"
                    state = "string"
                  }
                ]
              }
            ]
            ruleSetType = "string"
            ruleSetVersion = "string"
          }
        ]
      }
      policySettings = {
        fileUploadLimitInMb = int
        maxRequestBodySizeInKb = int
        mode = "string"
        requestBodyCheck = bool
        state = "string"
      }
    }
  })
}

屬性值

ManagedRuleGroupOverride

名字 描述 價值
ruleGroupName 要覆寫的受控規則群組。 字串 (必要)
規則 將會停用的規則清單。 如果未指定任何規則,群組中的所有規則都會停用。 ManagedRuleOverride[]

ManagedRuleOverride

名字 描述 價值
ruleId 受控規則的標識碼。 字串 (必要)
Managed 規則的狀態。 如果未指定,預設值為 Disabled。 'Disabled'

ManagedRulesDefinition

名字 描述 價值
排除 在原則上套用的排除專案。 OwaspCrsExclusionEntry[]
managedRuleSets 與原則相關聯的Managed規則集。 ManagedRuleSet[] (必要)

ManagedRuleSet

名字 描述 價值
ruleGroupOverrides 定義要套用至規則集的規則群組覆寫。 ManagedRuleGroupOverride[]
ruleSetType 定義要使用的規則集類型。 字串 (必要)
ruleSetVersion 定義要使用的規則集版本。 字串 (必要)

MatchCondition

名字 描述 價值
matchValues 比對值。 string[] (必要)
matchVariables 比對變數的清單。 MatchVariable[] (必要)
negationConditon 這是否為否定條件。 bool
算子 要比對的運算符。 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (必要)
變換 轉換清單。 包含任何的字串數組:
'HtmlEntityDecode'
'小寫'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

名字 描述 價值
選擇器 比對變數的選取器。 字串
variableName 比對變數。 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (必要)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

名字 描述 價值
位置 資源位置。 字串
名字 資源名稱 字串

約束:
最大長度 = (必要)
性能 Web 應用程式防火牆原則的屬性。 WebApplicationFirewallPolicyPropertiesFormat
標籤 資源標籤 標記名稱和值的字典。
類型 資源類型 “Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2019-12-01”

OwaspCrsExclusionEntry

名字 描述 價值
matchVariable 要排除的變數。 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (必要)
選擇器 matchVariable 是集合時,運算子會用來指定這個排除範圍套用至集合中的哪些專案。 字串 (必要)
selectorMatchOperator 當 matchVariable 是集合時,請在選取器上操作,以指定這個排除範圍套用至集合中的哪些元素。 'Contains'
'EndsWith'
'Equals'
'EqualsAny'
'StartsWith' (必要)

PolicySettings

名字 描述 價值
fileUploadLimitInMb WAF 的檔案上傳大小上限為 Mb。 int

約束:
最小值 = 0
maxRequestBodySizeInKb WAF 的要求本文大小上限,以 Kb 為單位。 int

約束:
最小值 = 8
最大值 = 128
模式 原則的模式。 'Detection'
'預防'
requestBodyCheck 是否允許 WAF 檢查要求本文。 bool
原則的狀態。 'Disabled'
'Enabled'

ResourceTags

名字 描述 價值

WebApplicationFirewallCustomRule

名字 描述 價值
行動 動作的類型。 'Allow'
'Block'
'Log' (必要)
matchConditions 比對條件的清單。 MatchCondition[] (必要)
名字 原則內唯一的資源名稱。 此名稱可用來存取資源。 字串

約束:
最大長度 =
優先權 規則的優先順序。 在具有較高值的規則之前,將會先評估具有較低值的規則。 int (必要)
ruleType 規則類型。 'Invalid'
'MatchRule' (必要)

WebApplicationFirewallPolicyPropertiesFormat

名字 描述 價值
customRules 原則內的自定義規則。 WebApplicationFirewallCustomRule[]
managedRules 描述managedRules結構。 ManagedRulesDefinition (必要)
policySettings 原則的 PolicySettings。 PolicySettings