Créer des clés reCAPTCHA pour les sites Web

Cette page explique comment créer des clés reCAPTCHA (également appelées clés) pour vérifier les interactions des utilisateurs sur vos pages Web.

Les clés reCAPTCHA représentent la configuration de reCAPTCHA Enterprise pour un site Web. La configuration comprend des options importantes, telles que l'affichage ou non des défis CAPTCHA.

Avant de commencer

Créer une clé reCAPTCHA

Vous pouvez créer autant de clés reCAPTCHA que vous le souhaitez dans un projet Google Cloud. Il est préférable de créer une clé reCAPTCHA par site Web.

Nous vous recommandons de créer des clés reCAPTCHA distinctes pour les environnements de préproduction et de production. Sinon, vous risquez de polluer l'analyse des risques reCAPTCHA avec les données de votre environnement de test.

Le moyen le plus simple de créer une clé reCAPTCHA est d'utiliser la console Google Cloud. Vous pouvez également utiliser l'API reCAPTCHA Enterprise ou la Google Cloud CLI.

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. Dans le menu Sélectionner un type de plate-forme, sélectionnez Site Web.

    La section Liste de domaines s'affiche.

  6. 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).

      Pour utiliser une clé sur plus de 250 domaines, cliquez sur le bouton Désactiver la validation de domaine. reCAPTCHA Enterprise ignorera ensuite la liste de domaines. Vous devez effectuer vous-même la validation du domaine en examinant le champ tokenProperties.hostname dans les évaluations que vous créez.

  7. En fonction du type de clé reCAPTCHA que vous souhaitez créer pour votre site Web, effectuez l'action appropriée:
  8. Créer des clés reCAPTCHA basées sur des scores

    1. Facultatif: si vous souhaitez désactiver la validation du domaine ou autoriser les pages AMP, développez la section Pare-feu d'application Web (WAF), Validation du domaine, Pages AMP et défi.
      1. Pour protéger la clé reCAPTCHA de votre domaine et de vos sous-domaines, assurez-vous que le bouton Désactiver la validation de domaine est désactivé.

        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.

      2. Si vous souhaitez autoriser le fonctionnement de la clé basée sur des scores avec les pages AMP (Accelerated Mobile Pages), activez l'option Autoriser cette clé à fonctionner avec les pages AMP.
      3. Pour votre environnement hors production, si vous souhaitez spécifier un score que la clé doit renvoyer lorsque des évaluations sont créées pour celui-ci, procédez comme suit:

        1. Cliquez sur le bouton Il s'agit d'une clé de test.
        2. Dans le champ Score, spécifiez un score compris entre 0 et 1,0.
      4. Cliquez sur Créer une clé.

      La nouvelle clé est répertoriée sur la page Clés reCAPTCHA.

    Créer des clés reCAPTCHA de case à cocher

    1. Développez la section Pare-feu d'application Web (WAF), validation du domaine, pages AMP et défi.
    2. Pour protéger la clé reCAPTCHA de votre domaine et de vos sous-domaines, assurez-vous que le bouton Désactiver la validation de domaine est désactivé.

      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.

    3. Activez l'option Utiliser la case à cocher défi.
    4. Sélectionnez l'option Test de sécurité appropriée.

      L'option "Test de sécurité" contrôle la probabilité qu'un utilisateur soit invité à effectuer un test secondaire dans lequel il doit sélectionner des images d'une catégorie identifiée (par exemple, des images de motos ou d'escaliers).

      Pour garantir la meilleure protection contre la fraude, sélectionnez Difficulté plus élevée (meilleure protection contre les bots).

      Si vous sélectionnez Difficulté la plus simple, les utilisateurs seront moins susceptibles d'être invités à relever le défi visuel.

    5. Pour votre environnement hors production, si vous souhaitez spécifier un score que la clé doit renvoyer lorsque des évaluations sont créées pour celui-ci, procédez comme suit:

      1. Cliquez sur le bouton Il s'agit d'une clé de test.
      2. Dans le champ Score, spécifiez un score compris entre 0 et 1,0.
      3. Sélectionnez l'option Type de défi appropriée.
        • L'option Automatique affiche parfois le défi.
        • L'option No CAPTCHA (Aucun CAPTCHA) n'affiche aucun test.
        • Le test Insolvable challenge (Défi insoluble) affiche les images, mais le test n'a pas été réussi.
      4. Cliquez sur Créer une clé.

      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. Selon le type de clé, spécifiez les valeurs suivantes :
    • score pour les clés basées sur des scores.
    • checkbox pour les cases à cocher.
  • 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.

    Pour utiliser une clé sur plus de 250 domaines, spécifiez --allow-all-domains afin de désactiver la validation du domaine. reCAPTCHA Enterprise ignorera ensuite la liste de domaines. Vous devez effectuer vous-même la validation du domaine en examinant le champ tokenProperties.hostname dans les évaluations que vous créez.

    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.

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

Windows (PowerShell)


gcloud recaptcha keys create `
        --web `
        --display-name=DISPLAY_NAME  `
        --integration-type=INTEGRATION_TYPE `
        --domains=DOMAIN_NAME

Windows (cmd.exe)


gcloud recaptcha keys create ^
        --web ^
        --display-name=DISPLAY_NAME  ^
        --integration-type=INTEGRATION_TYPE ^
        --domains=DOMAIN_NAME

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. Selon le type de clé, spécifiez les valeurs suivantes :
    • score pour les clés basées sur des scores.
    • checkbox pour les cases à cocher.
  • 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.

    Pour utiliser une clé sur plus de 250 domaines, spécifiez --allow-all-domains afin de désactiver la validation du domaine. reCAPTCHA Enterprise ignorera ensuite la liste de domaines. Vous devez effectuer vous-même la validation du domaine en examinant le champ tokenProperties.hostname dans les évaluations que vous créez.

    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.

Méthode HTTP et URL :

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

Corps JSON de la requête :


{
  "displayName": "DISPLAY_NAME",
  "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/6Ldqgs0UAAAAAIn4k7YxEB-LwEh5S9-Gv6IIWB8m",
  "displayName": "DISPLAY_NAME",
  "webSettings": {
    "allowAllDomains": false,
    "allowedDomains": [
      DOMAINS
    ],
    "allowAmpTraffic": false,
    "integrationType": "SCORE",
    "challengeSecurityPreference": "CHALLENGE_SECURITY_PREFERENCE_UNSPECIFIED"
  }
}

(Facultatif) Rechercher une ancienne clé secrète reCAPTCHA

Si vous souhaitez intégrer une application tierce utilisant une version non-Enterprise de reCAPTCHA, vous avez besoin de l'ancienne clé secrète.

Pour chaque clé de site que vous créez, reCAPTCHA Enterprise crée une ancienne clé secrète reCAPTCHA que vous pouvez utiliser avec votre application tierce.

Pour trouver l'ancienne clé secrète, procédez comme suit:

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

    Accéder à la page reCAPTCHA Enterprise

  2. Dans la section Clés d'entreprise, recherchez la clé reCAPTCHA que vous avez créée, puis cliquez dessus.

  3. Sur la page Key Details (Détails de la clé), sous l'onglet Integration (Intégration), cliquez sur Use Legacy Key (Utiliser l'ancienne clé). Une boîte de dialogue s'ouvre avec des instructions sur l'utilisation de l'ancienne clé secrète.

Étapes suivantes