Dieses Beispiel dokumentiert, wie Architekturentscheidungen inkl. Authentifizierung/Autorisierung festgehalten werden.
Lege die ausgefüllte Datei unter docs/<projekt>/architektur-review.md ab und verknüpfe sie im ADR (adr/0001-auth.md).
# Architektur-Review – Projekt <Name>
## Kontext
- Release/Sprint: 2024-07 (SEC-REL-045)
- Reviewer: Security Champion (alice@example.com)
- Beteiligte Systeme: Web-Frontend, Auth-Service, Backend-API
- Protokolle: HTTPS, mTLS (intern), OAuth 2.0 / OIDC
## Schichten & Services
| Ebene | Komponente | Beschreibung | Protokoll(e) |
|--------------|-------------------|--------------------------------------------------|---------------------|
| Präsentation | Web-Frontend | React SPA im CDN | HTTPS |
| Auth | Auth-Service | Keycloak Realm „customer-prod“ | HTTPS, OAuth 2.0 |
| Backend | API Gateway | Kong 3.0 (Rate-Limiting, JWT-Validierung) | HTTPS, mTLS intern |
| Daten | Customer-Service | Spring Boot, Zugriff auf Postgres | mTLS intern |
## AuthN/AuthZ Entscheidungen
- Flow: Authorization Code Flow mit PKCE, enforced MFA.
- Token-Claims: `sub`, `roles`, `tenant`. Backend-APIs prüfen `roles:admin` für Administrations-Endpunkte.
- Session-TTLs: 15 min Idle, 8 h absolute; Refresh Token 24 h.
## Sicherheitsmaßnahmen
- Rate Limiting: 200 req/min pro Token, Logging via ELK.
- Input Validation: Zentrale Validator-Bibliothek `@company/validation` in jedem Service.
- Secrets: Vault Agent Sidecar, JWT Signing Keys rotieren alle 30 Tage.
## Eskalationsprüfung
- Offene Fragen: Benötigt der neue Partner-API-Access eine DSGVO-Freigabe? (Ticket LEG-58)
- Risiko: Keycloak Patch CVE-2024-1234 offen (Patch spätestens im Sprint 2024-08 einplanen).
- Entscheid: Keine Eskalation an CISO (Risiko Low, kompensiert durch WAF-Regel).
## Freigaben
- Security Champion: _Alice Example, 2024-06-30_
- Product Owner: _Bob Owner, 2024-06-30_