4. Autoriser votre site web
Votre formulaire contiendra votre clé publique. Pas de problème – elle est faite pour être publique –, mais n’importe qui peut la copier depuis le code source de votre page. Deux éléments garantissent qu’elle ne fonctionne que pour votre formulaire : la liste des sites autorisés et le CAPTCHA sur le modèle.
Ajouter votre domaine
Section intitulée « Ajouter votre domaine »-
Ouvrez Sécurité. La carte Sites autorisés liste les domaines qui peuvent envoyer avec votre clé publique.
-
Saisissez votre domaine dans Ajouter un domaine et cliquez sur Ajouter. Formats acceptés :
Entrée Autorise example.comexactement example.com*.example.comn’importe quel sous-domaine, p. ex. www.example.comoushop.example.com– mais pasexample.comlui-mêmelocalhost:3000un hôte et un port précis localhostlocalhostsur n’importe quel port – pratique pour le développement localLa plupart des sites sont accessibles avec et sans
www: ajoutez doncexample.comet*.example.com(ouwww.example.com). -
Cliquez sur Enregistrer en haut de la page.

Frontmail compare l’en-tête Origin de chaque requête du navigateur avec cette liste :
- Aucun domaine – la carte avertit Aucun domaine défini – n’importe quel site peut utiliser votre clé publique. L’envoi fonctionne depuis partout, ce qui est pratique pour un premier essai mais permet à d’autres d’épuiser vos crédits. Ne passez pas en production ainsi.
- Un domaine absent de la liste – la requête est refusée avec
origin_not_allowedet rien n’est envoyé. Si vous voyez cette erreur, vérifiez l’hôte exact dans la barre d’adresse (avec ou sanswww, numéro de port).
Activer le CAPTCHA (recommandé)
Section intitulée « Activer le CAPTCHA (recommandé) »Les sites autorisés arrêtent les autres sites web, mais pas un bot qui envoie directement ses
requêtes à l’API. Un CAPTCHA Cloudflare Turnstile s’en charge – le plus
souvent sous forme de vérification invisible, sans énigme. Les requêtes sans jeton valide échouent
avec captcha_required avant de vous coûter un crédit.
Pour les sites web, Turnstile fonctionne avec votre propre widget Cloudflare gratuit (l’offre gratuite de Cloudflare n’autorise que 10 noms d’hôte par widget, Frontmail ne peut donc pas partager une clé entre les sites de tous ses clients). Cela prend environ deux minutes :
-
Connectez-vous au tableau de bord Cloudflare (un compte gratuit suffit), ouvrez Turnstile et cliquez sur Add widget.
-
Nommez le widget, ajoutez les noms d’hôte de votre site – p. ex.
example.cometwww.example.com–, laissez Widget mode sur Managed et cliquez sur Create. -
Copiez la Site Key et la Secret Key.
-
De retour dans Frontmail, sur la page Sécurité, collez les deux clés dans la carte Protection contre les bots (Turnstile) et cliquez sur Enregistrer les clés. Frontmail vérifie la clé secrète auprès de Cloudflare, la stocke chiffrée et ne l’affiche plus jamais.
-
Cliquez sur Activer le CAPTCHA pour tous les modèles. Le modèle de contact de ce tutoriel a désormais Exiger un CAPTCHA (Turnstile) activé (onglet Paramètres du modèle → Protection) ; le modèle de réponse automatique est ignoré, car c’est Frontmail qui l’envoie, pas votre formulaire.
Gardez la clé de site à portée de main – vous l’ajouterez au formulaire à l’étape suivante.
Les composants pour frameworks (FrontmailForm pour React, Vue et Svelte) affichent le widget pour
vous. Désormais, chaque nouveau modèle a le CAPTCHA activé par défaut.
Options supplémentaires
Section intitulée « Options supplémentaires »La carte Protection contre les abus propose Bloquer les navigateurs headless et Paramètres stricts, et plus bas vous pouvez définir une Rate limit par IP et une Liste de blocage. Les valeurs par défaut conviennent pour ce tutoriel – consultez Protection contre les bots et Paramètres de sécurité quand vous voudrez renforcer la protection.
Pour aller plus loin : Domaines autorisés.