Compartilhar via


Microsoft.Network ApplicationGatewayWebApplicationFirewallPolicies 2021-03-01

Definição de recurso do Bicep

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 de log de alterações.

Formato de recurso

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

resource symbolicname 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-03-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'
  }
}

Valores de propriedade

ManagedRuleGroupOverride

Nome Descrição Valor
ruleGroupName O grupo de regras gerenciadas a ser substituído. cadeia de caracteres (obrigatório)
réguas Lista de regras que serão desabilitadas. Se nenhuma especificada, todas as regras do grupo serão desabilitadas. ManagedRuleOverride []

ManagedRuleOverride

Nome Descrição Valor
ruleId Identificador para a regra gerenciada. cadeia de caracteres (obrigatório)
estado O estado da regra gerenciada. O padrão será Desabilitado se não for especificado. 'Desabilitado'

ManagedRulesDefinition

Nome Descrição Valor
Exclusões As Exclusões aplicadas na política. OwaspCrsExclusionEntry[]
managedRuleSets Os conjuntos de regras gerenciadas associados à política. ManagedRuleSet[] (obrigatório)

ManagedRuleSet

Nome Descrição Valor
ruleGroupOverrides Define as substituições do grupo de regras a serem aplicadas ao conjunto de regras. ManagedRuleGroupOverride []
ruleSetType Define o tipo de conjunto de regras a ser usado. cadeia de caracteres (obrigatório)
ruleSetVersion Define a versão do conjunto de regras a ser usado. cadeia de caracteres (obrigatório)

MatchCondition

Nome Descrição Valor
matchValues Valor de correspondência. string[] (obrigatório)
matchVariables Lista de variáveis de correspondência. MatchVariable [] (obrigatório)
negationConditon Se essa é uma condição negada ou não. Bool
operador O operador a ser correspondido. 'BeginsWith'
'Contains'
'EndsWith'
'Igual'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (obrigatório)
Transforma Lista de transformações. Matriz de cadeia de caracteres que contém qualquer um dos:
'HtmlEntityDecode'
'Minúscula'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

Nome Descrição Valor
seletor O seletor da variável de correspondência. corda
variableName Variável de correspondência. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obrigatório)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

Nome Descrição Valor
localização Local do recurso. corda
nome O nome do recurso corda

Restrições:
Comprimento máximo = (obrigatório)
Propriedades Propriedades da política de firewall do aplicativo Web. WebApplicationFirewallPolicyPropertiesFormat
Tags Marcas de recurso Dicionário de nomes e valores de marca. Consulte Marcas em modelos

OwaspCrsExclusionEntry

Nome Descrição Valor
matchVariable A variável a ser excluída. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (obrigatório)
seletor Quando matchVariable é uma coleção, o operador usado para especificar a quais elementos na coleção essa exclusão se aplica. cadeia de caracteres (obrigatório)
selectorMatchOperator Quando matchVariable for uma coleção, opere no seletor para especificar a quais elementos na coleção essa exclusão se aplica. 'Contains'
'EndsWith'
'Equals'
'EqualsAny'
'StartsWith' (obrigatório)

PolicySettings

Nome Descrição Valor
fileUploadLimitInMb Tamanho máximo de upload de arquivo em Mb para WAF. int

Restrições:
Valor mínimo = 0
maxRequestBodySizeInKb Tamanho máximo do corpo da solicitação em Kb para WAF. int

Restrições:
Valor mínimo = 8
modo O modo da política. 'Detecção'
'Prevenção'
requestBodyCheck Se o WAF deve permitir que o WAF verifique o corpo da solicitação. Bool
estado O estado da política. 'Desabilitado'
'Habilitado'

ResourceTags

Nome Descrição Valor

WebApplicationFirewallCustomRule

Nome Descrição Valor
ação Tipo de Ações. 'Permitir'
'Bloquear'
'Log' (obrigatório)
matchConditions Lista de condições de correspondência. MatchCondition[] (obrigatório)
nome O nome do recurso que é exclusivo dentro de uma política. Esse nome pode ser usado para acessar o recurso. corda

Restrições:
Comprimento máximo =
prioridade Prioridade da regra. As regras com um valor mais baixo serão avaliadas antes das regras com um valor mais alto. int (obrigatório)
ruleType O tipo de regra. 'Inválido'
'MatchRule' (obrigatório)

WebApplicationFirewallPolicyPropertiesFormat

Nome Descrição Valor
customRules As regras personalizadas dentro da política. WebApplicationFirewallCustomRule[]
managedRules Descreve a estrutura managedRules. ManagedRulesDefinition (obrigatório)
policySettings Os PolicySettings para a política. PolicySettings

Exemplos de início rápido

Os exemplos de início rápido a seguir implantam esse tipo de recurso.

Arquivo Bicep Descrição
cluster do AKS com um Gateway nat e um gateway de aplicativo Este exemplo mostra como implantar um cluster do AKS com o Gateway de NAT para conexões de saída e um Gateway de Aplicativo para conexões de entrada.
cluster do AKS com o Controlador de Entrada do Gateway de Aplicativo Este exemplo mostra como implantar um cluster do AKS com o Gateway de Aplicativo, o Controlador de Entrada do Gateway de Aplicativo, o Registro de Contêiner do Azure, o Log Analytics e o Key Vault
Gateway de Aplicativo com waf e 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 Gateway de Aplicativo do Azure Este modelo cria um Firewall do Aplicativo Web do Azure v2 no Gateway de Aplicativo do Azure com dois servidores do Windows Server 2016 no pool de back-end
Front Door Standard/Premium com origem do Gateway de Aplicativo Esse modelo cria um Front Door Standard/Premium e uma instância do Gateway de Aplicativo e usa uma política de NSG e WAF para validar que o tráfego veio por meio da origem do Front Door.
Front Door com instâncias de contêiner e gateway de aplicativo Esse modelo cria um Front Door Standard/Premium com um grupo de contêineres e o Gateway de Aplicativo.

Definição de recurso de modelo do 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 de log de alterações.

Formato de recurso

Para criar um recurso Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, adicione o JSON a seguir ao modelo.

{
  "type": "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies",
  "apiVersion": "2021-03-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"
  }
}

Valores de propriedade

ManagedRuleGroupOverride

Nome Descrição Valor
ruleGroupName O grupo de regras gerenciadas a ser substituído. cadeia de caracteres (obrigatório)
réguas Lista de regras que serão desabilitadas. Se nenhuma especificada, todas as regras do grupo serão desabilitadas. ManagedRuleOverride []

ManagedRuleOverride

Nome Descrição Valor
ruleId Identificador para a regra gerenciada. cadeia de caracteres (obrigatório)
estado O estado da regra gerenciada. O padrão será Desabilitado se não for especificado. 'Desabilitado'

ManagedRulesDefinition

Nome Descrição Valor
Exclusões As Exclusões aplicadas na política. OwaspCrsExclusionEntry[]
managedRuleSets Os conjuntos de regras gerenciadas associados à política. ManagedRuleSet[] (obrigatório)

ManagedRuleSet

Nome Descrição Valor
ruleGroupOverrides Define as substituições do grupo de regras a serem aplicadas ao conjunto de regras. ManagedRuleGroupOverride []
ruleSetType Define o tipo de conjunto de regras a ser usado. cadeia de caracteres (obrigatório)
ruleSetVersion Define a versão do conjunto de regras a ser usado. cadeia de caracteres (obrigatório)

MatchCondition

Nome Descrição Valor
matchValues Valor de correspondência. string[] (obrigatório)
matchVariables Lista de variáveis de correspondência. MatchVariable [] (obrigatório)
negationConditon Se essa é uma condição negada ou não. Bool
operador O operador a ser correspondido. 'BeginsWith'
'Contains'
'EndsWith'
'Igual'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (obrigatório)
Transforma Lista de transformações. Matriz de cadeia de caracteres que contém qualquer um dos:
'HtmlEntityDecode'
'Minúscula'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

Nome Descrição Valor
seletor O seletor da variável de correspondência. corda
variableName Variável de correspondência. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obrigatório)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

Nome Descrição Valor
apiVersion A versão da API '2021-03-01'
localização Local do recurso. corda
nome O nome do recurso corda

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

OwaspCrsExclusionEntry

Nome Descrição Valor
matchVariable A variável a ser excluída. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (obrigatório)
seletor Quando matchVariable é uma coleção, o operador usado para especificar a quais elementos na coleção essa exclusão se aplica. cadeia de caracteres (obrigatório)
selectorMatchOperator Quando matchVariable for uma coleção, opere no seletor para especificar a quais elementos na coleção essa exclusão se aplica. 'Contains'
'EndsWith'
'Equals'
'EqualsAny'
'StartsWith' (obrigatório)

PolicySettings

Nome Descrição Valor
fileUploadLimitInMb Tamanho máximo de upload de arquivo em Mb para WAF. int

Restrições:
Valor mínimo = 0
maxRequestBodySizeInKb Tamanho máximo do corpo da solicitação em Kb para WAF. int

Restrições:
Valor mínimo = 8
modo O modo da política. 'Detecção'
'Prevenção'
requestBodyCheck Se o WAF deve permitir que o WAF verifique o corpo da solicitação. Bool
estado O estado da política. 'Desabilitado'
'Habilitado'

ResourceTags

Nome Descrição Valor

WebApplicationFirewallCustomRule

Nome Descrição Valor
ação Tipo de Ações. 'Permitir'
'Bloquear'
'Log' (obrigatório)
matchConditions Lista de condições de correspondência. MatchCondition[] (obrigatório)
nome O nome do recurso que é exclusivo dentro de uma política. Esse nome pode ser usado para acessar o recurso. corda

Restrições:
Comprimento máximo =
prioridade Prioridade da regra. As regras com um valor mais baixo serão avaliadas antes das regras com um valor mais alto. int (obrigatório)
ruleType O tipo de regra. 'Inválido'
'MatchRule' (obrigatório)

WebApplicationFirewallPolicyPropertiesFormat

Nome Descrição Valor
customRules As regras personalizadas dentro da política. WebApplicationFirewallCustomRule[]
managedRules Descreve a estrutura managedRules. ManagedRulesDefinition (obrigatório)
policySettings Os PolicySettings para a política. PolicySettings

Modelos de início rápido

Os modelos de início rápido a seguir implantam esse tipo de recurso.

Modelo Descrição
cluster do AKS com um Gateway nat e um gateway de aplicativo

Implantar no Azure
Este exemplo mostra como implantar um cluster do AKS com o Gateway de NAT para conexões de saída e um Gateway de Aplicativo para conexões de entrada.
cluster do AKS com o Controlador de Entrada do Gateway de Aplicativo

Implantar no Azure
Este exemplo mostra como implantar um cluster do AKS com o Gateway de Aplicativo, o Controlador de Entrada do Gateway de Aplicativo, o Registro de Contêiner do Azure, o Log Analytics e o Key Vault
Gateway de Aplicativo com waf e política de firewall

Implantar no 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 Gateway de Aplicativo do Azure

Implantar no Azure
Este modelo cria um Firewall do Aplicativo Web do Azure v2 no Gateway de Aplicativo do Azure com dois servidores do Windows Server 2016 no pool de back-end
Front Door Standard/Premium com origem do Gateway de Aplicativo

Implantar no Azure
Esse modelo cria um Front Door Standard/Premium e uma instância do Gateway de Aplicativo e usa uma política de NSG e WAF para validar que o tráfego veio por meio da origem do Front Door.
Front Door com instâncias de contêiner e gateway de aplicativo

Implantar no Azure
Esse modelo cria um Front Door Standard/Premium com um grupo de contêineres e o Gateway de Aplicativo.

Definição de recurso do Terraform (provedor de 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 de log de alterações.

Formato de recurso

Para criar um recurso Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, adicione o Terraform a seguir ao modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-03-01"
  name = "string"
  location = "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"
      }
    }
  })
  tags = {
    {customized property} = "string"
  }
}

Valores de propriedade

ManagedRuleGroupOverride

Nome Descrição Valor
ruleGroupName O grupo de regras gerenciadas a ser substituído. cadeia de caracteres (obrigatório)
réguas Lista de regras que serão desabilitadas. Se nenhuma especificada, todas as regras do grupo serão desabilitadas. ManagedRuleOverride []

ManagedRuleOverride

Nome Descrição Valor
ruleId Identificador para a regra gerenciada. cadeia de caracteres (obrigatório)
estado O estado da regra gerenciada. O padrão será Desabilitado se não for especificado. 'Desabilitado'

ManagedRulesDefinition

Nome Descrição Valor
Exclusões As Exclusões aplicadas na política. OwaspCrsExclusionEntry[]
managedRuleSets Os conjuntos de regras gerenciadas associados à política. ManagedRuleSet[] (obrigatório)

ManagedRuleSet

Nome Descrição Valor
ruleGroupOverrides Define as substituições do grupo de regras a serem aplicadas ao conjunto de regras. ManagedRuleGroupOverride []
ruleSetType Define o tipo de conjunto de regras a ser usado. cadeia de caracteres (obrigatório)
ruleSetVersion Define a versão do conjunto de regras a ser usado. cadeia de caracteres (obrigatório)

MatchCondition

Nome Descrição Valor
matchValues Valor de correspondência. string[] (obrigatório)
matchVariables Lista de variáveis de correspondência. MatchVariable [] (obrigatório)
negationConditon Se essa é uma condição negada ou não. Bool
operador O operador a ser correspondido. 'BeginsWith'
'Contains'
'EndsWith'
'Igual'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (obrigatório)
Transforma Lista de transformações. Matriz de cadeia de caracteres que contém qualquer um dos:
'HtmlEntityDecode'
'Minúscula'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

Nome Descrição Valor
seletor O seletor da variável de correspondência. corda
variableName Variável de correspondência. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obrigatório)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

Nome Descrição Valor
localização Local do recurso. corda
nome O nome do recurso corda

Restrições:
Comprimento máximo = (obrigatório)
Propriedades Propriedades da política de firewall do aplicativo Web. WebApplicationFirewallPolicyPropertiesFormat
Tags Marcas de recurso Dicionário de nomes e valores de marca.
tipo O tipo de recurso "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-03-01"

OwaspCrsExclusionEntry

Nome Descrição Valor
matchVariable A variável a ser excluída. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (obrigatório)
seletor Quando matchVariable é uma coleção, o operador usado para especificar a quais elementos na coleção essa exclusão se aplica. cadeia de caracteres (obrigatório)
selectorMatchOperator Quando matchVariable for uma coleção, opere no seletor para especificar a quais elementos na coleção essa exclusão se aplica. 'Contains'
'EndsWith'
'Equals'
'EqualsAny'
'StartsWith' (obrigatório)

PolicySettings

Nome Descrição Valor
fileUploadLimitInMb Tamanho máximo de upload de arquivo em Mb para WAF. int

Restrições:
Valor mínimo = 0
maxRequestBodySizeInKb Tamanho máximo do corpo da solicitação em Kb para WAF. int

Restrições:
Valor mínimo = 8
modo O modo da política. 'Detecção'
'Prevenção'
requestBodyCheck Se o WAF deve permitir que o WAF verifique o corpo da solicitação. Bool
estado O estado da política. 'Desabilitado'
'Habilitado'

ResourceTags

Nome Descrição Valor

WebApplicationFirewallCustomRule

Nome Descrição Valor
ação Tipo de Ações. 'Permitir'
'Bloquear'
'Log' (obrigatório)
matchConditions Lista de condições de correspondência. MatchCondition[] (obrigatório)
nome O nome do recurso que é exclusivo dentro de uma política. Esse nome pode ser usado para acessar o recurso. corda

Restrições:
Comprimento máximo =
prioridade Prioridade da regra. As regras com um valor mais baixo serão avaliadas antes das regras com um valor mais alto. int (obrigatório)
ruleType O tipo de regra. 'Inválido'
'MatchRule' (obrigatório)

WebApplicationFirewallPolicyPropertiesFormat

Nome Descrição Valor
customRules As regras personalizadas dentro da política. WebApplicationFirewallCustomRule[]
managedRules Descreve a estrutura managedRules. ManagedRulesDefinition (obrigatório)
policySettings Os PolicySettings para a política. PolicySettings