Configurez la protection bot pour le pare-feu d’applications web

Le service Azure Web Application Firewall (WAF) pour Front Door fournit des règles de bot pour identifier les bots bienveillants et protéger contre les bots malveillants. Pour plus d’informations sur l’ensemble de règles de protection bot, consultez Ensemble de règles de protection bot.

Cet article explique comment activer les règles de protection bot sur le niveau Azure Front Door Premium.

Conditions préalables requises

Créez une stratégie de pare-feu d’applications web (WAF) de base pour Front Door en suivant les instructions décrites dans Créer une stratégie WAF pour Azure Front Door à l’aide du portail Azure.

Activer l’ensemble de règles de protection bot

  1. Dans le portail Azure, accédez à votre stratégie WAF.

  2. Sélectionnez Règles managées, puis Attribuer.

    Capture d’écran du portail Azure montrant la configuration des règles managées de la stratégie WAF et le bouton Attribuer mis en évidence.

  3. Dans la liste déroulante Ensemble de règles supplémentaire, sélectionnez la version de l’ensemble de règles de protection bot que vous souhaitez utiliser. Il est généralement recommandé d’utiliser la version la plus récente de l’ensemble de règles.

    Capture d’écran du portail Azure montrant la page d’attribution de règles managées, avec le champ déroulant « Ensemble de règles supplémentaire » mis en évidence.

  4. Sélectionnez Enregistrer.

Obtenir la configuration actuelle de votre stratégie WAF

Utilisez l’applet de commande Get-AzFrontDoorWafPolicy pour récupérer la configuration actuelle de votre stratégie WAF. Vérifiez que vous utilisez le nom de groupe de ressources et le nom de stratégie WAF appropriés pour votre propre environnement.

$frontDoorWafPolicy = Get-AzFrontDoorWafPolicy `
  -ResourceGroupName 'FrontDoorWafPolicy' `
  -Name 'WafPolicy'

Ajoutez l’ensemble de règles de protection bot :

Utilisez l’applet de commande New-AzFrontDoorWafManagedRuleObject pour sélectionner l’ensemble de règles de protection bot, y compris la version de l’ensemble de règles. Ajoutez ensuite l’ensemble de règles à la configuration de la stratégie WAF.

L’exemple ci-dessous ajoute la version 1.0 de l’ensemble de règles de protection bot à la configuration de la stratégie WAF.

$botProtectionRuleSet = New-AzFrontDoorWafManagedRuleObject `
  -Type 'Microsoft_BotManagerRuleSet' `
  -Version '1.0'

$frontDoorWafPolicy.ManagedRules.Add($botProtectionRuleSet)

Appliquer la configuration

Utilisez l’applet de commande Update-AzFrontDoorWafPolicy pour mettre à jour votre stratégie WAF afin d’inclure la configuration que vous avez créée ci-dessus.

$frontDoorWafPolicy | Update-AzFrontDoorWafPolicy

Activer l’ensemble de règles de protection bot

Utilisez la commande az network front-door waf-policy managed-rules add pour mettre à jour votre stratégie WAF afin d’ajouter l’ensemble de règles de protection bot.

L’exemple ci-dessous ajoute la version 1.0 de l’ensemble de règles de protection bot à la stratégie WAF. Vérifiez que vous utilisez le nom de groupe de ressources et le nom de stratégie WAF appropriés pour votre propre environnement.

az network front-door waf-policy managed-rules add \
  --resource-group FrontDoorWafPolicy \
  --policy-name WafPolicy \
  --type Microsoft_BotManagerRuleSet \
  --version 1.0

L’exemple de fichier Bicep suivant montre comment effectuer les étapes suivantes :

  • Créez une stratégie WAF Front Door.
  • Activez la version 1.0 de l’ensemble de règles de protection bot.
param wafPolicyName string = 'WafPolicy'

@description('The mode that the WAF should be deployed using. In "Prevention" mode, the WAF will block requests it detects as malicious. In "Detection" mode, the WAF will not block requests and will simply log the request.')
@allowed([
  'Detection'
  'Prevention'
])
param wafMode string = 'Prevention'

resource wafPolicy 'Microsoft.Network/frontDoorWebApplicationFirewallPolicies@2022-05-01' = {
  name: wafPolicyName
  location: 'Global'
  sku: {
    name: 'Premium_AzureFrontDoor'
  }
  properties: {
    policySettings: {
      enabledState: 'Enabled'
      mode: wafMode
    }
    managedRules: {
      managedRuleSets: [
        {
          ruleSetType: 'Microsoft_BotManagerRuleSet'
          ruleSetVersion: '1.0'
        }
      ]
    }
  }
}

Étapes suivantes