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

Ce document présente les stratégies de pare-feu reCAPTCHA.

Une stratégie de pare-feu reCAPTCHA est un ensemble de règles qui mettent en correspondance des attributs de condition afin de 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 dans la stratégie.

Composants de la stratégie de pare-feu reCAPTCHA

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

  • path: chemin d'URL auquel la règle de stratégie de pare-feu s'applique. Exemple : /login.
  • condition: condition de règle. Une condition de règle est une expression CEL (Common Expression Language) qui doit être associée à une valeur booléenne. Exemple : recaptcha.score >= 0.5.
  • action: action que votre fournisseur de services WAF doit exécuter lorsque la condition de la stratégie est remplie. Pour en savoir plus, consultez les actions liées au règlement.

Lorsqu'une requête entrante correspond à une condition de règle pour le chemin d'accès spécifié, votre fournisseur de services WAF autorise, bloque ou redirige la requête en fonction de l'action spécifiée. La règle par défaut consiste à 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. Il 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 stratégies de pare-feu reCAPTCHA.

Nom de l'attribut Type de données Description
recaptcha.token.valid boolean Indique si le jeton reçu est valide. Un jeton est valide s'il n'est pas incorrect ou s'il a expiré, même si le score est faible.
recaptcha.token.action chaîne Nom d'action fourni lors de la génération du jeton. Renseigné uniquement pour les jetons d'action. Il s'agit du paramètre 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 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 de la stratégie 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:

Mesures prises pour non-respect des règles Description Résultat de l'action
allow Autorise l'accès à la page demandée. La requête entrante de l'utilisateur n'est pas interrompue dans votre backend.
block Interdit l'accès à la page demandée. Une erreur HTTP 403 (interdit) est renvoyée à l'utilisateur.
redirect Redirige la requête entrante de l'utilisateur vers la page de test reCAPTCHA. La page de test reCAPTCHA évalue la requête de l'utilisateur et associe un cookie en fonction de l'évaluation. Plus tard, la requête de l'utilisateur est à nouveau redirigée vers la page d'origine.
substitute Diffuse une page différente de celle demandée en réponse à une requête utilisateur frauduleuse. Le chemin d'accès demandé est remplacé par un chemin différent lors de l'envoi de la requête à votre backend. L'utilisateur continue de voir l'URL d'origine.
set_header Définit un en-tête personnalisé et permet à la requête entrante de l'utilisateur de continuer vers 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 cet en-tête pour déclencher une protection ou une analyse personnalisée.

Étapes suivantes