Ce document présente les règles de pare-feu reCAPTCHA.
Les règles de pare-feu reCAPTCHA sont une liste de règles configurables qui correspondent aux attributs de condition pour protéger votre site contre le spam et les utilisations abusives.
Composants des règles de stratégie de pare-feu reCAPTCHA
Une règle de stratégie de pare-feu reCAPTCHA se compose des éléments suivants :
path
: chemin d'URL auquel s'applique la règle de stratégie de pare-feu. Exemple :/login
. Le chemin d'accès peut être un format glob, tel que/*.html
.condition
: condition de la règle. Une condition de règle est une expression CEL (Common Expression Language) qui doit se résoudre en une valeur booléenne. Exemple :recaptcha.score >= 0.5
.action
: action que votre plug-in WAF doit exécuter lorsque la condition de la règle est remplie. Pour en savoir plus, consultez Actions des règles.
Lorsqu'une requête entrante correspond à la fois au chemin et à la condition d'une règle, le plug-in reCAPTCHA pour votre fournisseur de services WAF applique une action. Les actions disponibles incluent l'autorisation, le blocage ou la redirection de la demande vers une page de challenge interstitiel.
Les règles sont évaluées dans l'ordre, et une seule règle est activée. Si aucune règle ne correspond, la règle par défaut est d'autoriser l'accès.
L'exemple de stratégie de pare-feu reCAPTCHA suivant contient une règle qui s'applique à l'action login
. L'accès est bloqué si le score est inférieur à 0,5.
policy {
path: login.php
condition: recaptcha.score < 0.5
action: block
}
Attributs de condition de la règle de pare-feu reCAPTCHA
Le tableau suivant liste 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 n'est pas malformé 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. Il s'agit du paramètre action qui est 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
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 règle que vous pouvez spécifier dans vos règles de stratégie de pare-feu reCAPTCHA :
Action de règlement | Description | Résultat de l'action |
---|---|---|
allow |
Permet d'accéder à la page demandée. | La requête entrante de l'utilisateur est transmise à votre backend sans interruption. |
block |
Refuse l'accès à la page demandée. | Une erreur HTTP 403 (accès refusé) est renvoyée à l'utilisateur. |
redirect |
Redirige la requête utilisateur entrante 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 demande de l'utilisateur est à nouveau redirigée vers la page d'origine. |
substitute |
Affiche une page différente de celle demandée pour une requête 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 de voir l'URL d'origine. |
set_header |
Définit un en-tête personnalisé et permet à la requête utilisateur entrante 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. |