Architektur
4-Stufen-Sicherheitsisolierung mit NATS JetStream Messaging.
Datenfluss-Diagramm
Vollständiger Request/Response-Zyklus durch alle 4 isolierten Sicherheitsstufen
Validator
Validator
Validator
Validator
Warum 4 separate NATS-Instanzen?
Sicherheitsisolierung
Jede NATS-Instanz ist vollständig isoliert. Wenn ein Angreifer eine Komponente kompromittiert, kann er nicht auf Nachrichten anderer Stufen zugreifen. Dirty (unvalidierte) und Clean (validierte) Daten werden niemals vermischt.
Defense in Depth
Selbst wenn der Request Validator umgangen wird, bietet der Response Validator eine weitere Schutzebene. Jede Stufe arbeitet unabhängig mit eigener Sicherheitsgrenze.
Audit-Trail
Alle Nachrichten werden in einer separaten PostgreSQL-Audit-Datenbank protokolliert. Dies bietet eine vollständige, unveränderliche Aufzeichnung des gesamten API-Verkehrs für Compliance und Forensik.
Performance
NATS JetStream bietet Hochdurchsatz- und Low-Latency-Messaging. Die 4-Stufen-Architektur fügt minimalen Overhead hinzu und bietet maximale Sicherheit.
Vereinfachungen
Alternative Deployment-Optionen für reduzierte Kosten bei geringeren Sicherheitsanforderungen
Container-basiertes Deployment
Deployment aller Komponenten (Frontend, Request Validator, Response Validator, Backend, 4 NATS-Instanzen) als isolierte Container in einem Podman/Docker Pod mit internem Netzwerk.
- Deutlich reduzierte Hardware-Kosten (ein Host statt acht)
- Einfaches Deployment mit docker-compose/podman-compose
- Internes Pod-Netzwerk für schnelle Kommunikation
- Verlässt sich auf Container-Isolation statt Hardware-Trennung
- Container-Escape-Vulnerabilities könnten alle Komponenten gefährden
- Gemeinsame Kernel-Ressourcen
Einmalige Validierung
Anstatt zusätzliche Request Validator und Response Validator Prozesse zu betreiben, führt nur der Backend-Prozess die Validierung durch. NATS-1 ist direkt mit dem Backend verbunden, NATS-3 direkt mit dem Frontend.
- Reduzierte Hardware-Kosten (2 Prozesse weniger, 2 NATS-Instanzen weniger)
- Schnellere Verarbeitung (weniger Hops)
- Einfachere Deployment-Architektur
- Validierung im Backend-Prozess-Kontext (weniger isoliert)
- Kompromittiertes Backend könnte Validierung umgehen
- Keine unabhängige Sicherheitsschicht
- Geringere Netzwerk-Isolation
Eine gemeinsame NATS-Instanz
Anstatt 4 separate NATS-Instanzen zu betreiben, können alle Message-Queues über eine einzige NATS-Instanz mit verschiedenen Subjects (dirty-req, clean-req, dirty-resp, clean-resp) abgewickelt werden.
- Geringere Hardware-/Cloud-Kosten
- Einfachere Wartung und Monitoring
- Weniger Netzwerkkonfiguration
- Geringere Sicherheitsisolierung
- Bei einem NATS-Bug könnten Validierungen umgangen werden
- Kompromittierte Komponente hat Zugriff auf alle Queues
Mehr erfahren
Sehen Sie unsere Sicherheitsarchitektur in Aktion mit 181 dokumentierten Tests.
Architektur-Tests ansehen