Partager via


Microsoft.Network ApplicationGatewayWebApplicationFirewallPolicies 2021-03-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 de ressource

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

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'
  }
}

Valeurs de propriété

ManagedRuleGroupOverride

Nom Description Valeur
ruleGroupName Groupe de règles managées à remplacer. chaîne (obligatoire)
règlement Liste des règles qui seront désactivées. Si aucune valeur 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)
état É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é'

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)

ManagedRuleSet

Nom Description Valeur
ruleGroupOverrides Définit les remplacements du groupe de règles à appliquer au jeu de règles. ManagedRuleGroupOverride[]
ruleSetType Définit le type d’ensemble de règles à utiliser. chaîne (obligatoire)
ruleSetVersion Définit la version du jeu de règles à utiliser. chaîne (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-négation ou non. Bool
opérateur Opérateur à mettre en correspondance. 'BeginsWith'
'Contains'
'EndsWith'
'Égal'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (obligatoire)
Transforme Liste des transformations. Tableau de chaînes contenant l’un des éléments suivants :
'HtmlEntityDecode'
'Minuscules'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

Nom Description Valeur
sélecteur Sélecteur de variable de correspondance. corde
variableName Mettre en correspondance la variable. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obligatoire)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

Nom Description Valeur
emplacement Emplacement des ressources. corde
nom Nom de la ressource corde

Contraintes:
Longueur maximale = (obligatoire)
Propriétés Propriétés de la stratégie de pare-feu d’applications web. WebApplicationFirewallPolicyPropertiesFormat
étiquettes Balises de ressource Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles

OwaspCrsExclusionEntry

Nom Description Valeur
matchVariable Variable à exclure. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (obligatoire)
sélecteur Lorsque matchVariable est une collection, l’opérateur utilisé pour spécifier les éléments de la collection auquel cette exclusion s’applique. chaîne (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'
'Equals'
'EqualsAny'
'StartsWith' (obligatoire)

PolicySettings

Nom Description Valeur
fileUploadLimitInMb Taille maximale du chargement de fichiers 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
mode Mode de la stratégie. 'Détection'
'Prévention'
requestBodyCheck Indique s’il faut autoriser waf à vérifier le corps de la demande. Bool
état État de la stratégie. 'Désactivé'
'Activé'

ResourceTags

Nom Description Valeur

WebApplicationFirewallCustomRule

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

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

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

Exemples de démarrage rapide

Les exemples de démarrage rapide suivants déploient ce type de ressource.

Fichier Bicep Description
cluster AKS avec une passerelle NAT et un Application Gateway Cet exemple montre comment déployer un cluster AKS avec NAT Gateway pour les connexions sortantes et une passerelle Application Gateway pour les connexions entrantes.
cluster AKS avec le contrôleur d’entrée Application Gateway Cet exemple montre comment déployer un cluster AKS avec Application Gateway, Application Gateway Ingress Controller, Azure Container Registry, Log Analytics et Key Vault
Application Gateway avec le pare-feu d’applications web et la stratégie de pare-feu Ce modèle crée une passerelle Application Gateway avec WAF configurée avec une stratégie de pare-feu
Créer un waf Azure v2 sur Azure Application Gateway Ce modèle crée un pare-feu d’applications web Azure v2 sur Azure Application Gateway avec deux serveurs Windows Server 2016 dans le pool principal
Front Door Standard/Premium avec l’origine d’Application Gateway Ce modèle crée une instance Front Door Standard/Premium et Application Gateway et utilise un groupe de sécurité réseau et une stratégie WAF pour vérifier que le trafic est passé par l’origine Front Door.
Front Door avec container Instances et application Gateway Ce modèle crée un Front Door Standard/Premium avec un groupe de conteneurs et Application Gateway.

Définition de ressource 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 de l’API, consultez journal des modifications.

Format de ressource

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

{
  "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"
  }
}

Valeurs de propriété

ManagedRuleGroupOverride

Nom Description Valeur
ruleGroupName Groupe de règles managées à remplacer. chaîne (obligatoire)
règlement Liste des règles qui seront désactivées. Si aucune valeur 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)
état É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é'

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)

ManagedRuleSet

Nom Description Valeur
ruleGroupOverrides Définit les remplacements du groupe de règles à appliquer au jeu de règles. ManagedRuleGroupOverride[]
ruleSetType Définit le type d’ensemble de règles à utiliser. chaîne (obligatoire)
ruleSetVersion Définit la version du jeu de règles à utiliser. chaîne (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-négation ou non. Bool
opérateur Opérateur à mettre en correspondance. 'BeginsWith'
'Contains'
'EndsWith'
'Égal'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (obligatoire)
Transforme Liste des transformations. Tableau de chaînes contenant l’un des éléments suivants :
'HtmlEntityDecode'
'Minuscules'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

Nom Description Valeur
sélecteur Sélecteur de variable de correspondance. corde
variableName Mettre en correspondance la variable. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obligatoire)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

Nom Description Valeur
apiVersion Version de l’API '2021-03-01'
emplacement Emplacement des ressources. corde
nom Nom de la ressource corde

Contraintes:
Longueur maximale = (obligatoire)
Propriétés Propriétés de la stratégie de pare-feu d’applications web. WebApplicationFirewallPolicyPropertiesFormat
étiquettes Balises de ressource Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles
type Type de ressource 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies'

OwaspCrsExclusionEntry

Nom Description Valeur
matchVariable Variable à exclure. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (obligatoire)
sélecteur Lorsque matchVariable est une collection, l’opérateur utilisé pour spécifier les éléments de la collection auquel cette exclusion s’applique. chaîne (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'
'Equals'
'EqualsAny'
'StartsWith' (obligatoire)

PolicySettings

Nom Description Valeur
fileUploadLimitInMb Taille maximale du chargement de fichiers 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
mode Mode de la stratégie. 'Détection'
'Prévention'
requestBodyCheck Indique s’il faut autoriser waf à vérifier le corps de la demande. Bool
état État de la stratégie. 'Désactivé'
'Activé'

ResourceTags

Nom Description Valeur

WebApplicationFirewallCustomRule

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

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

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

Modèles de démarrage rapide

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

Modèle Description
cluster AKS avec une passerelle NAT et un Application Gateway

Déployer sur Azure
Cet exemple montre comment déployer un cluster AKS avec NAT Gateway pour les connexions sortantes et une passerelle Application Gateway pour les connexions entrantes.
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 Ingress Controller, Azure Container Registry, Log Analytics et Key Vault
Application Gateway avec le pare-feu d’applications web et la stratégie de pare-feu

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

Déployer sur Azure
Ce modèle crée un pare-feu d’applications web Azure v2 sur Azure Application Gateway avec deux serveurs Windows Server 2016 dans le pool principal
Front Door Standard/Premium avec l’origine d’Application Gateway

Déployer sur Azure
Ce modèle crée une instance Front Door Standard/Premium et Application Gateway et utilise un groupe de sécurité réseau et une stratégie WAF pour vérifier que le trafic est passé par l’origine Front Door.
Front Door 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.

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 de ressource

Pour créer une ressource Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies, ajoutez la terraform suivante à votre modèle.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-03-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"
      }
    }
  })
}

Valeurs de propriété

ManagedRuleGroupOverride

Nom Description Valeur
ruleGroupName Groupe de règles managées à remplacer. chaîne (obligatoire)
règlement Liste des règles qui seront désactivées. Si aucune valeur 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)
état É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é'

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)

ManagedRuleSet

Nom Description Valeur
ruleGroupOverrides Définit les remplacements du groupe de règles à appliquer au jeu de règles. ManagedRuleGroupOverride[]
ruleSetType Définit le type d’ensemble de règles à utiliser. chaîne (obligatoire)
ruleSetVersion Définit la version du jeu de règles à utiliser. chaîne (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-négation ou non. Bool
opérateur Opérateur à mettre en correspondance. 'BeginsWith'
'Contains'
'EndsWith'
'Égal'
'GeoMatch'
'GreaterThan'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex' (obligatoire)
Transforme Liste des transformations. Tableau de chaînes contenant l’un des éléments suivants :
'HtmlEntityDecode'
'Minuscules'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

Nom Description Valeur
sélecteur Sélecteur de variable de correspondance. corde
variableName Mettre en correspondance la variable. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri' (obligatoire)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

Nom Description Valeur
emplacement Emplacement des ressources. corde
nom Nom de la ressource corde

Contraintes:
Longueur maximale = (obligatoire)
Propriétés Propriétés de la stratégie de pare-feu d’applications web. WebApplicationFirewallPolicyPropertiesFormat
étiquettes Balises de ressource Dictionnaire de noms et de valeurs d’étiquettes.
type Type de ressource « Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-03-01 »

OwaspCrsExclusionEntry

Nom Description Valeur
matchVariable Variable à exclure. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames' (obligatoire)
sélecteur Lorsque matchVariable est une collection, l’opérateur utilisé pour spécifier les éléments de la collection auquel cette exclusion s’applique. chaîne (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'
'Equals'
'EqualsAny'
'StartsWith' (obligatoire)

PolicySettings

Nom Description Valeur
fileUploadLimitInMb Taille maximale du chargement de fichiers 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
mode Mode de la stratégie. 'Détection'
'Prévention'
requestBodyCheck Indique s’il faut autoriser waf à vérifier le corps de la demande. Bool
état État de la stratégie. 'Désactivé'
'Activé'

ResourceTags

Nom Description Valeur

WebApplicationFirewallCustomRule

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

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

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