Sicherheitseinstellungen
Die Seite Sicherheit enthält die API-Schlüssel Ihrer Organisation und alles, was Ihren öffentlichen Schlüssel vor Missbrauch schützt.

Wer diese Seite nutzen kann
Abschnitt betitelt „Wer diese Seite nutzen kann“| Rolle | Zugriff |
|---|---|
| Inhaber, Admin | Sehen und ändern alles. |
| Entwickler | Nur Lesezugriff: sieht Schlüssel und Einstellungen, aber keine Schaltflächen, und alle Felder sind deaktiviert. |
| Betrachter, Abrechnung | Kein Zugriff – die Seite zeigt einen Hinweis, dass Ihre Rolle das nicht erlaubt. |
Änderungen speichern
Abschnitt betitelt „Änderungen speichern“Die Schlüsselaktionen – Schlüssel erneuern, Neuer privater Schlüssel und Widerrufen – wirken sofort, nachdem Sie sie bestätigt haben.
Die Turnstile-Schlüssel in Bot-Schutz (Turnstile) speichern Sie mit der eigenen Schaltfläche Schlüssel speichern der Karte.
Alle anderen Einstellungen auf der Seite (erlaubte Websites, Schalter für den Schutz vor Missbrauch,
mobile Apps, Blockliste, Rate Limit, erlaubte Link-Domains, E-Mails pro Empfänger und die Wahl für
aufgebrauchte Credits) sind nur ein Entwurf, bis Sie oben rechts auf Speichern klicken. Die
Schaltfläche ist nur aktiv, wenn sich etwas geändert hat. Jedes Speichern wird im
Audit-Log als security.updated festgehalten.
Öffentlicher Schlüssel
Abschnitt betitelt „Öffentlicher Schlüssel“Die Karte Öffentlicher Schlüssel zeigt Ihren pk_…-Schlüssel mit einer Kopier-Schaltfläche.
Diesen Schlüssel bauen Sie in Ihre Website ein – er darf öffentlich sein, weil Anfragen damit gegen
erlaubte Websites, CAPTCHA und Rate Limits geprüft werden. Siehe
Öffentliche und private Schlüssel.
Öffentlichen Schlüssel erneuern
Abschnitt betitelt „Öffentlichen Schlüssel erneuern“Erneuern Sie ihn, wenn Sie trotz der übrigen Schutzmaßnahmen Missbrauch feststellen.
- Klicken Sie auf Schlüssel erneuern.
- Bestätigen Sie im Dialog Öffentlichen Schlüssel erneuern? mit Schlüssel erneuern.
- Kopieren Sie den neuen Schlüssel und spielen Sie ihn auf Ihrer Website ein.
Der alte Schlüssel funktioniert noch 24 Stunden. Bis dahin zeigt die Karte einen Hinweis, welcher
vorherige Schlüssel noch gilt und bis wann. Danach schlagen Anfragen mit dem alten Schlüssel mit
invalid_public_key fehl.
Private Schlüssel
Abschnitt betitelt „Private Schlüssel“Private Schlüssel sind ausschließlich für Server gedacht – das Node SDK, cURL, Ihr Backend. Die Tabelle zeigt für jeden Schlüssel den Namen (Name) mit Erstellungsdatum, die letzten vier Zeichen unter Schlüssel und wann er Zuletzt verwendet wurde (Nie, wenn er noch nicht benutzt wurde).
Eine Organisation kann höchstens 20 aktive private Schlüssel haben.
Privaten Schlüssel erstellen
Abschnitt betitelt „Privaten Schlüssel erstellen“- Klicken Sie auf Neuer privater Schlüssel.
- Geben Sie unter Name einen Namen ein, aus dem hervorgeht, wo Sie ihn verwenden, z. B. „Produktiv-Backend“, und klicken Sie auf Erstellen.
- Der Dialog Ihr neuer privater Schlüssel zeigt den vollständigen Schlüssel. Kopieren Sie ihn jetzt und legen Sie ihn in den Secrets Ihres Servers oder in Ihrem Passwort-Manager ab.
- Klicken Sie auf Ich habe ihn sicher gespeichert.
Privaten Schlüssel widerrufen
Abschnitt betitelt „Privaten Schlüssel widerrufen“- Klicken Sie in der Zeile des Schlüssels auf Widerrufen.
- Bestätigen Sie im Dialog mit Widerrufen.
Der Widerruf wirkt sofort – Anfragen mit dem Schlüssel werden umgehend mit
invalid_private_key abgelehnt. Um einen Schlüssel
ohne Ausfall zu ersetzen, erstellen Sie zuerst den neuen Schlüssel, spielen ihn ein, prüfen, dass
sich Zuletzt verwendet beim alten Schlüssel nicht mehr ändert, und widerrufen ihn erst dann.
Erlaubte Websites
Abschnitt betitelt „Erlaubte Websites“Nur die unter Erlaubte Websites eingetragenen Domains können mit Ihrem öffentlichen Schlüssel
senden. Frontmail gleicht sie mit dem Origin-Header des Browsers ab. Details finden Sie unter
Erlaubte Domains.
Erlaubte Formate:
| Eintrag | Passt auf |
|---|---|
example.com |
Genau diese Domain. |
*.example.com |
Jede Subdomain von example.com. |
localhost:3000 |
Einen Host mit bestimmtem Port – praktisch für die lokale Entwicklung. |
Wenn Sie eine vollständige URL wie https://example.com/contact einfügen, übernimmt das Dashboard
nur den Host.
Website erlauben
Abschnitt betitelt „Website erlauben“- Tippen Sie die Domain in Domain hinzufügen ein.
- Klicken Sie auf Hinzufügen (oder drücken Sie Enter). Die Domain erscheint als Tag über dem Feld.
- Klicken Sie auf Speichern.
Um eine Domain zu entfernen, klicken Sie auf das × in ihrem Tag und dann auf Speichern.
Bot-Schutz (Turnstile)
Abschnitt betitelt „Bot-Schutz (Turnstile)“Diese Karte enthält die eigenen Cloudflare-Turnstile-Schlüssel Ihrer
Organisation. Vorlagen mit aktivem CAPTCHA verlangen (Turnstile) nehmen Anfragen von Ihren
Websites nur mit einem Turnstile-Token an, und Frontmail prüft diese Tokens mit dem Secret Key, den
Sie hier hinterlegen. Ohne Schlüssel schlagen Anfragen von Websites an solche Vorlagen mit
captcha_not_configured fehl.
Warum eigene Schlüssel: Der kostenlose Tarif von Cloudflare erlaubt nur 10 Hostnamen pro Widget, daher kann ein einziger Frontmail-Schlüssel nicht die Websites aller Kunden abdecken. Ihr Widget ist kostenlos und funktioniert nur auf Ihren Hostnamen.
Turnstile-Schlüssel hinzufügen
Abschnitt betitelt „Turnstile-Schlüssel hinzufügen“- Öffnen Sie im Cloudflare-Dashboard Turnstile → Add
widget, geben Sie einen Namen ein, tragen Sie die Hostnamen Ihrer Websites ein (z. B.
example.com,www.example.com;localhostnur zum Testen), behalten Sie den Modus Managed bei und klicken Sie auf Create. - Kopieren Sie den Site Key und den Secret Key.
- Fügen Sie zurück auf der Seite Sicherheit beide Schlüssel in die Karte Bot-Schutz (Turnstile) ein und klicken Sie auf Schlüssel speichern.
- Klicken Sie auf CAPTCHA für alle Vorlagen aktivieren, um es mit einem Klick für alle bestehenden Vorlagen einzuschalten. Vorlagen, die als automatische Antwort dienen, werden übersprungen.
Beim Speichern wird der Secret Key zuerst bei Cloudflare geprüft – ein falscher Schlüssel wird mit
einer klaren Meldung abgelehnt und nichts wird gespeichert. Die Schlüssel werden sofort gespeichert
(die Schaltfläche Speichern der Seite ist nicht nötig) und im
Audit-Log als security.turnstile.updated festgehalten; das
Aktivieren des CAPTCHA für alle Vorlagen wird als template.captcha_enabled erfasst.
- Der Secret Key lässt sich nur schreiben: Er wird verschlüsselt gespeichert und nie wieder
angezeigt – die Karte zeigt nur den Site Key und seit wann die Schlüssel eingerichtet sind. Zum
Ändern klicken Sie auf Schlüssel ersetzen und fügen neue ein; um sie nicht mehr zu verwenden,
klicken Sie auf Schlüssel entfernen und bestätigen Turnstile-Schlüssel entfernen?
(
security.turnstile.removed). Vorlagen behalten ihre CAPTCHA-Einstellung – nach dem Entfernen der Schlüssel schlagen Anfragen von Websites an sie also fehl, bis Sie wieder Schlüssel hinterlegen. - Sobald Schlüssel gespeichert sind, haben neue Vorlagen das CAPTCHA standardmäßig aktiviert. Bereits vorhandene Vorlagen behalten ihre Einstellung.
- Der Tab Snippets im Vorlagen-Editor enthält dann das Widget mit Ihrem Site Key.
- Für die lokale Entwicklung können Sie die Testschlüssel von Cloudflare verwenden – niemals in der Produktion.
Mobile Apps, die mit @frontmail/react-native gebaut sind,
brauchen diese Schlüssel nicht – sie verwenden den gemeinsamen mobilen Schlüssel von Frontmail.
Schutz vor Missbrauch
Abschnitt betitelt „Schutz vor Missbrauch“Ob eine Vorlage das Turnstile-CAPTCHA verlangt, stellen Sie pro Vorlage im Vorlagen-Editor ein, nicht hier – siehe Turnstile. Die Karte Schutz vor Missbrauch hat vier Schalter:
| Schalter | Was er bewirkt |
|---|---|
| Headless-Browser blockieren | Lehnt Anfragen mit öffentlichem Schlüssel aus automatisierten Browsern wie Puppeteer ab. Standardmäßig aus. Siehe Bot-Schutz. |
| Strikte Parameter | Lehnt Anfragen mit Parametern ab, die nicht im Schema der Vorlage stehen, statt sie zu ignorieren. Standardmäßig aus. |
| API mit privatem Schlüssel erlauben | Ihre Server dürfen mit einem privaten Schlüssel senden; die Prüfung der Website entfällt dann. Standardmäßig an. Schalten Sie das aus, wenn Sie nur aus Browsern senden – Anfragen mit privatem Schlüssel werden dann mit 403 forbidden abgelehnt. |
| Private Schlüssel im Browser erlauben | Nimmt Anfragen mit privatem Schlüssel an, die von einer Webseite kommen (mit Origin-Header). Standardmäßig aus – solche Anfragen werden mit 403 private_key_in_browser abgelehnt, weil jeder Besucher der Seite den Schlüssel kopieren könnte. Aktivieren Sie das nur für interne Tools; dabei erscheint eine Warnung. Siehe Schlüssel. |
Denken Sie daran, nach dem Umschalten auf Speichern zu klicken.
Mobile Apps
Abschnitt betitelt „Mobile Apps“Native Apps (React Native, Flutter, Swift, Kotlin) senden keinen Origin-Header. Ihre Anfragen
werden daher – wie jede Anfrage mit öffentlichem Schlüssel ohne Origin und Referer – mit
403 origin_not_allowed abgelehnt, auch wenn keine
erlaubten Websites eingetragen sind. Die Karte Mobile Apps hat einen Schalter, Mobile Apps
erlauben (standardmäßig aus). Ist er an, werden Anfragen mit öffentlichem Schlüssel ohne Origin-
oder Referer-Header angenommen und ihr CAPTCHA wird mit dem gemeinsamen mobilen Schlüssel von
Frontmail geprüft. Anfragen von Websites werden weiterhin mit der Liste abgeglichen. Details unter
Erlaubte Domains → Mobile Apps.
Mobile Apps erlauben
Abschnitt betitelt „Mobile Apps erlauben“- Schalten Sie Mobile Apps erlauben ein.
- Lesen Sie die Warnung, die unter dem Schalter erscheint.
- Klicken Sie auf Speichern.
Blockliste
Abschnitt betitelt „Blockliste“Die Blockliste stoppt bekannte Spammer, bevor ihre Anfragen Credits verbrauchen.
- Blockierte Werte – ein Wert pro Zeile: E-Mail-Adressen, Domains (
spam.exampleoder@spam.example) oder exakte Parameterwerte. - Zu prüfender Parameter – der Parameter, der zusätzlich zu den Empfängern mit der Liste
abgeglichen wird, z. B.
emailfür die Adresse des Besuchers in einem Kontaktformular.
Passende Anfragen schlagen mit recipient_blocked fehl.
Mehr unter Bot-Schutz → Blockliste.
Rate Limit pro IP
Abschnitt betitelt „Rate Limit pro IP“Rate Limit pro IP begrenzt, wie oft ein einzelner Besucher Ihre Formulare mit dem öffentlichen
Schlüssel absenden kann. Legen Sie Anfragen (1–1.000) und Pro (Sekunden) (1–86.400) fest;
der Satz unter den Feldern fasst das Ergebnis zusammen. Standard sind 10 Anfragen pro 60
Sekunden. Anfragen über dem Limit erhalten 429 rate_limited und verbrauchen keine Credits.
Anfragen mit privatem Schlüssel werden nicht pro IP begrenzt – siehe
Rate Limits.
Erlaubte Link-Domains
Abschnitt betitelt „Erlaubte Link-Domains“Wenn eine Vorlage ihren Empfänger aus Parametern nimmt und mit dem öffentlichen Schlüssel gesendet
wird – und bei jeder automatischen Antwort –, dürfen Links in der E-Mail
nur auf Domains zeigen, denen Sie vertrauen. Direkt in der Vorlage geschriebene Links und Ihre
erlaubten Websites sind immer erlaubt; weitere Domains tragen Sie unter Erlaubte Link-Domains
ein, eine pro Zeile: example.com (genau dieser Host) oder *.example.com (nur Subdomains).
Ungültige Zeilen werden markiert und blockieren Speichern. Anfragen mit einem Link woandershin
schlagen mit link_not_allowed fehl. Siehe
Link-Allowlist und Inhaltssperre.
E-Mails pro Empfänger und Tag (1–1.000, Standard 5) begrenzt, wie viele E-Mails mit
dynamischem Empfänger (öffentlicher Schlüssel) und automatische Antworten eine Adresse pro Tag (UTC)
erhält. Über dem Limit schlagen Anfragen mit 429 rate_limited (details.scope: "recipient") fehl
und es wird keine automatische Antwort erzeugt.
Wenn Ihre Credits aufgebraucht sind
Abschnitt betitelt „Wenn Ihre Credits aufgebraucht sind“Diese Karte legt fest, was mit neuen E-Mails passiert, wenn die Organisation keine Credits mehr hat:
| Option | Verhalten |
|---|---|
| E-Mails zurückhalten (Empfohlen, Standard) | E-Mails werden angenommen und warten unter Zurückgehaltene E-Mails. Sobald Sie Credits aufladen, werden sie automatisch gesendet. |
| Anfragen ablehnen | Die API antwortet mit 402 insufficient_credits und nichts wird gespeichert – Ihre Website entscheidet, was sie dem Besucher mitteilt. |
Wählen Sie eine Option und klicken Sie auf Speichern. Das Gesamtbild, einschließlich der Freigabe zurückgehaltener E-Mails, finden Sie unter Warteschlange zurückgehaltener E-Mails.