Comment appliquer une limite de débit à un paramètre de demande ou à une URL spécifique dans AWS WAF ?

Dernière mise à jour : 21/07/2022

Comment appliquer une limite de débit à un paramètre de demande ou à une URL spécifique dans AWS WAF ?

Courte description

AWS WAF dispose de règles basées sur le débit qui suivent le taux de demandes pour chaque adresse IP d'origine. Les règles lancent l'action de règle sur les adresses IP dont les taux dépassent une limite spécifiée sur une période de cinq minutes.

Vous pouvez utiliser une règle basée sur le débit pour bloquer temporairement les demandes provenant d'une adresse IP qui envoie un nombre excessif de demandes. Par défaut, AWS WAF regroupe les demandes en fonction de l'adresse IP de l'origine de la demande Web. Toutefois, vous pouvez configurer la règle pour utiliser une adresse IP provenant d'un en-tête HTTP, tel que X-Forwarded-For, à la place.

Pour ces déclarations de règle basées sur le débit, vous pouvez également définir des conditions dans le cadre des déclarations de réduction de la portée. Vous pouvez définir des conditions afin que seules les demandes correspondant aux instructions de réduction de la portée soient prises en compte par cette règle pour l’évaluation.

Remarque : la console AWS WAF ne propose pas d'option pour les "déclarations de réduction de la portée" pour une règle basée sur le débit. Sélectionnez l'option Ne prendre en compte que les demandes qui correspondent aux critères d'un énoncé de règle pour créer l'équivalent d'une instruction de réduction de la portée.

La résolution suivante considère deux scénarios dans lesquels vous pouvez personnaliser la règle basée sur le débit en fonction d'un paramètre spécifique.

Solution

Scénario 1 : Ajouter une limite de débit à une URL spécifique

Remarque : Vous pouvez spécifier n'importe quel paramètre de requête.

  1. Ouvrez la console AWS WAF.
  2. Sélectionnez les ACL Web
  3. Sélectionnez la liste ACL Web, puis l'onglet Règles.
  4. Sélectionnez Ajouter des règles.
  5. Sélectionnez Ajouter mes propres règles et groupes de règles.
  6. Sélectionnez Générateur de règles pour le Type de règle.
  7. Saisissez un Nom et sélectionnez Règle basée sur le débit.
  8. Entrez les paramètres suivants pour les Détails du débit demandé:
    Limite de débit : Entrez un nombre compris entre 100 et 20 000 000. Il s'agit du nombre maximum de demandes autorisées pour chaque IP sur une période de 5 minutes.
    Adresse IP à utiliser pour la limitation du débit : si vous souhaitez appliquer une limite de débit basée sur le champ IP du client, sélectionnez Adresse IP source. Ou, si vous souhaitez appliquer une limite de débit basée sur l'adresse IP dans l'en-tête, sélectionnez Adresse IP dans l'en-tête. Par exemple, X-Forwarder-for.
    Critères de prise en compte des demandes dans la limite de débit : sélectionnez Ne prendre en compte que les demandes qui correspondent aux critères d'un énoncé de règle.
  9. Dans la liste déroulante Si une demande, sélectionnez correspond à l'instruction. Si vous avez plusieurs conditions à spécifier, vous pouvez modifier cette sélection en fonction de votre application.
  10. Remplissez les champs suivants dans la section Détails de la Déclaration :
    Remarque : Dans cet exemple, la limite de débit se trouve sur le chemin d'URL " /admin". Vous pouvez modifier les détails en fonction de votre cas d'utilisation.
    Inspecter : chemin d'URL
    Type de correspondance : Contient une chaîne
    Chaîne correspondante : /admin
    Transformation du texte : Aucune
  11. Dans la section Action, sélectionnez Bloquer.
  12. Sélectionnez Ajouter une règle. Déplacez la règle sur la bonne priorité pour votre cas d'utilisation, puis sélectionnez Enregistrer.

Scénario 2 : Exclure les adresses IP internes sélectionnées des règles de limite de débit

Dans ce scénario, créez un ensemble d'adresses IP contenant toutes vos adresses IP internes. Ensuite, excluez cet ensemble d'adresses IP dans l'instruction de réduction de portée.

Suivez les étapes suivantes pour exclure un ensemble d'adresses IP d'une règle basée sur le débit :

  1. Ouvrez la console AWS WAF.
  2. Sélectionnez ACL Web.
  3. Sélectionnez la liste ACL Web, puis l'onglet Règles.
  4. Sélectionnez Ajouter des règles.
  5. Sélectionnez Ajouter mes propres règles et groupes de règles.
  6. Sélectionnez Générateur de règles pour le Type de règle.
  7. Entrez un Nom et sélectionnez Règle basée sur le débit comme Type.
  8. Entrez les paramètres suivants pour les Détails du débit demandé:
    Limite de débit : Entrez un nombre compris entre 100 et 20 000 000. Il s'agit du nombre maximum de demandes autorisées pour chaque IP sur une période de 5 minutes.
    Adresse IP à utiliser pour la limitation du débit : si vous souhaitez que la limite de débit soit basée sur le champ IP du client, sélectionnez Adresse IP source. Ou, si vous souhaitez que la limite de débit soit basée sur l'adresse IP dans l'en-tête, sélectionnez Adresse IP dans l'en-tête. Par exemple, X-Forwarder-for.
    Critères de prise en compte des demandes dans la limite de débit : sélectionnez Ne prendre en compte que les demandes qui correspondent aux critères d'un énoncé de règle.
  9. Dans la liste déroulante Si une demande, sélectionnez ne correspond pas à l’instruction (NOT).
  10. Remplissez les champs suivants dans la section Détails de la Déclaration :
    Inspecter : provient d'une adresse IP interne.
    Ensemble d'adresses IP : Sélectionnez l'ensemble d'adresses IP dans la liste déroulante.
    Adresse IP à utiliser comme adresse d'origine : si vous souhaitez que la limite de débit soit basée sur le champ IP du client, sélectionnez Adresse IP source. Ou, si vous souhaitez que la limite de débit soit basée sur l'adresse IP dans l'en-tête, sélectionnez Adresse IP dans l'en-tête. Par exemple, X-Forwarder-for.
  11. Dans la section Action, sélectionnez Bloquer.
  12. Sélectionnez Ajouter une règle. Déplacez la règle dans la bonne priorité pour votre cas d'utilisation, puis sélectionnez Enregistrer.

Cet article vous a-t-il été utile ?


Avez-vous besoin d'aide pour une question technique ou de facturation ?