Share via


Microsoft.Network ApplicationGatewayWebApplicationFirewallPolicies 2020-11-01

Définition de ressource Bicep

Le type de ressource ApplicationGatewayWebApplicationFirewallPolicies peut être déployé avec des opérations qui ciblent :

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Format des ressources

Pour créer une ressource Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, ajoutez le Bicep suivant à votre modèle.

resource symbolicname 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2020-11-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  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: 'Disabled'
                }
              ]
            }
          ]
          ruleSetType: 'string'
          ruleSetVersion: 'string'
        }
      ]
    }
    policySettings: {
      fileUploadLimitInMb: int
      maxRequestBodySizeInKb: int
      mode: 'string'
      requestBodyCheck: bool
      state: 'string'
    }
  }
}

Valeurs de propriétés

ApplicationGatewayWebApplicationFirewallPolicies

Nom Description Valeur
name Nom de la ressource chaîne (obligatoire)
location Emplacement de la ressource. string
tags Balises de ressource. Dictionnaire de noms et de valeurs d’étiquettes. Voir Balises dans les modèles
properties Propriétés de la stratégie de pare-feu d’applications web. WebApplicationFirewallPolicyPropertiesFormat

WebApplicationFirewallPolicyPropertiesFormat

Nom Description Valeur
customRules Règles personnalisées à l’intérieur de la stratégie. WebApplicationFirewallCustomRule[]
managedRules Décrit la structure managedRules. ManagedRulesDefinition (obligatoire)
policySettings PolicySettings pour la stratégie. PolicySettings

WebApplicationFirewallCustomRule

Nom Description Valeur
action Type d’actions. 'Autoriser'
'Bloquer'
'Log' (obligatoire)
matchConditions Liste des conditions de correspondance. MatchCondition[] (obligatoire)
name Nom de la ressource unique au sein d’une stratégie. Ce nom peut être utilisé pour accéder à la ressource. string

Contraintes :
Longueur maximale = 128
priority Priorité de la règle. Les règles ayant une valeur inférieure sont évaluées avant les règles ayant une valeur supérieure. int (obligatoire)
ruleType Type de règle. 'Non valide'
'MatchRule' (obligatoire)

MatchCondition

Nom Description Valeur
matchValues Valeur de correspondance. string[] (obligatoire)
matchVariables Liste des variables de correspondance. MatchVariable[] (obligatoire)
negationConditon Qu’il s’agisse d’une condition de non-contrôle ou non. bool
operator Opérateur à mettre en correspondance. 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (obligatoire)
transformations Liste des transformations. Tableau de chaînes contenant l’un des éléments suivants :
'HtmlEntityDecode'
'Minuscule'
'RemoveNulls'
'Découper'
'UrlDecode'
'UrlEncode'

MatchVariable

Nom Description Valeur
selector Sélecteur de la variable de correspondance. string
variableName Variable de correspondance. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obligatoire)

ManagedRulesDefinition

Nom Description Valeur
exclusions Exclusions appliquées à la stratégie. OwaspCrsExclusionEntry[]
managedRuleSets Ensembles de règles managés associés à la stratégie. ManagedRuleSet[] (obligatoire)

OwaspCrsExclusionEntry

Nom Description Valeur
matchVariable Variable à exclure. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (obligatoire)
selector Lorsque matchVariable est une collection, opérateur utilisé pour spécifier les éléments de la collection auxquels cette exclusion s’applique. string (obligatoire)
selectorMatchOperator Lorsque matchVariable est une collection, utilisez le sélecteur pour spécifier les éléments de la collection auxquels cette exclusion s’applique. 'Contains'
'EndsWith'
'Égal à'
'EqualsAny'
'StartsWith' (obligatoire)

ManagedRuleSet

Nom Description Valeur
ruleGroupOverrides Définit les remplacements de groupe de règles à appliquer à l’ensemble de règles. ManagedRuleGroupOverride[]
ruleSetType Définit le type d’ensemble de règles à utiliser. string (obligatoire)
ruleSetVersion Définit la version de l’ensemble de règles à utiliser. string (obligatoire)

ManagedRuleGroupOverride

Nom Description Valeur
ruleGroupName Groupe de règles managées à remplacer. string (obligatoire)
rules Liste des règles qui seront désactivées. Si aucune n’est spécifiée, toutes les règles du groupe sont désactivées. ManagedRuleOverride[]

ManagedRuleOverride

Nom Description Valeur
ruleId Identificateur de la règle managée. string (obligatoire)
state État de la règle gérée. La valeur par défaut est Désactivé si elle n’est pas spécifiée. 'Désactivé'

PolicySettings

Nom Description Valeur
fileUploadLimitInMb Taille maximale de chargement de fichier en Mo pour WAF. int

Contraintes :
Valeur minimale = 0
maxRequestBodySizeInKb Taille maximale du corps de la requête en Ko pour WAF. int

Contraintes :
Valeur minimale = 8
Valeur maximale = 128
mode Mode de la stratégie. 'Détection'
'Prévention'
requestBodyCheck Indique s’il faut autoriser WAF à case activée corps de la requête. bool
state État de la stratégie. 'Désactivé'
'Enabled'

Modèles de démarrage rapide

Les modèles de démarrage rapide suivants déploient ce type de ressource.

Modèle Description
Create un WAF Azure v2 sur Azure Application Gateway

Déployer sur Azure
Ce modèle crée un azure Web Application Firewall v2 sur Azure Application Gateway avec deux serveurs Windows Server 2016 dans le pool principal
Cluster AKS avec une passerelle NAT et un Application Gateway

Déployer sur Azure
Cet exemple montre comment déployer un cluster AKS avec une passerelle NAT pour les connexions sortantes et un Application Gateway pour les connexions entrantes.
Front Door Standard/Premium avec origine Application Gateway

Déployer sur Azure
Ce modèle crée une instance Front Door Standard/Premium et une Application Gateway instance, et utilise une stratégie de groupe de sécurité réseau et de WAF pour vérifier que le trafic a transité par l’origine de Front Door.
Porte d’entrée avec Container Instances et Application Gateway

Déployer sur Azure
Ce modèle crée un Front Door Standard/Premium avec un groupe de conteneurs et Application Gateway.
Cluster AKS avec le contrôleur d’entrée Application Gateway

Déployer sur Azure
Cet exemple montre comment déployer un cluster AKS avec Application Gateway, Application Gateway contrôleur d’entrée, Azure Container Registry, Log Analytics et Key Vault
Application Gateway avec waf et stratégie de pare-feu

Déployer sur Azure
Ce modèle crée un Application Gateway avec waf configuré avec une stratégie de pare-feu

Définition de ressources de modèle ARM

Le type de ressource ApplicationGatewayWebApplicationFirewallPolicies peut être déployé avec des opérations qui ciblent :

Pour obtenir la liste des propriétés modifiées dans chaque version d’API, consultez journal des modifications.

Format des ressources

Pour créer une ressource Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, ajoutez le json suivant à votre modèle.

{
  "type": "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies",
  "apiVersion": "2020-11-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "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": "Disabled"
                }
              ]
            }
          ],
          "ruleSetType": "string",
          "ruleSetVersion": "string"
        }
      ]
    },
    "policySettings": {
      "fileUploadLimitInMb": "int",
      "maxRequestBodySizeInKb": "int",
      "mode": "string",
      "requestBodyCheck": "bool",
      "state": "string"
    }
  }
}

Valeurs de propriétés

ApplicationGatewayWebApplicationFirewallPolicies

Nom Description Valeur
type Type de ressource 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies'
apiVersion Version de l’API de ressource '2020-11-01'
name Nom de la ressource string (obligatoire)
location Emplacement de la ressource. string
tags Balises de ressource. Dictionnaire de noms et de valeurs d’étiquettes. Voir Balises dans les modèles
properties Propriétés de la stratégie de pare-feu d’applications web. WebApplicationFirewallPolicyPropertiesFormat

WebApplicationFirewallPolicyPropertiesFormat

Nom Description Valeur
customRules Règles personnalisées à l’intérieur de la stratégie. WebApplicationFirewallCustomRule[]
managedRules Décrit la structure managedRules. ManagedRulesDefinition (obligatoire)
policySettings PolicySettings pour la stratégie. PolicySettings

WebApplicationFirewallCustomRule

Nom Description Valeur
action Type d’actions. 'Autoriser'
'Bloquer'
'Log' (obligatoire)
matchConditions Liste des conditions de correspondance. MatchCondition[] (obligatoire)
name Nom de la ressource unique dans une stratégie. Ce nom peut être utilisé pour accéder à la ressource. string

Contraintes :
Longueur maximale = 128
priority Priorité de la règle. Les règles avec une valeur inférieure sont évaluées avant les règles avec une valeur supérieure. int (obligatoire)
ruleType Type de règle. 'Invalid'
'MatchRule' (obligatoire)

MatchCondition

Nom Description Valeur
matchValues Valeur de correspondance. string[] (obligatoire)
matchVariables Liste des variables de correspondance. MatchVariable[] (obligatoire)
negationConditon Indique s’il s’agit d’une condition négation ou non. bool
operator Opérateur à mettre en correspondance. 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (obligatoire)
transformations Liste des transformations. Tableau de chaînes contenant l’un des éléments suivants :
'HtmlEntityDecode'
'Minuscule'
'RemoveNulls'
'Découper'
'UrlDecode'
'UrlEncode'

MatchVariable

Nom Description Valeur
selector Sélecteur de la variable de correspondance. string
variableName Variable de correspondance. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obligatoire)

ManagedRulesDefinition

Nom Description Valeur
exclusions Exclusions appliquées à la stratégie. OwaspCrsExclusionEntry[]
managedRuleSets Ensembles de règles managés associés à la stratégie. ManagedRuleSet[] (obligatoire)

OwaspCrsExclusionEntry

Nom Description Valeur
matchVariable Variable à exclure. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (obligatoire)
selector Lorsque matchVariable est une collection, opérateur utilisé pour spécifier les éléments de la collection auxquels cette exclusion s’applique. string (obligatoire)
selectorMatchOperator Lorsque matchVariable est une collection, utilisez le sélecteur pour spécifier les éléments de la collection auxquels cette exclusion s’applique. 'Contains'
'EndsWith'
'Égal à'
'EqualsAny'
'StartsWith' (obligatoire)

ManagedRuleSet

Nom Description Valeur
ruleGroupOverrides Définit les remplacements de groupe de règles à appliquer à l’ensemble de règles. ManagedRuleGroupOverride[]
ruleSetType Définit le type d’ensemble de règles à utiliser. chaîne (obligatoire)
ruleSetVersion Définit la version de l’ensemble de règles à utiliser. chaîne (obligatoire)

ManagedRuleGroupOverride

Nom Description Valeur
ruleGroupName Groupe de règles managées à remplacer. chaîne (obligatoire)
rules Liste des règles qui seront désactivées. Si aucune n’est spécifiée, toutes les règles du groupe sont désactivées. ManagedRuleOverride[]

ManagedRuleOverride

Nom Description Valeur
ruleId Identificateur de la règle managée. chaîne (obligatoire)
state État de la règle managée. La valeur par défaut est Désactivée si elle n’est pas spécifiée. 'Désactivé'

PolicySettings

Nom Description Valeur
fileUploadLimitInMb Taille maximale de chargement de fichier en Mo pour WAF. int

Contraintes :
Valeur minimale = 0
maxRequestBodySizeInKb Taille maximale du corps de la demande en Ko pour WAF. int

Contraintes :
Valeur minimale = 8
Valeur maximale = 128
mode Mode de la stratégie. 'Détection'
'Prévention'
requestBodyCheck Indique s’il faut autoriser WAF à case activée corps de la requête. bool
state État de la stratégie. 'Désactivé'
'Enabled'

Modèles de démarrage rapide

Les modèles de démarrage rapide suivants déploient ce type de ressource.

Modèle Description
Create un WAF Azure v2 sur Azure Application Gateway

Déployer sur Azure
Ce modèle crée un azure Web Application Firewall v2 sur Azure Application Gateway avec deux serveurs Windows Server 2016 dans le pool principal
Cluster AKS avec une passerelle NAT et un Application Gateway

Déployer sur Azure
Cet exemple montre comment déployer un cluster AKS avec une passerelle NAT pour les connexions sortantes et un Application Gateway pour les connexions entrantes.
Front Door Standard/Premium avec origine Application Gateway

Déployer sur Azure
Ce modèle crée un Front Door Standard/Premium et un Application Gateway instance, et utilise une stratégie NSG et WAF pour vérifier que le trafic est passé par l’origine Front Door.
Porte d’entrée avec Container Instances et Application Gateway

Déployer sur Azure
Ce modèle crée un Front Door Standard/Premium avec un groupe de conteneurs et Application Gateway.
Cluster AKS avec le contrôleur d’entrée Application Gateway

Déployer sur Azure
Cet exemple montre comment déployer un cluster AKS avec Application Gateway, Application Gateway contrôleur d’entrée, Azure Container Registry, Log Analytics et Key Vault
Application Gateway avec waf et stratégie de pare-feu

Déployer sur Azure
Ce modèle crée un Application Gateway avec WAF configuré avec une stratégie de pare-feu

Définition de ressource Terraform (fournisseur AzAPI)

Le type de ressource ApplicationGatewayWebApplicationFirewallPolicies peut être déployé avec des opérations qui ciblent :

  • Groupes de ressources

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Format des ressources

Pour créer une ressource Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, ajoutez le Terraform suivant à votre modèle.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2020-11-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  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 = "Disabled"
                  }
                ]
              }
            ]
            ruleSetType = "string"
            ruleSetVersion = "string"
          }
        ]
      }
      policySettings = {
        fileUploadLimitInMb = int
        maxRequestBodySizeInKb = int
        mode = "string"
        requestBodyCheck = bool
        state = "string"
      }
    }
  })
}

Valeurs de propriétés

ApplicationGatewayWebApplicationFirewallPolicies

Nom Description Valeur
type Type de ressource « Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2020-11-01 »
name Nom de la ressource chaîne (obligatoire)
location Emplacement de la ressource. string
parent_id Pour effectuer un déploiement sur un groupe de ressources, utilisez l’ID de ce groupe de ressources. chaîne (obligatoire)
tags Balises de ressource. Dictionnaire de noms et de valeurs d’étiquettes.
properties Propriétés de la stratégie de pare-feu d’applications web. WebApplicationFirewallPolicyPropertiesFormat

WebApplicationFirewallPolicyPropertiesFormat

Nom Description Valeur
customRules Règles personnalisées à l’intérieur de la stratégie. WebApplicationFirewallCustomRule[]
managedRules Décrit la structure managedRules. ManagedRulesDefinition (obligatoire)
policySettings PolicySettings pour la stratégie. PolicySettings

WebApplicationFirewallCustomRule

Nom Description Valeur
action Type d’actions. « Autoriser »
« Bloquer »
« Journal » (obligatoire)
matchConditions Liste des conditions de correspondance. MatchCondition[] (obligatoire)
name Nom de la ressource unique au sein d’une stratégie. Ce nom peut être utilisé pour accéder à la ressource. string

Contraintes :
Longueur maximale = 128
priority Priorité de la règle. Les règles ayant une valeur inférieure sont évaluées avant les règles ayant une valeur supérieure. int (obligatoire)
ruleType Type de règle. « Non valide »
« MatchRule » (obligatoire)

MatchCondition

Nom Description Valeur
matchValues Valeur de correspondance. string[] (obligatoire)
matchVariables Liste des variables de correspondance. MatchVariable[] (obligatoire)
negationConditon Qu’il s’agisse d’une condition de non-contrôle ou non. bool
operator Opérateur à mettre en correspondance. « BeginsWith »
« Contient »
« EndsWith »
« Égal »
« GeoMatch »
« GreaterThan »
« GreaterThanOrEqual »
« IPMatch »
« LessThan »
« LessThanOrEqual »
« Regex » (obligatoire)
transformations Liste des transformations. Tableau de chaînes contenant l’un des éléments suivants :
« HtmlEntityDecode »
« Minuscules »
« RemoveNulls »
« Rogner »
« UrlDecode »
« UrlEncode »

MatchVariable

Nom Description Valeur
selector Sélecteur de la variable de correspondance. string
variableName Variable de correspondance. « PostArgs »
« QueryString »
« RemoteAddr »
« RequestBody »
« RequestCookies »
« RequestHeaders »
« RequestMethod »
« RequestUri » (obligatoire)

ManagedRulesDefinition

Nom Description Valeur
exclusions Exclusions appliquées à la stratégie. OwaspCrsExclusionEntry[]
managedRuleSets Ensembles de règles managés associés à la stratégie. ManagedRuleSet[] (obligatoire)

OwaspCrsExclusionEntry

Nom Description Valeur
matchVariable Variable à exclure. « RequestArgNames »
« RequestCookieNames »
« RequestHeaderNames » (obligatoire)
selector Lorsque matchVariable est une collection, opérateur utilisé pour spécifier les éléments de la collection auxquels cette exclusion s’applique. string (obligatoire)
selectorMatchOperator Lorsque matchVariable est une collection, utilisez le sélecteur pour spécifier les éléments de la collection auxquels cette exclusion s’applique. « Contains »
« EndsWith »
« Égal à »
« EqualsAny »
« StartsWith » (obligatoire)

ManagedRuleSet

Nom Description Valeur
ruleGroupOverrides Définit les remplacements de groupe de règles à appliquer à l’ensemble de règles. ManagedRuleGroupOverride[]
ruleSetType Définit le type d’ensemble de règles à utiliser. string (obligatoire)
ruleSetVersion Définit la version de l’ensemble de règles à utiliser. string (obligatoire)

ManagedRuleGroupOverride

Nom Description Valeur
ruleGroupName Groupe de règles managées à remplacer. string (obligatoire)
rules Liste des règles qui seront désactivées. Si aucune n’est spécifiée, toutes les règles du groupe sont désactivées. ManagedRuleOverride[]

ManagedRuleOverride

Nom Description Valeur
ruleId Identificateur de la règle managée. string (obligatoire)
state État de la règle gérée. La valeur par défaut est Désactivé si elle n’est pas spécifiée. « Désactivé »

PolicySettings

Nom Description Valeur
fileUploadLimitInMb Taille maximale de chargement de fichier en Mo pour WAF. int

Contraintes :
Valeur minimale = 0
maxRequestBodySizeInKb Taille maximale du corps de la requête en Ko pour WAF. int

Contraintes :
Valeur minimale = 8
Valeur maximale = 128
mode Mode de la stratégie. « Détection »
« Prévention »
requestBodyCheck Indique s’il faut autoriser WAF à case activée corps de la requête. bool
state État de la stratégie. « Désactivé »
« Activé »