3.7 KiB
DOGFATHER UNIVERSE — Bewerbungs-Postfach (Cloudflare Worker)
Dieser Worker nimmt Bewerbungen von bewerben.html entgegen und speichert sie in Cloudflare KV.
Nur wer den richtigen Code kennt, kann sie über postfach.html einsehen — der Code wird
serverseitig geprüft (nicht im Browser-Code sichtbar), das ist der eigentliche Schutz.
Kosten: läuft im kostenlosen Cloudflare-Tier (Workers Free + KV Free reichen für dieses Volumen locker).
Voraussetzungen
- Ein (kostenloser) Cloudflare-Account
- Node.js installiert (für
npx wrangler)
Deploy in 5 Schritten
Alles im Ordner cloudflare-worker/ ausführen:
cd cloudflare-worker
# 1. Bei Cloudflare einloggen (öffnet Browser zur Anmeldung)
npx wrangler login
# 2. KV-Namespace anlegen (Speicher für die Bewerbungen)
npx wrangler kv namespace create BEWERBUNGEN
Die Ausgabe von Schritt 2 enthält eine id = "...". Diese id in wrangler.toml bei
REPLACE_ME eintragen.
# 3. Geheimen Zugangscode für das Postfach festlegen
# (wird abgefragt, nirgends im Code sichtbar — frei wählbar, z.B. ein langes Passwort)
npx wrangler secret put POSTFACH_CODE
# 4. Worker deployen
npx wrangler deploy
Schritt 4 gibt eine URL aus, z.B. https://dogfather-universe-postfach.<dein-account>.workers.dev.
# 5. Kurz testen
curl https://dogfather-universe-postfach.<dein-account>.workers.dev/health
# sollte {"ok":true,"service":"dogfather-universe-postfach"} zurückgeben
Website mit dem Worker verbinden
Nach dem Deploy die Worker-URL an zwei Stellen eintragen:
assets/js/forms.js→ KonstanteAPI_BASE_URLganz oben auf die Worker-URL setzen (ohne abschließenden Slash).postfach.html→ KonstanteAPI_BASE_URLim<script>-Block genauso setzen.
Danach gehen neue Bewerbungen automatisch an den Worker statt (nur) an den mailto:-Fallback,
und postfach.html kann sie mit dem in Schritt 3 gesetzten Code anzeigen.
Wer den Code kennen darf
Der Code aus Schritt 3 ist dein Owner-Code — nur du (Dogi) solltest ihn kennen. Damit kannst
du nicht nur Bewerbungen sehen, sondern auch Helfer-Codes für andere Personen vergeben (siehe
unten). Code ändern: einfach wrangler secret put POSTFACH_CODE erneut ausführen und neuen Wert
eingeben — alte Bewerbungen bleiben erhalten, nur der Zugangscode ändert sich.
Rollen für Rechte Hand, Linke Hand & Co.
Auf postfach.html gibt es — nur sichtbar, wenn du dich mit deinem Owner-Code einloggst — einen
Bereich „Rollen verwalten". Dort kannst du:
- Neue Codes erzeugen, mit Rolle (Rechte Hand / Linke Hand / frei) + Name (z.B. "VanVan"). Der neue Code wird einmalig angezeigt — sofort weitergeben/notieren, danach ist er nicht mehr abrufbar (nur als Hash gespeichert, aus Sicherheitsgründen).
- Codes entziehen, falls sich jemandes Rolle ändert oder der Zugang nicht mehr gebraucht wird.
Was Helfer-Codes können: ausschließlich die eingegangenen Bewerbungen ansehen — dieselbe Ansicht wie du. Was sie NICHT können: neue Codes erzeugen, andere Codes entziehen, oder irgendetwas an der Website selbst verändern/löschen. Für Website-Änderungen gibt es in diesem Worker schlicht keine einzige Funktion — das ist technisch gar nicht möglich, egal welchen Code jemand hat.
Wartung
- Bewerbungen ansehen: über
postfach.htmlmit Code (empfohlen), oder direkt im Cloudflare Dashboard unter Workers & Pages → KV →BEWERBUNGEN. - Bewerbungen löschen: im Cloudflare Dashboard unter KV die einzelnen
sub:...-Einträge entfernen. - CORS ist aktuell offen (
*) — sobald die finale Domain feststeht, insrc/worker.js→corsHeaders()auf die echte Domain einschränken (siehe TODO-Kommentar dort).