Exemples de stratégies de pare-feu reCAPTCHA

Ce document présente des exemples de stratégies de pare-feu reCAPTCHA que vous pouvez créer en fonction de l'implémentation des fonctionnalités de reCAPTCHA WAF.

Exemple 1 : Une règle de pare-feu reCAPTCHA avec un jeton d'action

Vous pouvez ajouter un jeton d'action reCAPTCHA pour protéger une action utilisateur, telle que la connexion. Pour vous assurer que le cookie reCAPTCHA est émis lorsque l'utilisateur lance l'action de connexion, intégrez le script de jeton d'action reCAPTCHA sur la page d'accueil.

Créez une stratégie de pare-feu reCAPTCHA avec les règles suivantes :

  • Chemin d'accès auquel la règle doit s'appliquer. Dans ce cas, login.php.
  • Si l'attribut de nom d'action du jeton d'action ne correspond pas à l'action utilisateur protégée ou si le score est inférieur ou égal à 0,1, bloquez l'accès.
  gcloud recaptcha firewall-policies create \
      --description="example1 policy" \
      --path="/login.php" \
      --condition="recaptcha.token.action != "login" || recaptcha.score <= 0.1" \
      --actions="block"

L'illustration suivante montre un workflow qui utilise la fonctionnalité de jeton d'action reCAPTCHA et la stratégie de pare-feu reCAPTCHA correspondante :

Exemple 2 : Une règle de pare-feu reCAPTCHA avec un jeton de session

Vous pouvez ajouter un jeton de session reCAPTCHA sur les pages auxquelles un utilisateur peut accéder afin que le cookie soit actualisé régulièrement, par exemple une page de paiement. Intégrez le script de jeton de session reCAPTCHA afin que le cookie reCAPTCHA soit émis et actualisé au niveau du backend de l'application avant qu'un utilisateur n'accède à la page de paiement. Sur la page de paiement, intégrez le script du jeton de session reCAPTCHA afin que le cookie reCAPTCHA soit émis et actualisé au niveau du backend de l'application pour éviter qu'il n'expire.

Créez une stratégie de pare-feu reCAPTCHA avec la règle suivante :

  • Chemin d'accès auquel la règle doit s'appliquer. Dans ce cas, checkout.html.
  • Si le score est inférieur ou égal à 0,1, bloquez l'accès.
   gcloud recaptcha firewall-policies create \
       --description="example2 policy" \
       --path="/checkout.html" \
       --condition="recaptcha.score <=0.1" \
       --actions="block"

L'illustration suivante montre un workflow qui utilise la fonctionnalité de jeton de session reCAPTCHA et la stratégie de pare-feu reCAPTCHA correspondante :

Exemple 3 : Une règle de pare-feu reCAPTCHA avec une page de test

Vous pouvez ajouter la fonctionnalité de page de test reCAPTCHA lorsque vous souhaitez que l'utilisateur soit redirigé vers une page interstitielle qui détermine si sa requête est potentiellement frauduleuse ou légitime.

Pour les pages que vous souhaitez protéger, créez des règles de stratégie de pare-feu reCAPTCHA afin de rediriger l'utilisateur vers la page de test :

  • Pour la page protégée, si le jeton n'est pas valide, redirigez l'utilisateur vers la page de validation. Dans ce cas, index.html.
  • Si le score est inférieur ou égal à 0,1, redirigez l'utilisateur vers la page d'erreur.

     gcloud recaptcha firewall-policies create \
         --description="example3-1 policy" \
         --path="/index.html" --condition="!recaptcha.token.valid" --actions="redirect"
    
     gcloud recaptcha firewall-policies create \
         --description="example3-2 policy" \
         --path="/index.html" --condition="recaptcha.score <= 0.1" --actions="substitute=/bot_error"
    

L'illustration suivante montre un workflow qui utilise la fonctionnalité de page de test reCAPTCHA et les règles de pare-feu reCAPTCHA correspondantes :

Exemple 4 : Stratégie de pare-feu reCAPTCHA avec jeton d'action et page de test

Vous pouvez utiliser plusieurs fonctionnalités de reCAPTCHA WAF si vous souhaitez appliquer différents niveaux de protection sur vos pages Web. Par exemple, vous pouvez utiliser la fonctionnalité de jeton d'action ou de jeton de session sur une page pour évaluer le trafic entrant à l'aide des scores reCAPTCHA, et utiliser la fonctionnalité de page de test sur une page où vous souhaitez vous assurer que l'utilisateur n'est pas un robot.

Vous pouvez ajouter un jeton d'action reCAPTCHA pour protéger une action utilisateur, telle que la connexion. Pour vous assurer que le cookie reCAPTCHA est émis lorsque l'utilisateur lance l'action de connexion, intégrez le script de jeton d'action reCAPTCHA sur la page avant l'action de connexion protégée. Par exemple, la page d'accueil. Sur la page de téléchargement, utilisez la règle de stratégie de pare-feu reCAPTCHA pour rediriger l'utilisateur vers la page de test.

Créez une stratégie de pare-feu reCAPTCHA avec les règles suivantes :

  • Chemin d'accès auquel la règle doit s'appliquer. Dans ce cas, login.php.
  • Si l'attribut de nom d'action du jeton d'action ne correspond pas à l'action utilisateur protégée, si le type d'évaluation n'est pas ACTION ou si le score est inférieur ou égal à 0,1, bloquez l'accès.
  • Pour rediriger l'utilisateur vers la page de validation lorsqu'il souhaite télécharger du contenu, ajoutez une règle de stratégie de pare-feu pour le rediriger.
  • Si le score est inférieur ou égal à 0,1 ou si le type d'évaluation n'est pas CHALLENGEPAGE, redirigez l'utilisateur vers la page d'erreur.
    gcloud recaptcha firewall-policies create --description="example4-1 policy"
        --path="/login.php" --condition="recaptcha.token.action != "login" || recaptcha.assessment_type != AssessmentType.ACTION || recaptcha.score <= 0.1" --actions="block"
    gcloud recaptcha firewall-policies create --description="example4-2 policy"
        --path="/content/example.pdf" --condition="recaptcha.assessment_type != AssessmentType.CHALLENGEPAGE" --actions="redirect"
    gcloud recaptcha firewall-policies create --description="example4-3 policy"
        --path="/content/example.pdf" --condition="recaptcha.score <= 0.1 || recaptcha.assessment_type != AssessmentType.CHALLENGEPAGE" --actions="substitute=/bot_error"

L'illustration suivante montre un workflow qui utilise les fonctionnalités de page de test reCAPTCHA et de jeton d'action reCAPTCHA, ainsi que les règles de pare-feu reCAPTCHA correspondantes :

Exemple 5 : Une règle de pare-feu reCAPTCHA avec protection express WAF et page de test

Vous pouvez ajouter la fonctionnalité de protection express reCAPTCHA Enterprise WAF lorsque vous souhaitez évaluer l'interaction de l'utilisateur sans friction, puis rediriger les utilisateurs vers la page de test si le score est faible. Par exemple, pour éviter le scraping de données, vous souhaitez bloquer le trafic vers une page de catalogue.

Créez une stratégie de pare-feu reCAPTCHA avec la règle suivante :

  • Chemin d'accès auquel la règle doit s'appliquer.
  • Si le score est inférieur ou égal à 0,3, redirigez l'utilisateur vers la page du test.

L'exemple suivant crée une règle de pare-feu reCAPTCHA pour rediriger le trafic ciblant /catalog1/itemlist.html lorsque le score est inférieur à 0,3.

    gcloud recaptcha firewall-policies create \
        --description="example5 policy" \
        --path="/catalog1/itemlist.html" \
        --condition="recaptcha.score <= 3" \
        --actions="redirect"

Étapes suivantes