Intégration à Google Cloud Armor pour les sites Web

Ce document explique comment intégrer reCAPTCHA Enterprise pour WAF à Google Cloud Armor sur des sites Web.

Pour terminer l'intégration, vous devez implémenter une ou plusieurs fonctionnalités de reCAPTCHA Enterprise pour WAF et configurer des règles de sécurité Google Cloud Armor.

Avant de commencer

  1. Activez l'API reCAPTCHA Enterprise.

    Activer l'API

  2. Planifiez la manière dont vous souhaitez implémenter les fonctionnalités de reCAPTCHA Enterprise pour WAF afin de protéger votre site Web.

    1. Choisissez une ou plusieurs fonctionnalités WAF qui correspondent le mieux à votre cas d'utilisation.
    2. Identifiez les pages que vous souhaitez protéger et le type de fonctionnalité WAF que vous souhaitez implémenter sur ces pages.

Implémenter les fonctionnalités de reCAPTCHA Enterprise pour WAF

En fonction de vos besoins, vous pouvez utiliser une ou plusieurs fonctionnalités de reCAPTCHA Enterprise pour WAF dans une seule application.

Si vous souhaitez utiliser plusieurs fonctionnalités, vous devez créer une clé reCAPTCHA pour chacune d'elles et les utiliser dans votre application. Par exemple, si vous souhaitez utiliser des jetons d'action reCAPTCHA et une page de test reCAPTCHA, vous devez créer une clé de jeton d'action et une clé de page de défi, puis les utiliser dans votre application.

Implémenter des jetons d'action reCAPTCHA

reCAPTCHA Enterprise doit être exécuté sur vos pages Web pour générer des jetons d'action. Une fois que reCAPTCHA Enterprise a généré un jeton d'action, vous l'associez à un en-tête de requête prédéfini partout où vous devez protéger une action utilisateur, telle que checkout. Par défaut, les jetons d'action sont valides pendant 30 minutes, mais cela peut varier en fonction du trafic. Vous devez associer le jeton d'action à un en-tête de requête prédéfini avant l'expiration du jeton, afin que Google Cloud Armor puisse évaluer les attributs du jeton.

Pour implémenter un jeton d'action reCAPTCHA, procédez comme suit :

  1. Créez une clé de jeton d'action pour votre site Web.

    Console

    1. Dans la console Google Cloud, accédez à la page reCAPTCHA Enterprise.

      Accéder à la page reCAPTCHA Enterprise

    2. Vérifiez que le nom de votre projet s'affiche dans le sélecteur de projet en haut de la page.

      Si le nom de votre nouveau projet n'apparaît pas, cliquez sur le sélecteur de projet, puis sélectionnez votre projet.

    3. Cliquez sur Créer une clé.

    4. Dans le champ Nom à afficher, saisissez un nom à afficher pour la clé.
    5. En fonction de la plate-forme pour laquelle vous souhaitez créer des clés reCAPTCHA pour WAF, effectuez l'action appropriée:
      1. Dans le menu Sélectionner un type de plate-forme, sélectionnez Site Web.

        La section Liste de domaines s'affiche.

      2. Saisissez le nom de domaine de votre site Web :

        1. Dans la section Liste de domaines, cliquez sur Ajouter un domaine.

        2. Dans le champ Domaine, saisissez le nom de votre domaine.
        3. Facultatif : pour ajouter un domaine supplémentaire, cliquez sur Ajouter un domaine et saisissez le nom d'un autre domaine dans le champ Domaine. Vous pouvez ajouter jusqu'à 250 domaines.

          Pour les sites Web, la clé reCAPTCHA est propre aux domaines et sous-domaines que vous spécifiez. Vous pouvez spécifier plusieurs domaines si vous diffusez votre site Web à partir de plusieurs domaines. Si vous spécifiez un domaine (par exemple, examplepetstore.com), vous n'avez pas besoin de spécifier ses sous-domaines (par exemple, subdomain.examplepetstore.com).

      3. Développez la section Pare-feu d'application Web (WAF), validation du domaine, pages AMP et défi.
      4. Activez l'option Pare-feu d'application Web (WAF).
      5. Dans le menu Feature (Fonctionnalité), sélectionnez Action jeton (Jeton d'action).

      6. Facultatif: Activez l'option Utiliser la case à cocher défi.

      7. Cliquez sur Créer une clé.
      8. La nouvelle clé est répertoriée sur la page Clés reCAPTCHA.

    gcloud

    Pour créer des clés reCAPTCHA, utilisez la commande gcloud recaptcha keys create.

    Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

    • DISPLAY_NAME: nom de la clé. Généralement un nom de site.
    • INTEGRATION_TYPE: type d'intégration. Spécifiez score ou checkbox.
    • DOMAIN_NAME: domaines ou sous-domaines de sites Web autorisés à utiliser la clé.

      Spécifiez plusieurs domaines sous la forme d'une liste d'éléments séparés par une virgule. Facultatif: spécifiez --allow-all-domains pour désactiver la validation du domaine.

      Désactiver la validation du domaine présente un risque de sécurité, car le site ne fait l'objet d'aucune restriction. Par conséquent, n'importe qui peut accéder à votre clé reCAPTCHA et l'utiliser.

    • WAF_FEATURE: nom de la fonctionnalité WAF. Spécifiez action-token.
    • WAF_SERVICE: nom du fournisseur de services WAF. Spécifiez CA pour Google Cloud Armor.

    Exécutez la commande gcloud recaptcha keys create:

    Linux, macOS ou Cloud Shell

    
    gcloud recaptcha keys create \
    --web \
    --display-name=DISPLAY_NAME  \
    --integration-type=INTEGRATION_TYPE \
    --domains=DOMAIN_NAME \
    --waf-feature=WAF_FEATURE \
    --waf-service=WAF_SERVICE
    
    

    Windows (PowerShell)

    
    gcloud recaptcha keys create `
    --web `
    --display-name=DISPLAY_NAME  `
    --integration-type=INTEGRATION_TYPE `
    --domains=DOMAIN_NAME `
    --waf-feature=WAF_FEATURE `
    --waf-service=WAF_SERVICE
    
    

    Windows (cmd.exe)

    
    gcloud recaptcha keys create ^
    --web ^
    --display-name=DISPLAY_NAME  ^
    --integration-type=INTEGRATION_TYPE ^
    --domains=DOMAIN_NAME ^
    --waf-feature=WAF_FEATURE ^
    --waf-service=WAF_SERVICE
    
    

    La réponse contient la clé reCAPTCHA que vous venez de créer.

    REST

    Pour obtenir des informations de référence sur les types de clés et les types d'intégration, consultez les sections Clé et Type d'intégration.

    Avant d'utiliser les données de requête, effectuez les remplacements suivants:

    • DISPLAY_NAME: nom de la clé. Généralement un nom de site.
    • INTEGRATION_TYPE: type d'intégration. Spécifiez score ou checkbox.
    • DOMAIN_NAME: domaines ou sous-domaines de sites Web autorisés à utiliser la clé.

      Spécifiez plusieurs domaines sous la forme d'une liste d'éléments séparés par une virgule. Facultatif: spécifiez --allow-all-domains pour désactiver la validation du domaine.

      Désactiver la validation du domaine présente un risque de sécurité, car le site ne fait l'objet d'aucune restriction. Par conséquent, n'importe qui peut accéder à votre clé reCAPTCHA et l'utiliser.

    • WAF_FEATURE: nom de la fonctionnalité WAF. Spécifiez action-token.
    • WAF_SERVICE: nom du fournisseur de services WAF. Spécifiez CA pour Google Cloud Armor.

    Méthode HTTP et URL :

    POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys

    Corps JSON de la requête :

    
    {
      "displayName": "DISPLAY_NAME",
       'wafSettings': "  {
           "wafService": "WAF_SERVICE",
    "wafFeature": "WAF_FEATURE"
      }
      "webSettings": {
        "allowedDomains": "DOMAINS",
        "integrationType": "TYPE_OF_INTEGRATION"
       }
    }
    

    Pour envoyer votre requête, choisissez l'une des options suivantes :

    curl

    Enregistrez le corps de la requête dans un fichier nommé request.json et exécutez la commande suivante:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys"

    PowerShell

    Enregistrez le corps de la requête dans un fichier nommé request.json et exécutez la commande suivante:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -ContentType: "application/json; charset=utf-8" `
    -InFile request.json `
    -Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys" | Select-Object -Expand Content

    Vous devriez recevoir une réponse JSON de ce type :

    
    {
      "name": "projects/project-id/keys/7Ldqgs0UBBBBBIn4k7YxEB-LwEh5S9-Gv6QQIWB8m",
    "displayName": "DISPLAY_NAME,
    "webSettings": {
      "allowAllDomains": true,
      "allowedDomains": [
        "localhost"
      ],
    
     "integrationType": "SCORE",
    
    },
    "wafSettings": {
      "wafService": "CA",
      "wafFeature": "ACTION_TOKEN"
    
    }
    }
    
    

  2. Intégrez le code JavaScript reCAPTCHA sur vos pages Web avec la clé de jeton d'action que vous avez créée. Pour obtenir des instructions, reportez-vous au document correspondant au type d'intégration de votre clé de jeton d'action.

  3. Une fois que vous avez reçu le jeton de reCAPTCHA Enterprise, associez-le à un en-tête de requête prédéfini au format suivant:

     X-Recaptcha-Token: value-of-your-action-token
    

    Vous pouvez utiliser des langages tels que XHR, Ajax ou l'API Fetch pour associer le jeton à un en-tête de requête prédéfini.

    L'exemple de script suivant montre comment protéger l'action execute et associer le jeton à un en-tête de requête prédéfini à l'aide de JavaScript et XHR:

    
      <script>
        src="https://www.google.com/recaptcha/enterprise.js?render=ACTION_TOKEN_KEY"></script>
    
        <script>
        function onSuccess(action_token) {
             const xhr = new XMLHttpRequest();
             xhr.open('GET','YOUR_URL', false);
             // Attach the action-token to the predefined request header
             xhr.setRequestHeader("X-Recaptcha-Token", action_token);
             xhr.send(null);
           }
           function onError(reason) {
             alert('Response promise rejected: ' + reason);
           grecaptcha.enterprise.ready(function () {
             document.getElementById("execute-button").onclick = () => {
               grecaptcha.enterprise.execute('ACTION_TOKEN_KEY', {
               }).then(onSuccess, onError);
             };
           });
          }
        </script>
    
      

Implémenter des jetons de session reCAPTCHA

Le code JavaScript reCAPTCHA définit un jeton de session reCAPTCHA en tant que cookie sur le navigateur de l'utilisateur final après l'évaluation. Le navigateur de l'utilisateur final associe le cookie et l'actualise tant que le code JavaScript reCAPTCHA reste actif.

Pour fournir un jeton de session en tant que cookie, installez une clé de jeton de session sur au moins l'une de vos pages Web, en respectant les exigences suivantes:

  • La page Web doit être la page que l'utilisateur final consulte avant la page qui doit être protégée. Par exemple, si vous souhaitez protéger la page de paiement, installez une clé de jeton de session sur la page d'accueil ou la page du produit.
  • La page Web est protégée par une stratégie de sécurité Google Cloud Armor.

Vous pouvez utiliser ce cookie pour protéger les requêtes ultérieures de l'utilisateur final et les chargements de pages sur un domaine spécifique. Par défaut, les jetons de session sont valides pendant 30 minutes. Toutefois, si l'utilisateur final reste sur la page où vous avez implémenté le jeton de session, reCAPTCHA Enterprise actualise régulièrement le jeton de session pour éviter qu'il n'expire.

Installez des jetons de session sur chaque page qui doit être protégée par reCAPTCHA Enterprise. Nous vous recommandons de protéger chaque page avec reCAPTCHA Enterprise et d'utiliser des règles Google Cloud Armor pour appliquer l'accès à toutes les pages, à l'exception de la première page parcourue par les utilisateurs finaux.

Voici un exemple de jeton de session reCAPTCHA :
   recaptcha-ca-t=value-of-your-session-token;domain=domain;expires=expiration_time

Pour implémenter un jeton de session reCAPTCHA, procédez comme suit :

  1. Créez une clé de jeton de session pour votre site Web.

    Console

    1. Dans la console Google Cloud, accédez à la page reCAPTCHA Enterprise.

      Accéder à la page reCAPTCHA Enterprise

    2. Vérifiez que le nom de votre projet s'affiche dans le sélecteur de projet en haut de la page.

      Si le nom de votre nouveau projet n'apparaît pas, cliquez sur le sélecteur de projet, puis sélectionnez votre projet.

    3. Cliquez sur Créer une clé.

    4. Dans le champ Nom à afficher, saisissez un nom à afficher pour la clé.
    5. En fonction de la plate-forme pour laquelle vous souhaitez créer des clés reCAPTCHA pour WAF, effectuez l'action appropriée:
      1. Dans le menu Sélectionner un type de plate-forme, sélectionnez Site Web.

        La section Liste de domaines s'affiche.

      2. Saisissez le nom de domaine de votre site Web :

        1. Dans la section Liste de domaines, cliquez sur Ajouter un domaine.

        2. Dans le champ Domaine, saisissez le nom de votre domaine.
        3. Facultatif : pour ajouter un domaine supplémentaire, cliquez sur Ajouter un domaine et saisissez le nom d'un autre domaine dans le champ Domaine. Vous pouvez ajouter jusqu'à 250 domaines.

          Pour les sites Web, la clé reCAPTCHA est propre aux domaines et sous-domaines que vous spécifiez. Vous pouvez spécifier plusieurs domaines si vous diffusez votre site Web à partir de plusieurs domaines. Si vous spécifiez un domaine (par exemple, examplepetstore.com), vous n'avez pas besoin de spécifier ses sous-domaines (par exemple, subdomain.examplepetstore.com).

      3. Développez la section Pare-feu d'application Web (WAF), validation du domaine, pages AMP et défi.
      4. Activez l'option Pare-feu d'application Web (WAF).
      5. Dans le menu Feature (Fonctionnalité), sélectionnez Session token (Jeton de session).

      6. Facultatif:activez l'option Désactiver la validation de domaine.

        Désactiver la validation du domaine présente un risque de sécurité, car le site ne fait l'objet d'aucune restriction. Par conséquent, n'importe qui peut accéder à votre clé reCAPTCHA et l'utiliser.

      7. Cliquez sur Créer une clé.
      8. La nouvelle clé est répertoriée sur la page Clés reCAPTCHA.

    gcloud

    Pour créer des clés reCAPTCHA, utilisez la commande gcloud recaptcha keys create.

    Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

    • DISPLAY_NAME: nom de la clé. Généralement un nom de site.
    • INTEGRATION_TYPE: type d'intégration. Spécifiez score.
    • DOMAIN_NAME: domaines ou sous-domaines de sites Web autorisés à utiliser la clé.

      Spécifiez plusieurs domaines sous la forme d'une liste d'éléments séparés par une virgule. Facultatif: spécifiez --allow-all-domains pour désactiver la validation du domaine.

      Désactiver la validation du domaine présente un risque de sécurité, car le site ne fait l'objet d'aucune restriction. Par conséquent, n'importe qui peut accéder à votre clé reCAPTCHA et l'utiliser.

    • WAF_FEATURE: nom de la fonctionnalité WAF. Spécifiez session-token.
    • WAF_SERVICE: nom du fournisseur de services WAF. Spécifiez CA pour Google Cloud Armor.

    Exécutez la commande gcloud recaptcha keys create:

    Linux, macOS ou Cloud Shell

    
    gcloud recaptcha keys create \
    --web \
    --display-name=DISPLAY_NAME  \
    --integration-type=INTEGRATION_TYPE \
    --domains=DOMAIN_NAME \
    --waf-feature=WAF_FEATURE \
    --waf-service=WAF_SERVICE
    
    

    Windows (PowerShell)

    
    gcloud recaptcha keys create `
    --web `
    --display-name=DISPLAY_NAME  `
    --integration-type=INTEGRATION_TYPE `
    --domains=DOMAIN_NAME `
    --waf-feature=WAF_FEATURE `
    --waf-service=WAF_SERVICE
    
    

    Windows (cmd.exe)

    
    gcloud recaptcha keys create ^
    --web ^
    --display-name=DISPLAY_NAME  ^
    --integration-type=INTEGRATION_TYPE ^
    --domains=DOMAIN_NAME ^
    --waf-feature=WAF_FEATURE ^
    --waf-service=WAF_SERVICE
    
    

    La réponse contient la clé reCAPTCHA que vous venez de créer.

    REST

    Pour obtenir des informations de référence sur les types de clés et les types d'intégration, consultez les sections Clé et Type d'intégration.

    Avant d'utiliser les données de requête, effectuez les remplacements suivants:

    • DISPLAY_NAME: nom de la clé. Généralement un nom de site.
    • INTEGRATION_TYPE: type d'intégration. Spécifiez score.
    • DOMAIN_NAME: domaines ou sous-domaines de sites Web autorisés à utiliser la clé.

      Spécifiez plusieurs domaines sous la forme d'une liste d'éléments séparés par une virgule. Facultatif: spécifiez --allow-all-domains pour désactiver la validation du domaine.

      Désactiver la validation du domaine présente un risque de sécurité, car le site ne fait l'objet d'aucune restriction. Par conséquent, n'importe qui peut accéder à votre clé reCAPTCHA et l'utiliser.

    • WAF_FEATURE: nom de la fonctionnalité WAF. Spécifiez session-token.
    • WAF_SERVICE: nom du fournisseur de services WAF. Spécifiez CA pour Google Cloud Armor.

    Méthode HTTP et URL :

    POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys

    Corps JSON de la requête :

    
    {
      "displayName": "DISPLAY_NAME",
       'wafSettings': "  {
           "wafService": "WAF_SERVICE",
    "wafFeature": "WAF_FEATURE"
      }
      "webSettings": {
        "allowedDomains": "DOMAINS",
        "integrationType": "TYPE_OF_INTEGRATION"
       }
    }
    

    Pour envoyer votre requête, choisissez l'une des options suivantes :

    curl

    Enregistrez le corps de la requête dans un fichier nommé request.json et exécutez la commande suivante:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys"

    PowerShell

    Enregistrez le corps de la requête dans un fichier nommé request.json et exécutez la commande suivante:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -ContentType: "application/json; charset=utf-8" `
    -InFile request.json `
    -Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys" | Select-Object -Expand Content

    Vous devriez recevoir une réponse JSON de ce type :

    
    {
      "name": "projects/project-id/keys/7Ldqgs0UBBBBBIn4k7YxEB-LwEh5S9-Gv6QQIWB8m",
    "displayName": "DISPLAY_NAME,
    "webSettings": {
      "allowAllDomains": true,
      "allowedDomains": [
        "localhost"
      ],
    
     "integrationType": "SCORE",
    
    },
    "wafSettings": {
      "wafService": "CA",
      "wafFeature": "SESSION_TOKEN"
    
    }
    }
    
    

  2. Ajoutez la clé de jeton de session et waf=session au code JavaScript reCAPTCHA.

    L'exemple de script suivant montre comment implémenter un jeton de session sur une page Web :

    
    <!DOCTYPE html>
    <html lang="en">
    <head>
     <meta charset="UTF-8">
     <title>reCAPTCHA WAF Session Token</title>
     <script src="https://www.google.com/recaptcha/enterprise.js?render=SESSION_TOKEN_KEY&waf=session" async defer></script>
     <body></body>
    </head>
    </html>
    
    

Implémenter une page reCAPTCHA test

Lorsque vous implémentez une page de test reCAPTCHA, reCAPTCHA Enterprise redirige vers une page interstitielle où il détermine s'il est nécessaire de présenter un test CAPTCHA à un utilisateur. Par conséquent, les tests CAPTCHA peuvent ne pas être visibles par tous les utilisateurs.

Pour implémenter une page de test reCAPTCHA, créez une clé de page de test pour votre site Web.

Console

  1. Dans la console Google Cloud, accédez à la page reCAPTCHA Enterprise.

    Accéder à la page reCAPTCHA Enterprise

  2. Vérifiez que le nom de votre projet s'affiche dans le sélecteur de projet en haut de la page.

    Si le nom de votre nouveau projet n'apparaît pas, cliquez sur le sélecteur de projet, puis sélectionnez votre projet.

  3. Cliquez sur Créer une clé.

  4. Dans le champ Nom à afficher, saisissez un nom à afficher pour la clé.
  5. En fonction de la plate-forme pour laquelle vous souhaitez créer des clés reCAPTCHA pour WAF, effectuez l'action appropriée:
    1. Dans le menu Sélectionner un type de plate-forme, sélectionnez Site Web.

    2. Développez la section Pare-feu d'application Web (WAF), validation du domaine, pages AMP et défi.
    3. Activez l'option Pare-feu d'application Web (WAF).
    4. Dans le menu Fonctionnalité, sélectionnez Page du défi.

    5. Activez l'option Désactiver la validation de domaine.

      Lorsque vous désactivez la validation du domaine pour les clés de page d'authentification, Google Cloud Armor valide le domaine.

    6. Cliquez sur Créer une clé.
    7. La nouvelle clé est répertoriée sur la page Clés reCAPTCHA.

gcloud

Pour créer des clés reCAPTCHA, utilisez la commande gcloud recaptcha keys create.

Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

  • DISPLAY_NAME: nom de la clé. Généralement un nom de site.
  • INTEGRATION_TYPE: type d'intégration. Spécifiez invisible.
  • DOMAIN_NAME: domaines ou sous-domaines de sites Web autorisés à utiliser la clé. Spécifiez --allow-all-domains.
  • WAF_FEATURE: nom de la fonctionnalité WAF. Spécifiez challenge-page.
  • WAF_SERVICE: nom du fournisseur de services WAF. Spécifiez CA pour Google Cloud Armor.

Exécutez la commande gcloud recaptcha keys create:

Linux, macOS ou Cloud Shell


gcloud recaptcha keys create \
--web \
--display-name=DISPLAY_NAME  \
--integration-type=INTEGRATION_TYPE \
--domains=DOMAIN_NAME \
--waf-feature=WAF_FEATURE \
--waf-service=WAF_SERVICE

Windows (PowerShell)


gcloud recaptcha keys create `
--web `
--display-name=DISPLAY_NAME  `
--integration-type=INTEGRATION_TYPE `
--domains=DOMAIN_NAME `
--waf-feature=WAF_FEATURE `
--waf-service=WAF_SERVICE

Windows (cmd.exe)


gcloud recaptcha keys create ^
--web ^
--display-name=DISPLAY_NAME  ^
--integration-type=INTEGRATION_TYPE ^
--domains=DOMAIN_NAME ^
--waf-feature=WAF_FEATURE ^
--waf-service=WAF_SERVICE

La réponse contient la clé reCAPTCHA que vous venez de créer.

REST

Pour obtenir des informations de référence sur les types de clés et les types d'intégration, consultez les sections Clé et Type d'intégration.

Avant d'utiliser les données de requête, effectuez les remplacements suivants:

  • DISPLAY_NAME: nom de la clé. Généralement un nom de site.
  • INTEGRATION_TYPE: type d'intégration. Spécifiez invisible.
  • DOMAIN_NAME: domaines ou sous-domaines de sites Web autorisés à utiliser la clé. Spécifiez --allow-all-domains.
  • WAF_FEATURE: nom de la fonctionnalité WAF. Spécifiez challenge-page.
  • WAF_SERVICE: nom du fournisseur de services WAF. Spécifiez CA pour Google Cloud Armor.

Méthode HTTP et URL :

POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys

Corps JSON de la requête :


{
  "displayName": "DISPLAY_NAME",
   'wafSettings': "  {
       "wafService": "WAF_SERVICE",
"wafFeature": "WAF_FEATURE"
  }
  "webSettings": {
    "allowedDomains": "DOMAINS",
    "integrationType": "TYPE_OF_INTEGRATION"
   }
}

Pour envoyer votre requête, choisissez l'une des options suivantes :

curl

Enregistrez le corps de la requête dans un fichier nommé request.json et exécutez la commande suivante:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys"

PowerShell

Enregistrez le corps de la requête dans un fichier nommé request.json et exécutez la commande suivante:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys" | Select-Object -Expand Content

Vous devriez recevoir une réponse JSON de ce type :


{
  "name": "projects/project-id/keys/7Ldqgs0UBBBBBIn4k7YxEB-LwEh5S9-Gv6QQIWB8m",
"displayName": "DISPLAY_NAME,
"webSettings": {
  "allowAllDomains": true,
  "allowedDomains": [
    "localhost"
  ],

  "integrationType": "INVISIBLE",

},
"wafSettings": {
  "wafService": "CA",
  "wafFeature": "CHALLENGE_PAGE"

}
}

Configurer les stratégies de sécurité Google Cloud Armor

Après avoir mis en œuvre les fonctionnalités de reCAPTCHA Enterprise pour WAF, vous devez configurer des stratégies de sécurité Google Cloud Armor pour la gestion des bots.

Si vous avez implémenté une page de test reCAPTCHA, vous devez procéder comme suit:

  1. Associez la clé de page d'authentification à votre stratégie de sécurité.
  2. Configurez une règle de stratégie de sécurité pour rediriger une requête d'évaluation de reCAPTCHA Enterprise.

Si vous avez implémenté des jetons d'action ou de session reCAPTCHA, vous devez configurer une règle de stratégie de sécurité qui évalue les jetons reCAPTCHA Enterprise.

Avant de configurer les stratégies de sécurité Google Cloud Armor, consultez les attributs de jeton reCAPTCHA pour Google Cloud Armor.

Pour savoir comment configurer les stratégies de sécurité Google Cloud Armor et utiliser les clés reCAPTCHA pour WAF avec vos stratégies de sécurité, consultez Configurer des règles pour la gestion des bots.

Étapes suivantes