Présentation des stratégies de pare-feu reCAPTCHA

Ce document présente les règles du pare-feu reCAPTCHA.

Une stratégie de pare-feu reCAPTCHA est un ensemble de règles qui correspondent aux attributs de condition pour protéger votre site contre le spam et les utilisations abusives. Chaque règle est évaluée pour le trafic entrant. Les règles sont évaluées dans le même ordre que ajouté à la stratégie.

Composants des stratégies de pare-feu reCAPTCHA

Une règle de stratégie de pare-feu reCAPTCHA comprend les composants suivants:

  • path : chemin d'URL auquel s'applique la règle de stratégie de pare-feu. Exemple : /login.
  • condition: condition de règle. Une condition de règle est un langage CEL (Common Expression Language) qui doit renvoyer une valeur booléenne. Exemple : recaptcha.score >= 0.5.
  • action: action que votre fournisseur de services WAF doit exécuter lorsque le si la condition de la règle est remplie. Pour en savoir plus, consultez la section Actions des règles.

Lorsqu'une requête entrante correspond à une condition de stratégie pour le chemin d'accès spécifié, votre fournisseur de services de pare-feu d'application autorise, bloque ou redirige la requête, en fonction de l'action spécifiée. La règle par défaut est d'autoriser l'accès.

Exemple de stratégie de pare-feu reCAPTCHA

L'exemple de stratégie de pare-feu reCAPTCHA suivant contient une règle appliquée à l'action login. Elle bloque l'accès si le score est inférieur à 0,5.

     policy {
          path: login.php
          condition: recaptcha.score < 0.5
          action: block
        }

Attributs de condition de stratégie de pare-feu reCAPTCHA

Le tableau suivant répertorie les attributs de jeton reCAPTCHA que vous pouvez utiliser pour définir des conditions dans vos règles de pare-feu reCAPTCHA.

Nom de l'attribut Type de données Description
recaptcha.token.valid booléen Indique si le jeton reçu est valide. Un jeton est valide s'il est pas mal formé ni expiré, même si le score est faible.
recaptcha.token.action chaîne Nom de l'action fourni lors de la génération du jeton. Renseigné uniquement pour les jetons d'action. Voici l'action transmis à grecaptcha.enterprise.execute() lors de la création du jeton. Pour en savoir plus, consultez la section Noms des actions.
recaptcha.score float Score d'un jeton reCAPTCHA. Un score valide est compris entre 0,0 et 1,0. Le score 1,0 indique que l'interaction présente un risque faible et est très certainement légitime, tandis que 0,0 indique que l'interaction présente un risque élevé et peut être frauduleuse. Pour en savoir plus, consultez la page Interpréter les scores.
recaptcha.assessment_type entier Type d'évaluation effectuée. assessment_type est défini en fonction de la clé reCAPTCHA pour le WAF transmise avec la requête.

Pour comparer la valeur de recaptcha.assessment_type dans votre expression CEL, utilisez l'une des constantes suivantes :

  • AssessmentType.ACTION
  • AssessmentType.SESSION
  • AssessmentType.CHALLENGEPAGE
  • AssessmentType.EXPRESS
Par exemple, pour comparer une évaluation de jeton d'action, utilisez AssessmentType.ACTION
http.ip chaîne Adresse IP de la requête entrante.
http.path chaîne Chemin de l'URI de la requête.
http.domain chaîne Domaine de l'URI demandé.

Actions des stratégies de pare-feu reCAPTCHA

Le tableau suivant répertorie les différentes actions de stratégie que vous pouvez spécifier dans vos règles de stratégie de pare-feu reCAPTCHA :

Action de règle Description Résultat de l'action
allow Autorise l'accès à la page demandée. La requête entrante de l'utilisateur est transmise sans interruption à votre backend.
block Refuse l'accès à la page demandée. Une erreur HTTP 403 (accès interdit) est renvoyée à l'utilisateur.
redirect Redirige la requête entrante de l'utilisateur vers la page de test reCAPTCHA. La page de défi reCAPTCHA évalue la requête de l'utilisateur et associe un cookie en fonction de l'évaluation. Par la suite, l'utilisateur demande est redirigée à nouveau vers la page d'origine.
substitute Affiche une page différente de celle demandée à une demande d'utilisateur frauduleuse. Le chemin d'accès demandé est remplacé par un autre chemin d'accès lors de l'envoi de la requête à votre backend. L'utilisateur continue l'URL d'origine.
set_header Définit un en-tête personnalisé et permet à la requête entrante de l'utilisateur de poursuivre le backend. Le backend peut alors déclencher une protection personnalisée. Un en-tête est associé à la requête de l'utilisateur. Votre backend utilise cette pour déclencher une protection ou une analyse personnalisée.

Étape suivante