Paramètres de sécurité
La page Sécurité regroupe les clés API de votre organisation et tout ce qui protège votre clé publique contre les abus.

Qui peut utiliser cette page
Section intitulée « Qui peut utiliser cette page »| Rôle | Accès |
|---|---|
| Propriétaire, Administrateur | Voient et modifient tout. |
| Développeur | Lecture seule : voit les clés et les réglages, mais sans boutons et avec tous les champs désactivés. |
| Lecteur, Facturation | Aucun accès – la page indique que votre rôle ne le permet pas. |
Enregistrer les modifications
Section intitulée « Enregistrer les modifications »Les actions sur les clés – Renouveler la clé, Nouvelle clé privée et Révoquer – prennent effet immédiatement après confirmation.
Les clés Turnstile de Protection contre les bots (Turnstile) s’enregistrent avec le bouton Enregistrer les clés propre à la carte.
Tous les autres réglages de la page (sites autorisés, interrupteurs de protection contre les abus,
applications mobiles, liste de blocage, rate limit, domaines de liens autorisés, e-mails par
destinataire et comportement en cas de crédits épuisés) restent à l’état de brouillon jusqu’à ce
que vous cliquiez sur Enregistrer en haut à droite. Le bouton n’est actif que si quelque chose
a changé. Chaque enregistrement est consigné dans le journal d’audit
sous security.updated.
Clé publique
Section intitulée « Clé publique »La carte Clé publique affiche votre clé pk_… avec un bouton de copie. C’est la clé que vous
mettez sur votre site web – elle peut être publiée sans risque, car les requêtes qui l’utilisent
sont contrôlées au regard des sites autorisés, du CAPTCHA et des rate limits. Voir
Clés publiques et privées.
Renouveler la clé publique
Section intitulée « Renouveler la clé publique »Renouvelez-la si vous constatez des abus malgré vos autres protections.
- Cliquez sur Renouveler la clé.
- Confirmez avec Renouveler la clé dans la boîte de dialogue Renouveler la clé publique ?
- Copiez la nouvelle clé et déployez-la sur votre site web.
L’ancienne clé continue de fonctionner pendant 24 heures. D’ici là, la carte affiche une note
indiquant quelle clé précédente fonctionne encore et jusqu’à quand. Ensuite, les requêtes avec
l’ancienne clé échouent avec invalid_public_key.
Clés privées
Section intitulée « Clés privées »Les Clés privées sont réservées aux serveurs – le SDK Node, cURL, votre backend. Le tableau affiche pour chaque clé son Nom avec sa date de création, les quatre derniers caractères sous Clé et sa Dernière utilisation (Jamais si elle n’a pas encore été utilisée).
Une organisation peut avoir au maximum 20 clés privées actives.
Créer une clé privée
Section intitulée « Créer une clé privée »- Cliquez sur Nouvelle clé privée.
- Saisissez un Nom qui indique où vous l’utiliserez, p. ex. « Backend de production », et cliquez sur Créer.
- La boîte de dialogue Votre nouvelle clé privée affiche la clé complète. Copiez-la maintenant et enregistrez-la dans les secrets de votre serveur ou dans votre gestionnaire de mots de passe.
- Cliquez sur Je l’ai mise en lieu sûr.
Révoquer une clé privée
Section intitulée « Révoquer une clé privée »- Cliquez sur Révoquer dans la ligne de la clé.
- Confirmez avec Révoquer dans la boîte de dialogue.
La révocation est immédiate – les requêtes avec cette clé sont aussitôt refusées avec
invalid_private_key. Pour remplacer une clé sans
interruption, créez d’abord la nouvelle clé, déployez-la, vérifiez que la Dernière utilisation
de l’ancienne clé ne change plus, et seulement ensuite révoquez-la.
Sites autorisés
Section intitulée « Sites autorisés »Seuls les domaines listés sous Sites autorisés peuvent envoyer avec votre clé publique.
Frontmail les compare à l’en-tête Origin du navigateur. Les détails se trouvent dans
Domaines autorisés.
Formats acceptés :
| Entrée | Correspond à |
|---|---|
example.com |
Exactement ce domaine. |
*.example.com |
N’importe quel sous-domaine de example.com. |
localhost:3000 |
Un hôte avec un port précis – pratique pour le développement local. |
Si vous collez une URL complète comme https://example.com/contact, le tableau de bord ne conserve
que l’hôte.
Autoriser un site web
Section intitulée « Autoriser un site web »- Saisissez le domaine dans Ajouter un domaine.
- Cliquez sur Ajouter (ou appuyez sur Entrée). Le domaine apparaît sous forme d’étiquette au-dessus du champ.
- Cliquez sur Enregistrer.
Pour retirer un domaine, cliquez sur la × de son étiquette, puis sur Enregistrer.
Protection contre les bots (Turnstile)
Section intitulée « Protection contre les bots (Turnstile) »Cette carte contient les propres clés Cloudflare Turnstile de votre
organisation. Les modèles où Exiger un CAPTCHA (Turnstile) est activé n’acceptent les requêtes
de vos sites web qu’avec un jeton Turnstile, et Frontmail vérifie ces jetons avec la clé secrète
que vous enregistrez ici. Sans clés, les requêtes web vers ces modèles échouent avec
captcha_not_configured.
Pourquoi vos propres clés : l’offre gratuite de Cloudflare n’autorise que 10 noms d’hôte par widget, une seule clé Frontmail ne peut donc pas couvrir les sites de tous les clients. Votre widget est gratuit et ne fonctionne que sur vos noms d’hôte.
Ajouter vos clés Turnstile
Section intitulée « Ajouter vos clés Turnstile »- Dans le tableau de bord Cloudflare, ouvrez Turnstile →
Add widget, nommez-le, ajoutez les noms d’hôte de vos sites (p. ex.
example.com,www.example.com;localhostuniquement pour les tests), laissez le mode Managed et cliquez sur Create. - Copiez la Site Key et la Secret Key.
- De retour 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.
- Cliquez sur Activer le CAPTCHA pour tous les modèles pour l’activer en un clic sur vos modèles existants. Les modèles utilisés comme réponse automatique sont ignorés.
L’enregistrement vérifie d’abord la clé secrète auprès de Cloudflare – une clé secrète erronée est
refusée avec un message clair et rien n’est stocké. Les clés sont enregistrées immédiatement (le
bouton Enregistrer de la page n’est pas nécessaire) et consignées dans le
journal d’audit sous security.turnstile.updated ; l’activation du
CAPTCHA pour tous les modèles est consignée sous template.captcha_enabled.
- La clé secrète est en écriture seule : elle est stockée chiffrée et n’est plus jamais
affichée – la carte n’affiche que la clé de site et la date depuis laquelle les clés sont
configurées. Pour les changer, cliquez sur Remplacer les clés et collez les nouvelles ; pour
ne plus les utiliser, cliquez sur Supprimer les clés et confirmez Supprimer les clés
Turnstile ? (
security.turnstile.removed). Les modèles conservent leur réglage CAPTCHA : après la suppression des clés, les requêtes web vers ces modèles échouent donc jusqu’à ce que vous ajoutiez de nouveau des clés. - Une fois les clés enregistrées, les nouveaux modèles ont le CAPTCHA activé par défaut. Les modèles créés auparavant conservent leur réglage.
- L’onglet Extraits de code de l’éditeur de modèle inclut alors le widget avec votre clé de site.
- Pour le développement local, vous pouvez utiliser les clés de test de Cloudflare – jamais en production.
Les applications mobiles créées avec @frontmail/react-native
n’ont pas besoin de ces clés – elles utilisent la clé mobile partagée de Frontmail.
Protection contre les abus
Section intitulée « Protection contre les abus »L’exigence du CAPTCHA Turnstile se règle modèle par modèle dans l’éditeur de modèle, pas ici – voir Turnstile. La carte Protection contre les abus comporte quatre interrupteurs :
| Interrupteur | Effet |
|---|---|
| Bloquer les navigateurs headless | Refuse les requêtes par clé publique provenant de navigateurs automatisés comme Puppeteer. Désactivé par défaut. Voir Protection contre les bots. |
| Paramètres stricts | Refuse les requêtes contenant des paramètres absents du schéma du modèle, au lieu de les ignorer. Désactivé par défaut. |
| Autoriser l’API par clé privée | Permet à vos serveurs d’envoyer avec une clé privée, qui contourne le contrôle du site. Activé par défaut. Désactivez-le si vous n’envoyez que depuis des navigateurs – les requêtes avec une clé privée sont alors refusées avec 403 forbidden. |
| Autoriser les clés privées dans les navigateurs | Accepte les requêtes par clé privée provenant d’une page web (avec un en-tête Origin). Désactivé par défaut – ces requêtes sont refusées avec 403 private_key_in_browser, car chaque visiteur de la page pourrait copier la clé. Ne l’activez que pour des outils internes ; un avertissement apparaît alors. Voir Clés. |
N’oubliez pas de cliquer sur Enregistrer après avoir modifié un interrupteur.
Applications mobiles
Section intitulée « Applications mobiles »Les applications natives (React Native, Flutter, Swift, Kotlin) n’envoient pas d’en-tête Origin,
leurs requêtes – comme toute requête par clé publique sans Origin ni Referer – sont donc
refusées avec 403 origin_not_allowed, même si aucun
site autorisé n’est défini. La carte Applications mobiles comporte un seul interrupteur,
Autoriser les applications mobiles (désactivé par défaut). Lorsqu’il est activé, les requêtes
par clé publique sans en-tête Origin ni Referer sont acceptées et leur CAPTCHA est vérifié avec
la clé mobile partagée de Frontmail. Les requêtes des sites web restent contrôlées au regard de la
liste. Les détails se trouvent dans
Domaines autorisés → Applications mobiles.
Autoriser les applications mobiles
Section intitulée « Autoriser les applications mobiles »- Activez Autoriser les applications mobiles.
- Lisez l’avertissement qui apparaît sous l’interrupteur.
- Cliquez sur Enregistrer.
Liste de blocage
Section intitulée « Liste de blocage »La Liste de blocage arrête les spammeurs connus avant que leurs requêtes ne consomment des crédits.
- Valeurs bloquées – une valeur par ligne : adresses e-mail, domaines (
spam.exampleou@spam.example) ou valeurs exactes de paramètres. - Paramètre à vérifier – le paramètre comparé à la liste en plus des destinataires, p. ex.
emailpour l’adresse du visiteur dans un formulaire de contact.
Les requêtes correspondantes échouent avec recipient_blocked.
Plus d’informations dans
Protection contre les bots → Liste de blocage.
Rate limit par IP
Section intitulée « Rate limit par IP »Rate limit par IP limite la fréquence à laquelle un même visiteur peut envoyer vos formulaires
avec la clé publique. Définissez Requêtes (1 à 1 000) et Par (secondes) (1 à 86 400) ; la
phrase sous les champs résume le résultat. La valeur par défaut est 10 requêtes par 60 secondes.
Les requêtes au-delà de la limite reçoivent 429 rate_limited et ne consomment pas de crédits. Les
requêtes par clé privée ne sont pas limitées par IP – voir Rate limits.
Domaines de liens autorisés
Section intitulée « Domaines de liens autorisés »Quand un modèle prend son destinataire dans les paramètres et est envoyé avec la clé publique – et
pour chaque réponse automatique –, les liens de l’e-mail ne peuvent
pointer que vers des domaines de confiance. Les liens écrits directement dans le modèle et vos
sites autorisés sont toujours acceptés ; ajoutez d’autres domaines dans Domaines de liens
autorisés, un par ligne : example.com (exactement cet hôte) ou *.example.com (sous-domaines
uniquement). Les lignes invalides sont signalées et bloquent Enregistrer. Les requêtes
contenant un lien vers un autre domaine échouent avec
link_not_allowed. Voir
Liste des domaines de liens et verrouillage du contenu.
E-mails par destinataire et par jour (1 à 1 000, 5 par défaut) plafonne le nombre d’e-mails
avec destinataire dynamique (clé publique) et de réponses automatiques qu’une même adresse reçoit
par jour (UTC). Au-delà de la limite, les requêtes échouent avec 429 rate_limited
(details.scope: "recipient") et aucune réponse automatique n’est créée.
Quand vous n’avez plus de crédits
Section intitulée « Quand vous n’avez plus de crédits »Cette carte détermine ce qui arrive aux nouveaux e-mails quand l’organisation n’a plus de crédits :
| Option | Comportement |
|---|---|
| Retenir les e-mails (Recommandé, par défaut) | Les e-mails sont acceptés et patientent dans E-mails retenus. Ils sont envoyés automatiquement dès que vous ajoutez des crédits. |
| Refuser les requêtes | L’API répond 402 insufficient_credits et rien n’est stocké – votre site décide de ce qu’il affiche au visiteur. |
Choisissez une option et cliquez sur Enregistrer. Pour une vue d’ensemble, y compris la libération des e-mails retenus, voir File d’attente des e-mails retenus.