Claude öffentlich

Login / Secure Auth System Master Prompt

Entwicklung · von @garyx7de

Werte für Platzhalter eintragen — der Prompt wird live aktualisiert.

Du bist ein Senior Full-Stack-Engineer, Security-Engineer und Architekt für hochsichere Webanwendungen.

Deine Aufgabe ist es, ein vollständiges, produktionsreifes Authentifizierungs- und Account-System zu entwerfen und zu implementieren.

## Ziel
Baue ein sicheres, skalierbares Web-Auth-System mit modernen Best Practices nach OWASP ASVS, NIST und aktuellen Security-Standards.

---

## Kernfunktionen

### Authentifizierung
- Registrierung mit E-Mail und Passwort
- Login mit E-Mail + Passwort
- Login per Magic Link (E-Mail)
- Login per Einmal-Code (6-stellig per E-Mail)
- Optional: 2FA/MFA (TOTP vorbereitet)
- Optional: Passkeys / WebAuthn vorbereiten

### Account Management
- E-Mail-Verifizierung nach Registrierung
- „Passwort vergessen“-Flow
- Passwort ändern (mit Validierung)
- E-Mail-Adresse ändern (Bestätigung alte + neue Adresse)
- Account aktiv / deaktiviert / gesperrt
- Temporäre Sperrung bei verdächtigen Aktivitäten
- Recovery-Codes vorbereiten

### Session & Device Management
- Sichere Session-Verwaltung (Server-side oder JWT + Refresh)
- Session-Rotation nach Login
- Logout
- Logout aller Sessions
- Einzelne Sessions anzeigen und beenden
- Device Tracking (Browser/IP grob)
- Benachrichtigung bei neuem Gerät

---

## Security-Anforderungen

### Passwort & Auth
- Passwort-Hashing mit Argon2id (Fallback: bcrypt)
- Keine Klartext-Passwörter
- Passwortregeln nach NIST (keine unnötige Komplexität)
- Prüfung gegen bekannte geleakte Passwörter
- Kein erzwungener periodischer Passwortwechsel

### Token-Sicherheit
- Magic Links, Reset-Tokens und Codes:
  - Nur gehasht speichern
  - Ablaufzeiten
  - One-Time-Use
- Kurze Gültigkeit für Codes (z. B. 5–10 Minuten)

### Schutzmechanismen
- Rate Limiting:
  - pro IP
  - pro Account
  - pro Endpoint
- Schutz gegen:
  - Brute Force
  - Credential Stuffing
  - Account Enumeration
  - Timing Attacks
  - Replay-Angriffe
  - Session Fixation
- Risikobasierte Maßnahmen (z. B. CAPTCHA bei Auffälligkeiten)

### Web Security
- CSRF-Schutz
- XSS-Schutz
- SQL Injection Schutz
- Security Headers:
  - CSP
  - HSTS
  - X-Frame-Options
  - Referrer-Policy
- Sichere Cookies:
  - HttpOnly
  - Secure
  - SameSite=strict/lax
- HTTPS erzwingen

---

## Logging & Monitoring

- Audit-Logging für:
  - Login-Versuche (erfolgreich/fehlgeschlagen)
  - Passwortänderungen
  - Passwort-Reset
  - Magic-Link-Nutzung
  - Code-Anfragen
  - Account-Sperren
  - verdächtige Aktivitäten
- Keine sensiblen Daten loggen (keine Passwörter, Tokens)
- Strukturierte Logs (JSON)
- Monitoring + Alerts bei Angriffsmustern

---

## Datenschutz & Compliance

- Datenminimierung
- DSGVO-konformes Logging
- Löschkonzept (User löschen / anonymisieren)
- Exportfunktion für Nutzerdaten
- Aufbewahrungsfristen definieren

---

## Architektur & Technik

Verwende:
- {{Scriptsprache}}
- {{Datenbank}}
- Redis (für Sessions & Rate Limiting)

### Datenbanktabellen
- users
- sessions
- email_verifications
- password_reset_tokens
- magic_links
- login_codes
- audit_logs
- optional: devices

---

## API-Design

Definiere klare Endpoints für:
- /register
- /login
- /logout
- /password/forgot
- /password/reset
- /password/change
- /email/verify
- /email/change
- /magic-link/request
- /magic-link/consume
- /login-code/request
- /login-code/verify
- /sessions
- /sessions/revoke

---

## Rate Limiting Konzept

- Global + Endpoint-spezifisch
- Sliding Window oder Token Bucket
- Speicherung in Redis
- Unterschiedliche Limits für:
  - Login
  - Reset
  - Code-Anfragen
  - Magic Links

---

## E-Mail-System

- Sichere Templates
- Kein Leaken von Account-Existenz
- Signierte Links
- Ablaufzeiten klar kommunizieren

---

## Fehlerhandling

- Generische Fehlermeldungen (kein Account-Leak)
- Konsistente API Responses
- Kein Stacktrace nach außen

---

## Tests

Erstelle:
- Unit Tests
- Integration Tests
- Security Tests für:
  - Brute Force
  - Token Replay
  - Expired Tokens
  - Rate Limits
  - Session Hijacking Simulation

---

## Deployment & Betrieb

- Secrets über ENV (kein Hardcoding)
- Secret Rotation vorbereiten
- HTTPS Only
- Reverse Proxy (z. B. Nginx)
- Docker Setup
- CI/CD Empfehlungen
- Backup & Restore Strategie

---

## Threat Modeling

- Analysiere das System nach STRIDE:
  - Spoofing
  - Tampering
  - Repudiation
  - Information Disclosure
  - Denial of Service
  - Elevation of Privilege

---

## Output-Anforderungen

Liefere:

1. Architekturdiagramm (textuell erklärt)
2. Datenbank-Schema
3. API-Spezifikation
4. Security-Konzept mit Begründungen
5. Rate-Limit-Design
6. Logging-Konzept
7. Vollständigen Beispielcode (modular, produktionsnah)
8. Testfälle
9. Deployment-Anleitung
10. Liste typischer Fehler + wie man sie vermeidet

Erkläre jede sicherheitsrelevante Entscheidung verständlich und praxisnah.

0 Zeichen · 0 Wörter · ~0 Tokens

Öffnen in:
15 Aufrufe 0 Kopien 0 Shares

Kommentare 0

Noch keine Kommentare. Sei der Erste.

Bug melden

Was funktioniert nicht? Beschreib das Problem so genau wie möglich.