Microsoft.Network ApplicationGatewayWebApplicationFirewallPolicies 2018-10-01

Definição de recursos do bíceps

O tipo de recurso ApplicationGatewayWebApplicationFirewallPolicies pode ser implantado com operações direcionadas:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, adicione o seguinte Bíceps ao seu modelo.

resource symbolicname 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2018-10-01' = {
  etag: 'string'
  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'
      }
    ]
    policySettings: {
      enabledState: 'string'
      mode: 'string'
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

Valores de propriedade

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

Nome Descrição valor
etag Uma cadeia de caracteres somente leitura exclusiva que muda sempre que o recurso é atualizado. cadeia (de caracteres)
localização Localização do recurso. cadeia (de caracteres)
Nome O nome do recurso string

Restrições:
Comprimento máximo = 128 (obrigatório)
propriedades Propriedades da política de firewall do aplicativo Web. WebApplicationFirewallPolicyPropertiesFormat
etiquetas Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos

Condição de correspondência

Nome Descrição valor
matchValues Valor correspondente. string[] (obrigatório)
matchVariables Lista de variáveis de correspondência. MatchVariable[] (obrigatório)
negaçãoConditon Descreve se esta é condição negada ou não. bool
operador Descreve o operador a ser correspondido. 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'MaiorQue'
'MaiorThanOrEqual'
'IPMatch'
'Menosque'
'LessThanOrEqual'
«Regex» (obrigatório)
transforms Lista de transformações. Matriz de cadeia de caracteres contendo qualquer uma das:
'HtmlEntityDecode'
'Lowercase'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

Nome Descrição valor
selector Descreve o campo da coleção matchVariable. cadeia (de caracteres)
variableName Variável de correspondência. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obrigatório)

Configurações de política

Nome Descrição valor
enabledState Descreve se a política está no estado habilitado ou desabilitado. 'Desativado'
'Habilitado'
modo Descreve se ele está no modo de deteção ou no modo de prevenção no nível da política. 'Detecção'
'Prevenção'

ResourceTags

Nome Descrição valor

WebApplicationFirewallCustomRule

Nome Descrição valor
ação Tipo de Ações. 'Permitir'
'Bloqueio'
'Log' (obrigatório)
matchCondições Lista de condições de jogo. MatchCondition[] (obrigatório)
Nome O nome do recurso que é exclusivo dentro de uma política. Esse nome pode ser usado para acessar o recurso. string

Restrições:
Comprimento máximo = 128
prioridade Descreve a prioridade da regra. As regras com um valor mais baixo serão avaliadas antes das regras com um valor mais elevado. int (obrigatório)
ruleType Descreve o tipo de regra. 'Invalid'
'MatchRule' (obrigatório)

WebApplicationFirewallPolicyPropertiesFormat

Nome Descrição valor
customRules Descreve regras personalizadas dentro da política. WebApplicationFirewallCustomRule[]
configurações de política Descreve policySettings para política. Configurações de política

Exemplos de uso

Amostras do Bicep

Um exemplo básico de implantação da instância da Política de Firewall do Aplicativo Web do Azure.

param resourceName string = 'acctest0001'
param location string = 'westeurope'

resource applicationgatewaywebapplicationfirewallpolicy 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2022-07-01' = {
  name: resourceName
  location: location
  properties: {
    customRules: []
    managedRules: {
      exclusions: []
      managedRuleSets: [
        {
          ruleGroupOverrides: []
          ruleSetType: 'OWASP'
          ruleSetVersion: '3.1'
        }
      ]
    }
    policySettings: {
      fileUploadLimitInMb: 100
      maxRequestBodySizeInKb: 128
      mode: 'Detection'
      requestBodyCheck: true
      state: 'Enabled'
    }
  }
}

Módulos verificados do Azure

Os seguintes de Módulos Verificados do Azure podem ser usados para implantar esse tipo de recurso.

Módulo Descrição
de política do Application Gateway Web Application Firewall (WAF) Política do AVM Resource Module for Application Gateway Web Application Firewall (WAF)

Exemplos de início rápido do Azure

Os seguintes modelos início rápido do Azure contêm exemplos de Bicep para implantar esse tipo de recurso.

Arquivo Bicep Descrição
Cluster AKS com um gateway NAT e um gateway de aplicativo Este exemplo mostra como implantar um cluster AKS com o NAT Gateway para conexões de saída e um Application Gateway para conexões de entrada.
cluster AKS com o Application Gateway Ingress Controller Este exemplo mostra como implantar um cluster AKS com o Application Gateway, o Application Gateway Ingress Controller, o Azure Container Registry, o Log Analytics e o Key Vault
Application Gateway para roteamento baseado em caminho de url Este modelo cria um Gateway de Aplicativo e o configura para Roteamento Baseado em Caminho de URL.
Application Gateway com WAF e de política de firewall Este modelo cria um Gateway de Aplicativo com WAF configurado junto com uma política de firewall
Criar um WAF do Azure v2 no Azure Application Gateway Este modelo cria um Firewall de Aplicativo Web do Azure v2 no Gateway de Aplicativo do Azure com dois servidores Windows Server 2016 no pool de back-end
Porta da frente Standard/Premium com origem no Application Gateway Este modelo cria uma instância do Front Door Standard/Premium e do Application Gateway e usa uma política NSG e WAF para validar que o tráfego passou pela origem do Front Door.
porta de entrada com instâncias de contêiner e do Application Gateway Este modelo cria um Front Door Standard/Premium com um grupo de contêineres e Application Gateway.

Definição de recurso de modelo ARM

O tipo de recurso ApplicationGatewayWebApplicationFirewallPolicies pode ser implantado com operações direcionadas:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies",
  "apiVersion": "2018-10-01",
  "name": "string",
  "etag": "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"
      }
    ],
    "policySettings": {
      "enabledState": "string",
      "mode": "string"
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valores de propriedade

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

Nome Descrição valor
apiVersion A versão api '2018-10-01'
etag Uma cadeia de caracteres somente leitura exclusiva que muda sempre que o recurso é atualizado. cadeia (de caracteres)
localização Localização do recurso. cadeia (de caracteres)
Nome O nome do recurso string

Restrições:
Comprimento máximo = 128 (obrigatório)
propriedades Propriedades da política de firewall do aplicativo Web. WebApplicationFirewallPolicyPropertiesFormat
etiquetas Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos
tipo O tipo de recurso 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies'

Condição de correspondência

Nome Descrição valor
matchValues Valor correspondente. string[] (obrigatório)
matchVariables Lista de variáveis de correspondência. MatchVariable[] (obrigatório)
negaçãoConditon Descreve se esta é condição negada ou não. bool
operador Descreve o operador a ser correspondido. 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'MaiorQue'
'MaiorThanOrEqual'
'IPMatch'
'Menosque'
'LessThanOrEqual'
«Regex» (obrigatório)
transforms Lista de transformações. Matriz de cadeia de caracteres contendo qualquer uma das:
'HtmlEntityDecode'
'Lowercase'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

Nome Descrição valor
selector Descreve o campo da coleção matchVariable. cadeia (de caracteres)
variableName Variável de correspondência. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obrigatório)

Configurações de política

Nome Descrição valor
enabledState Descreve se a política está no estado habilitado ou desabilitado. 'Desativado'
'Habilitado'
modo Descreve se ele está no modo de deteção ou no modo de prevenção no nível da política. 'Detecção'
'Prevenção'

ResourceTags

Nome Descrição valor

WebApplicationFirewallCustomRule

Nome Descrição valor
ação Tipo de Ações. 'Permitir'
'Bloqueio'
'Log' (obrigatório)
matchCondições Lista de condições de jogo. MatchCondition[] (obrigatório)
Nome O nome do recurso que é exclusivo dentro de uma política. Esse nome pode ser usado para acessar o recurso. string

Restrições:
Comprimento máximo = 128
prioridade Descreve a prioridade da regra. As regras com um valor mais baixo serão avaliadas antes das regras com um valor mais elevado. int (obrigatório)
ruleType Descreve o tipo de regra. 'Invalid'
'MatchRule' (obrigatório)

WebApplicationFirewallPolicyPropertiesFormat

Nome Descrição valor
customRules Descreve regras personalizadas dentro da política. WebApplicationFirewallCustomRule[]
configurações de política Descreve policySettings para política. Configurações de política

Exemplos de uso

Modelos de início rápido do Azure

Os seguintes modelos de início rápido do Azure implantar esse tipo de recurso.

Template Descrição
Cluster AKS com um gateway NAT e um gateway de aplicativo

Implementar para Azure
Este exemplo mostra como implantar um cluster AKS com o NAT Gateway para conexões de saída e um Application Gateway para conexões de entrada.
cluster AKS com o Application Gateway Ingress Controller

Implementar para Azure
Este exemplo mostra como implantar um cluster AKS com o Application Gateway, o Application Gateway Ingress Controller, o Azure Container Registry, o Log Analytics e o Key Vault
Application Gateway para roteamento baseado em caminho de url

Implementar para Azure
Este modelo cria um Gateway de Aplicativo e o configura para Roteamento Baseado em Caminho de URL.
Application Gateway com WAF e de política de firewall

Implementar para Azure
Este modelo cria um Gateway de Aplicativo com WAF configurado junto com uma política de firewall
Criar um WAF do Azure v2 no Azure Application Gateway

Implementar para Azure
Este modelo cria um Firewall de Aplicativo Web do Azure v2 no Gateway de Aplicativo do Azure com dois servidores Windows Server 2016 no pool de back-end
Porta da frente Standard/Premium com origem no Application Gateway

Implementar para Azure
Este modelo cria uma instância do Front Door Standard/Premium e do Application Gateway e usa uma política NSG e WAF para validar que o tráfego passou pela origem do Front Door.
porta de entrada com instâncias de contêiner e do Application Gateway

Implementar para Azure
Este modelo cria um Front Door Standard/Premium com um grupo de contêineres e Application Gateway.

Definição de recursos Terraform (provedor AzAPI)

O tipo de recurso ApplicationGatewayWebApplicationFirewallPolicies pode ser implantado com operações direcionadas:

  • Grupos de recursos

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2018-10-01"
  name = "string"
  parent_id = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    etag = "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"
        }
      ]
      policySettings = {
        enabledState = "string"
        mode = "string"
      }
    }
  }
}

Valores de propriedade

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

Nome Descrição valor
etag Uma cadeia de caracteres somente leitura exclusiva que muda sempre que o recurso é atualizado. cadeia (de caracteres)
localização Localização do recurso. cadeia (de caracteres)
Nome O nome do recurso string

Restrições:
Comprimento máximo = 128 (obrigatório)
propriedades Propriedades da política de firewall do aplicativo Web. WebApplicationFirewallPolicyPropertiesFormat
etiquetas Etiquetas de recursos Dicionário de nomes e valores de tags.
tipo O tipo de recurso "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2018-10-01"

Condição de correspondência

Nome Descrição valor
matchValues Valor correspondente. string[] (obrigatório)
matchVariables Lista de variáveis de correspondência. MatchVariable[] (obrigatório)
negaçãoConditon Descreve se esta é condição negada ou não. bool
operador Descreve o operador a ser correspondido. 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'MaiorQue'
'MaiorThanOrEqual'
'IPMatch'
'Menosque'
'LessThanOrEqual'
«Regex» (obrigatório)
transforms Lista de transformações. Matriz de cadeia de caracteres contendo qualquer uma das:
'HtmlEntityDecode'
'Lowercase'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

Nome Descrição valor
selector Descreve o campo da coleção matchVariable. cadeia (de caracteres)
variableName Variável de correspondência. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obrigatório)

Configurações de política

Nome Descrição valor
enabledState Descreve se a política está no estado habilitado ou desabilitado. 'Desativado'
'Habilitado'
modo Descreve se ele está no modo de deteção ou no modo de prevenção no nível da política. 'Detecção'
'Prevenção'

ResourceTags

Nome Descrição valor

WebApplicationFirewallCustomRule

Nome Descrição valor
ação Tipo de Ações. 'Permitir'
'Bloqueio'
'Log' (obrigatório)
matchCondições Lista de condições de jogo. MatchCondition[] (obrigatório)
Nome O nome do recurso que é exclusivo dentro de uma política. Esse nome pode ser usado para acessar o recurso. string

Restrições:
Comprimento máximo = 128
prioridade Descreve a prioridade da regra. As regras com um valor mais baixo serão avaliadas antes das regras com um valor mais elevado. int (obrigatório)
ruleType Descreve o tipo de regra. 'Invalid'
'MatchRule' (obrigatório)

WebApplicationFirewallPolicyPropertiesFormat

Nome Descrição valor
customRules Descreve regras personalizadas dentro da política. WebApplicationFirewallCustomRule[]
configurações de política Descreve policySettings para política. Configurações de política

Exemplos de uso

Amostras Terraform

Um exemplo básico de implantação da instância da Política de Firewall do Aplicativo Web do Azure.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "ApplicationGatewayWebApplicationFirewallPolicy" {
  type      = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2022-07-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      customRules = [
      ]
      managedRules = {
        exclusions = [
        ]
        managedRuleSets = [
          {
            ruleGroupOverrides = [
            ]
            ruleSetType    = "OWASP"
            ruleSetVersion = "3.1"
          },
        ]
      }
      policySettings = {
        fileUploadLimitInMb    = 100
        maxRequestBodySizeInKb = 128
        mode                   = "Detection"
        requestBodyCheck       = true
        state                  = "Enabled"
      }
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Módulos verificados do Azure

Os seguintes de Módulos Verificados do Azure podem ser usados para implantar esse tipo de recurso.

Módulo Descrição
de política do Application Gateway Web Application Firewall (WAF) Política do AVM Resource Module for Application Gateway Web Application Firewall (WAF)