Créer des clés reCAPTCHA

Cette page explique comment créer des clés reCAPTCHA, également appelées clés de site, afin de vérifier les interactions des utilisateurs sur vos pages Web et vos applications mobiles.

Les clés de site reCAPTCHA représentent la configuration de reCAPTCHA Enterprise pour un site ou une application. La configuration inclut des options importantes, telles que l'affichage ou non des tests CAPTCHA. Les clés de site reCAPTCHA sont différentes des clés API.

Avant de commencer

  1. Choisissez la meilleure méthode pour configurer reCAPTCHA Enterprise dans votre environnement et terminez la configuration.

  2. Choisissez le type de clé approprié. En savoir plus sur les clés reCAPTCHA

  3. Les clés de site reCAPTCHA pour les applications mobiles (clés mobiles) sont accessibles après un examen de sécurité. Contactez notre équipe commerciale pour intégrer votre site à cette fonctionnalité.

Créer une clé de site

Vous pouvez créer un nombre illimité de clés reCAPTCHA pour un projet. Il est préférable de créer une clé reCAPTCHA par site Web ou application mobile.

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

Le moyen le plus simple de créer une clé de site consiste à utiliser Cloud Console. Vous pouvez également utiliser l'API reCAPTCHA Enterprise ou la CLI Google Cloud.

Console

  1. Dans la console, 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. Créez une clé de site pour un site Web ou une plate-forme mobile. Pour obtenir des instructions, développez la section correspondant à votre plate-forme.
  6. Créer des clés de site pour des sites Web

    Vous pouvez créer des clés de sites Web basées sur des scores et des cases à cocher.

    1. Dans le menu déroulant Sélectionner le 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 :

      Si vous souhaitez créer une clé de site pour la page d'authentification, ignorez cette étape.

      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é de site reCAPTCHA est unique aux domaines et aux 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. Selon le type de clé de site que vous souhaitez créer, effectuez les actions appropriées :
      • Pour créer une clé de site basée sur des scores (recommandé) :
        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é de site reCAPTCHA pour votre domaine et vos sous-domaines, assurez-vous que l'option Désactiver la validation du domaine est désactivée.

            La désactivation de la validation de domaine est un risque pour la sécurité, car le site n'est soumis à aucune restriction. Votre clé reCAPTCHA peut donc être consultée et utilisée par tous.

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

          2. Si vous souhaitez autoriser l'utilisation de la clé de site basée sur les scores avec les pages AMP (Accelerated Mobile Pages), activez l'option Autoriser l'utilisation de cette clé avec les pages AMP.
        2. Cliquez sur Créer une clé.

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

      • Pour créer une clé de site de case à cocher afin d'afficher un test visible pour vos utilisateurs, procédez comme suit :
        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é de site reCAPTCHA pour votre domaine et vos sous-domaines, assurez-vous que l'option Désactiver la validation du domaine est désactivée.

          La désactivation de la validation de domaine est un risque pour la sécurité, car le site n'est soumis à aucune restriction. Votre clé reCAPTCHA peut donc être consultée et utilisée par tous.

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

        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 renforcer la protection contre les fraudes, sélectionnez l'option Renforcer la difficulté (plus efficace contre les robots).

          Si vous sélectionnez Test le plus facile, les utilisateurs seront moins susceptibles d'être soumis au test visuel.

        5. Cliquez sur Créer une clé.

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

    Créer des clés de site pour le pare-feu d'application Web (WAF)

    Vous pouvez créer des clés de site WAF pour les sites Web. Pour créer une clé WAF (Web application firewall), procédez comme suit:

    1. Dans le menu déroulant Sélectionner le 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 :

      Si vous souhaitez créer une clé de site pour la page d'authentification, ignorez cette étape.

      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é de site reCAPTCHA est unique aux domaines et aux 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 le pare-feu d'application Web (WAF).
    5. Dans le menu déroulant Fonctionnalité, sélectionnez le type de clé WAF que vous souhaitez créer.

    6. Pour les clés de site sur la page d'authentification, activez Désactiver la validation du domaine. Cette étape est facultative pour les clés de site de jeton d'action et de jeton de session.

      La désactivation de la validation de domaine est un risque pour la sécurité, car le site n'est soumis à aucune restriction. Votre clé reCAPTCHA peut donc être consultée et utilisée par tous.

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

    7. Facultatif: Pour les clés de site de jeton d'action, activez Utiliser la case à cocher défi.

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

    Créer des clés de site pour des applications mobiles

    Pour les applications mobiles, vous ne pouvez créer que des clés de site basées sur des scores.

    1. Dans le menu déroulant Choisir le type de plate-forme, sélectionnez Application Android ou Application iOS.
    2. Selon la plate-forme que vous avez sélectionnée, saisissez les packages Android ou les ID de bundle iOS.

      Si vous avez sélectionné Application Android, procédez comme suit :

      1. Dans la section Liste de packages Android, cliquez sur Ajouter un package Android.
      2. Dans le champ Package Android, saisissez le nom de votre package Android.

      3. Facultatif : pour ajouter un package supplémentaire, cliquez sur Ajouter un package Android et saisissez le nom d'un autre package Android dans le champ Package Android.

      Si vous avez sélectionné Application iOS, procédez comme suit :

      1. Dans la section Liste des ID de bundle iOS, cliquez sur Ajouter un ID de bundle iOS.
      2. Dans le champ ID du bundle, saisissez le nom de votre ID de bundle iOS.

      3. Facultatif: pour ajouter un ID de bundle supplémentaire, cliquez sur Ajouter un ID de bundle iOS et saisissez le nom de votre ID de bundle iOS dans le champ ID de bundle.

      Pour les applications mobiles, la clé de site reCAPTCHA est unique aux noms de package spécifiés (par exemple, com.google.recaptcha.test).

    3. 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, utilisez la commande gcloud recaptcha Keys create :
  • Pour créer des clés pour des sites Web, utilisez la commande suivante :

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

    Indiquez les valeurs suivantes :

    • DISPLAY_NAME : nom de la clé Généralement un nom de site.
    • WAF_FEATURE (uniquement pour les clés de site WAF): nom de la fonctionnalité WAF. Les valeurs possibles sont les suivantes : challenge-page, action-token et session-token.
    • WAF_SERVICE (uniquement pour les clés de site WAF): nom du fournisseur de services WAF. Spécifiez CA pour Google Cloud Armor.
    • INTEGRATION_TYPE : type d'intégration. Selon le type de clé, spécifiez les valeurs suivantes :
      • SCORE pour les clés de site basées sur des scores.
      • CHECKBOX pour les clés de site avec case à cocher
      • INVISIBLE pour les clés de site de page de défi.
      • SCORE ou CHECKBOX pour les clés de site avec jeton d'action.
      • SCORE pour les clés de site de jeton de session.
    • 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: Pour les clés de site WAF, spécifiez --allow-all-domains pour désactiver la validation de domaine.

      La désactivation de la validation de domaine est un risque pour la sécurité, car le site n'est soumis à aucune restriction. Votre clé reCAPTCHA peut donc être consultée et utilisée par tous.

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

  • Pour créer des clés pour les applications Android, utilisez la commande suivante :
        gcloud recaptcha keys create \
          --android --package-names=PACKAGE_NAMES \
          --display-name=DISPLAY_NAME
        

    Indiquez les valeurs suivantes :

    • DISPLAY_NAME : nom de la clé Généralement un nom d'application.
    • PACKAGE_NAMES: nom des packages Android des applications autorisées à utiliser la clé. Spécifiez plusieurs noms de packages sous la forme d'une liste d'éléments séparés par une virgule.
  • Pour créer une clé pour les applications iOS, utilisez la commande suivante :
        gcloud recaptcha keys create \
          --ios --bundle-ids=BUNDLE_IDs \
          --display-name=DISPLAY_NAME
        

    Indiquez les valeurs suivantes :

    • DISPLAY_NAME : nom de la clé Généralement un nom d'application.
    • BUNDLE_IDs : ID de bundle iOS des applications autorisées à utiliser la clé. Spécifiez plusieurs ID de bundle sous la forme d'une liste d'éléments séparés par une virgule.
  • L'exemple suivant montre un exemple de création d'une clé à l'aide de la commande gcloud recaptcha keys create.

      Created [6Ld3howaAAAAAFYDMsLz2nWFXhsnmBjdrBra5_Bq].
    

API REST et ligne de commande

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 la requête, effectuez les remplacements suivants:

  • PROJECT_ID : ID de votre projet Google Cloud
  • DISPLAY_NAME : nom à afficher de la clé
  • WAF_SERVICE : nom du fournisseur de services WAF. Spécifiez CA pour Google Cloud Armor.
  • WAF_FEATURE: nom de la fonctionnalité WAF.

    En fonction du type des clés, spécifiez challenge-page, action-token ou session-token.

  • DOMAINS (pour les sites Web et WWA) uniquement : 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 de domaine est un risque pour la sécurité, car le site n'est soumis à aucune restriction. Votre clé reCAPTCHA peut donc être consultée et utilisée par tous.

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

  • TYPE_OF_INTEGRATION (pour les sites Web et WAF uniquement) : en fonction du type de clé, spécifiez les valeurs suivantes :
    • SCORE pour les clés de site basées sur des scores.
    • CHECKBOX pour les clés de site avec case à cocher
    • INVISIBLE pour les clés de site de page de défi.
    • SCORE ou CHECKBOX pour les clés de site avec jeton d'action.
    • SCORE pour les clés de site de jeton de session.
  • PACKAGE_NAMES (pour les applications Android uniquement) : noms de package Android des applications autorisées à utiliser la clé. Spécifiez plusieurs noms de packages sous la forme d'une liste d'éléments séparés par une virgule.
  • BUNDLE_IDs (pour les applications iOS uniquement) : ID de bundle iOS des applications autorisées à utiliser la clé. Spécifiez plusieurs ID de bundle sous la forme d'une liste d'éléments séparés par une virgule.

Méthode HTTP et URL :

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

Corps JSON de la requête :


To create keys for websites:
{
  "displayName": "DISPLAY_NAME",
  "webSettings": {
    "allowedDomains": "DOMAINS",
    "integrationType": "TYPE_OF_INTEGRATION"
  }
}

To create keys for WAF:

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

To create keys for Android apps:
{
  "displayName": "DISPLAY_NAME",
  "androidSettings": {
  "allowedPackageNames":"PACKAGE_NAMES"
  }
}

To create keys for iOS apps:

{
  "displayName": "DISPLAY_NAME",
  "iosSettings": {
   "allowedBundleIds":"BUNDLE_IDs"

  }
}

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 application-default 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 application-default 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"
  }
}

Étapes suivantes