Node.js Login-System mit PostgreSQL

Job ID: 40485641

Budget: €8 – €30 EUR

Für eine kleine HTML/JavaScript-Site brauche ich ein schlankes, aber sicheres Login-System auf Basis von Node.js (Express). Die Zugangsdaten sollen in einer PostgreSQL-Datenbank liegen, Passwörter werden dabei ausschließlich mit bcrypt gehasht.

Sessions müssen serverseitig verwaltet werden, sodass nach erfolgreichem Login jede weitere HTML-Seite den eingeloggten Zustand erkennt und schützt.

Folgende Sicherheits­funktionen sind für mich Pflicht:
• Zwei-Faktor-Authentifizierung (TOTP, z. B. Google Authenticator)
• Captcha beim Login- und Registrierungs-Formular
• Beschränkung der Login-Versuche, um Brute-Force-Angriffe abzufangen

Ich stelle statische HTML-Seiten bereit; Du lieferst den Node.js-Backend-Code, das Datenbank-Schema und die nötigen Frontend-Snippets (Formulare + JavaScript), damit alles zusammenspielt. Bitte verwende gängige Pakete wie express-session und connect-pg-simple oder schlage eine gleichwertige Alternative vor.

Akzeptanzkriterien
– Registrierung und Login funktionieren inkl. Hash-Speicherung in PostgreSQL
– Sitzung bleibt erhalten, bis Cookie oder Session abläuft
– 2FA, Captcha und Rate-Limiting sind aktivier- und testbar
– Kurze README mit Setup-Schritten (env Variablen, Migration, Startbefehl)

Wenn das System lokal sauber läuft, ist der Auftrag erledigt.