wiki.cobea
Comment protéger vos formulaires contre les spams
Guide pratique — Google reCAPTCHA & Cloudflare Turnstile
(Informations correctes au 12 décembre 2025)
Les formulaires en ligne sont des portes d’entrée essentielles sur votre site web : ils permettent à vos visiteurs de vous contacter, de s’inscrire à vos services ou de passer commande. Malheureusement, ils sont aussi la cible privilégiée des robots automatiques (bots) qui inondent votre boîte mail de messages indésirables, polluent vos bases de données et peuvent même compromettre la sécurité de votre site.
La solution la plus efficace est l’intégration d’un système CAPTCHA. Ce guide vous explique quels types de formulaires doivent en bénéficier, et comment obtenir une clé avec les deux solutions leaders : Google reCAPTCHA et Cloudflare Turnstile.
⚠️ Recommandation : Pour la grande majorité des sites, nous recommandons en priorité Cloudflare Turnstile. C’est la solution la plus simple, entièrement gratuite, sans moyen de paiement requis. Google reCAPTCHA a considérablement compliqué sa procédure depuis 2024 (voir détails section 3). Les deux options sont détaillées ci-dessous.
1. Pourquoi protéger vos formulaires ?
Chaque formulaire non protégé est une invitation pour les robots. Les conséquences concrètes peuvent inclure :
- Des centaines de messages spam dans votre boîte mail chaque jour.
- Des inscriptions fictives qui faussent vos statistiques et surchargent votre base de données.
- Des tentatives d’attaque par force brute sur vos formulaires de connexion.
- Une dégradation de votre réputation d’expéditeur d’e-mail.
- Des vulnérabilités potentielles d’injection de code dans vos systèmes.
2. Les types de formulaires concernés
Voici les formulaires les plus fréquemment présents sur un site web et qui nécessitent une protection :
Formulaire de contact
C’est le plus courant. Sans protection, il devient rapidement une source de spam massif dans votre messagerie.
Formulaire d’inscription / création de compte
Les bots peuvent créer des milliers de faux comptes en quelques minutes, saturant votre système.
Formulaire de connexion (Login)
Les attaques par force brute consistent à essayer des milliers de combinaisons de mots de passe. Un CAPTCHA bloque ces tentatives automatisées.
Formulaire de commentaires
Les sections de commentaires sont des cibles privilégiées pour les spams publicitaires et les liens malveillants.
Formulaire de newsletter / abonnement
L’inscription d’adresses fictives dégrade votre taux de délivrabilité et peut entraîner le blocage de votre domaine par les fournisseurs de messagerie.
Formulaire de commande / paiement
Les bots peuvent tenter de tester des numéros de cartes bancaires volées ou de créer des commandes frauduleuses.
Formulaire de réinitialisation de mot de passe
Sans protection, ce formulaire peut être utilisé pour harceler vos utilisateurs en envoyant des centaines d’e-mails de réinitialisation à leur insu.
3. Option A — Google reCAPTCHA
ℹ️ Ce qu’il faut savoir avant de commencer : Depuis 2024, Google a migré reCAPTCHA vers sa plateforme Google Cloud. La procédure est donc plus complexe qu’auparavant et nécessite d’enregistrer un moyen de paiement (carte bancaire), même si vous restez dans le niveau gratuit (jusqu’à 10 000 vérifications/mois). Au-delà, la facturation s’applique automatiquement. Si vous préférez éviter cette contrainte, passez directement à la section 4 (Cloudflare Turnstile).
Google reCAPTCHA est la solution la plus connue au monde. Elle est très largement supportée par tous les CMS (WordPress, Joomla, Drupal, etc.) et la plupart des plugins. Elle propose plusieurs versions, dont la v3 (invisible, basée sur un score de comportement) et la v2 (« Je ne suis pas un robot »).
Prérequis
- Un compte Google (Gmail).
- Un compte Google Cloud (gratuit à créer, sur cloud.google.com).
- Une carte bancaire enregistrée sur ce compte Google Cloud (obligatoire même pour le niveau gratuit).
- Votre nom de domaine (ex : monsite.be).
Étapes pour obtenir votre clé Google reCAPTCHA
- Créer un projet Google Cloud
Rendez-vous sur : https://console.cloud.google.com. Connectez-vous avec votre compte Google, puis créez un nouveau projet (bouton « Sélectionner un projet » > « Nouveau projet »). - Activer la facturation (Billing)
Dans la console Google Cloud, allez dans « Facturation » et associez une carte bancaire à votre projet. Vous ne serez débité qu’en cas de dépassement des 10 000 vérifications gratuites par mois. - Activer l’API reCAPTCHA Enterprise
Dans la console, recherchez « reCAPTCHA Enterprise » et activez l’API pour votre projet. - Créer une clé de site
Dans « reCAPTCHA Enterprise » > « Keys », cliquez sur « Create Key ». Remplissez :
• Nom : Un nom descriptif pour votre site.
• Type de plateforme : « Website ».
• Domaines : Votre nom de domaine sans « https:// » (ex : monsite.be).
• Type de score : Choisissez « Score-based (v3) » pour une protection invisible. - Récupérer les clés
Deux clés sont générées :
• Site Key : à intégrer dans le code HTML de votre site (visible publiquement).
• Secret Key : à conserver de manière confidentielle sur votre serveur. Ne la partagez jamais. - Encodez les clés à dans les réglages de votre extension (Gravity forms, Brevo, Mailcimp etc.)
4. Option B — Cloudflare Turnstile (recommandé)
Cloudflare Turnstile est une alternative moderne à Google reCAPTCHA, développée par Cloudflare, l’un des leaders mondiaux de la sécurité web. Elle est entièrement invisible pour l’utilisateur et fonctionne sans cookies de suivi.
Prérequis
- Un compte Cloudflare gratuit (sur cloudflare.com).
- Votre nom de domaine (ex : monsite.be).
Étapes pour obtenir votre clé Cloudflare Turnstile
- Créer ou se connecter à votre compte Cloudflare
Rendez-vous sur : https://dash.cloudflare.com. La création d’un compte est gratuite et prend moins de 2 minutes. Aucun moyen de paiement n’est demandé. - Accéder à la section Turnstile
Dans le tableau de bord Cloudflare :
• Cliquez sur « Turnstile » dans le menu de gauche.
• Cliquez sur « Add Site » (Ajouter un site). - Configurer votre site
Remplissez le formulaire :
• Site name : Un nom descriptif pour votre site.
• Domain : Votre nom de domaine sans « https:// » (ex : monsite.be).
• Widget Mode : Choisissez « Managed » (recommandé) pour laisser Cloudflare décider automatiquement, ou « Invisible » pour une expérience totalement transparente. - Créer le widget
Cliquez sur « Create ». Vos clés sont générées immédiatement. - Récupérer vos clés
Deux clés sont générées :
• Site Key : à placer dans le code HTML de votre site.
• Secret Key : à utiliser côté serveur. À garder strictement confidentielle. - Encodez les clés à dans les reglages de votre extension (Gravity forms, Brevo, Mailcimp etc.)
5. Comparatif rapide
Voici un résumé des différences entre les deux solutions :
| Critère | Google reCAPTCHA | Cloudflare Turnstile |
| Gratuit | Oui, jusqu’à 10 000/mois | Oui, sans limite de volume |
| Carte bancaire requise | ✅ Oui, même pour le niveau gratuit | ❌ Non |
| Compte entreprise requis | ✅ Compte Google Cloud | ❌ Non, simple compte gratuit |
| Complexité de la procédure | ⚠️ Moyenne — Google Cloud requis | ✅ Simple et rapide |
| Visibilité pour l’utilisateur | Variable (invisible en v3) | Invisible ou discret |
| Respect de la vie privée | Cookies de suivi Google | ✅ Pas de cookies de suivi |
| Support CMS (WordPress, etc.) | ✅ Très large | Bonne, en progression |
6. En résumé
Protéger vos formulaires est une étape simple mais indispensable. Une fois vos clés obtenues, transmettez-les à votre développeur qui s’occupera de l’intégration technique.
Notre recommandation : Pour la plupart des sites, optez pour Cloudflare Turnstile — la procédure est plus simple, sans moyen de paiement, et la protection est tout aussi efficace. Si votre CMS impose spécifiquement Google reCAPTCHA, suivez alors la démarche détaillée en section 3.
Les bénéfices immédiats sont :
- Une réduction drastique des spams reçus.
- Une meilleure sécurité de vos comptes utilisateurs.
- Une base de données plus propre et plus fiable.
- Une meilleure délivrabilité de vos e-mails.
- Une expérience utilisateur préservée grâce aux solutions invisibles.