Intégrer Google Cloud Armor pour les sites Web

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

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

Avant de commencer

  1. Activez l'API reCAPTCHA Enterprise.

    Enable the API

  2. Planifiez comment vous souhaitez implémenter les fonctionnalités de reCAPTCHA pour WAF afin de protéger votre site Web.

    1. Choisissez une ou plusieurs fonctionnalités de 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 mettre en œuvre sur ces pages.

Implémenter les fonctionnalités de reCAPTCHA pour WAF

Selon vos besoins, vous pouvez utiliser une ou plusieurs fonctionnalités de reCAPTCHA pour les fonctionnalités 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 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 test, et les utiliser dans votre application.

Implémenter des jetons d'action reCAPTCHA

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

    Cloud Console

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

      Accéder à reCAPTCHA

    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. Selon 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 de domaine, pages AMP et défi.
      4. Activez le bouton Pare-feu d'application Web (WAF).
      5. Dans le menu Fonctionnalité, sélectionnez 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 des 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.

      La désactivation de la validation du domaine représente un risque de sécurité, car il n'y a des restrictions sur le site, afin que votre clé reCAPTCHA soit accessible et utilisée par quiconque.

    • WAF_FEATURE : nom de la fonctionnalité de pare-feu d'application Web. 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 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 des 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.

      La désactivation de la validation du domaine représente un risque de sécurité, car il n'y a des restrictions sur le site, afin que votre clé reCAPTCHA soit accessible et utilisée par quiconque.

    • WAF_FEATURE : nom de la fonctionnalité de pare-feu d'application Web. Spécifiez action-token.
    • WAF_SERVICE : nom du fournisseur de service de pare-feu d'application. 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, puis 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, puis 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, consultez le document correspondant aux Type d'intégration de votre clé de jeton d'action.

  3. Après avoir reçu le jeton de reCAPTCHA, 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 + 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 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 qui répond aux exigences suivantes :

  • La page Web doit être celle que l'utilisateur final consulte avant celle que 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 sur 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 demandes ultérieures de l'utilisateur final et sur un domaine spécifique. Les jetons de session sont valides pendant 30 minutes par défaut. Toutefois, si l'utilisateur final reste sur la page où vous avez implémenté le jeton de session, reCAPTCHA actualise régulièrement le jeton de session pour empêcher son expiration.

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

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.

    Cloud Console

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

      Accéder à reCAPTCHA

    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. Selon 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 de domaine, pages AMP et défi.
      4. Activez l'option Pare-feu d'application Web (WAF).
      5. Dans le menu Fonctionnalité, sélectionnez Jeton de session.

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

        La désactivation de la validation de domaine est un risque pour la sécurité, car il n'existe aucune restriction sur le site. Par conséquent, votre clé reCAPTCHA est accessible et utilisée par n'importe quel utilisateur.

      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.

      La désactivation de la validation du domaine représente un risque de sécurité, car il n'y a des restrictions sur le site, afin que votre clé reCAPTCHA soit accessible et utilisée par quiconque.

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

    Exécutez la 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 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.

      La désactivation de la validation du domaine représente un risque de sécurité, car il n'y a des restrictions sur le site, afin que votre clé reCAPTCHA soit accessible et utilisée par quiconque.

    • WAF_FEATURE : nom de la fonctionnalité du pare-feu d'application Web. 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, puis 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, puis 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 de test reCAPTCHA

Lorsque vous implémentez une page de test reCAPTCHA, redirige vers une page interstitielle où elle détermine si la diffusion un test CAPTCHA à un utilisateur. Par conséquent, les tests CAPTCHA peuvent ne pas être visible par tous les utilisateurs.

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

Cloud Console

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

    Accéder à reCAPTCHA

  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. Selon 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 le type de plate-forme, sélectionnez Site Web.
    2. Développez les sections Pare-feu d'application Web (WAF), validation du domaine, pages AMP et question d'authentification. .
    3. Activez le bouton Pare-feu d'application Web (WAF).
    4. Dans le menu Fonctionnalité, sélectionnez Page de défi.

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

      Lorsque vous désactivez la validation du domaine pour les clés de page de test, Google Cloud Armor vérifie 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 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 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.

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, puis 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, puis 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 implémenté les fonctionnalités de reCAPTCHA 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, procédez comme suit :

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

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

Avant de configurer les règles de sécurité Google Cloud Armor, vous devez comprendre les attributs des jetons reCAPTCHA pour Google Cloud Armor.

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

Étape suivante