Architektur und Betrieb
Diese Seite beschreibt den produktiven Betrieb von HERA aus technischer Sicht: welche Komponenten beteiligt sind, welche Systeme miteinander kommunizieren und wo Daten dauerhaft oder nur vorübergehend verarbeitet werden.
Architekturüberblick
HERA wird im Produktivbetrieb innerhalb einer virtuellen Maschine betrieben. In dieser VM laufen der öffentlich erreichbare Apache-Webserver, der HERA-Docker-Container, die Datenbankanwendung und der lokale Dateispeicher.
Die Anwendung selbst stellt keine direkt aus dem Internet erreichbaren Ports bereit. Öffentlich erreichbar ist ausschließlich der Apache-Server, der eingehende HTTPS-Anfragen entgegennimmt und lokal an den HERA-Container weiterleitet.
Kommunikationswege
Nutzerzugriff
Nutzerinnen und Nutzer greifen mit einem Browser auf HERA zu. Die Verbindung vom Browser zum Apache-Server erfolgt verschlüsselt per HTTPS/TLS.
Der Apache-Server arbeitet als Reverse Proxy. Er nimmt die öffentliche Anfrage entgegen, terminiert die TLS-Verbindung und leitet die Anfrage innerhalb der VM an den lokal gebundenen Port des HERA-Containers weiter. Der Container ist dadurch nicht direkt aus dem Internet erreichbar.
Anwendung und Datenbank
Der HERA-Container kommuniziert mit der Datenbankanwendung innerhalb derselben VM. In der Datenbank werden die strukturierten Anwendungsdaten gespeichert, zum Beispiel Benutzerkonten, Rollen, Mitgliederdaten, Termine, Audit-Ereignisse und fachliche Datensätze der einzelnen Module.
Sensible Datenbankfelder werden durch HERA zusätzlich anwendungsseitig verschlüsselt gespeichert. Dazu gehören insbesondere Gesundheitsdaten, persönliche Mitgliedsdaten aus sensiblen Kategorien und TOTP-Geheimnisse für die Zwei-Faktor-Authentifizierung. Details beschreibt die Seite Sicherheit.
Anwendung und Dateispeicher
Dateien werden außerhalb der Datenbank im Dateisystem der VM abgelegt. Der Speicher ist nach HERA-Instanz und darunter nach Ortsverband getrennt. Dort liegen insbesondere Uploads, Anhänge und erzeugte Dateien, soweit ein Modul solche Dateien verwendet.
Die Dateien werden durch HERA nicht zusätzlich verschlüsselt gespeichert. Der Schutz dieser Dateien erfolgt daher über die System- und Zugriffsrechte der VM, die Trennung der Verzeichnisse, den eingeschränkten Zugriff auf die Serverumgebung und die vorgelagerten organisatorischen Maßnahmen.
Backup
Datenbank und Dateispeicher werden mindesten einmal Täglich, regulär jedoch alle 12 Stunden auf einen Backup-Server gesichert. Damit werden sowohl strukturierte Daten aus der Datenbank als auch Dateien aus den instanz- und ortsverbandsbezogenen Verzeichnissen in die regelmäßige Datensicherung einbezogen.
Die konkrete Absicherung des Backup-Transportwegs und der Speicherung auf dem Backup-Server ist Teil der jeweiligen Betriebsumgebung.
Es werden Backups für 5 Tage vorgehalten.
Die Daten der verwendten Virtuellen Maschine (VM) sowie die Nutzdaten aus Anwendungen werden auf getrennten Backupservern gesichert.
Die Wiederherstellbarkeit der Sicherungen wird durch synthetische Lesetests geprüft. Dabei werden gespeicherte Datenblöcke gelesen und ihre Checksummen mit den beim Speichern erzeugten Prüfsummen verglichen.
Persistente Daten
Persistente Daten bleiben über einzelne Anfragen, Sitzungen und Neustarts hinaus erhalten. Dazu gehören:
| Speicherort | Datenarten | Hinweise |
|---|---|---|
| Datenbank in der VM | Benutzerkonten, Rollen, Mitgliederdaten, Organisationsdaten, Kalenderdaten, Audit-Events, Import- und Systemprotokolle | Sensible Felder werden teilweise zusätzlich durch HERA verschlüsselt. |
| Dateisystem der VM | Uploads, Anhänge, erzeugte Dateien und Exporte | Ablage je Instanz und Ortsverband; keine zusätzliche Dateiverschlüsselung durch HERA. |
| Backup-Server | Tägliche Sicherung von Datenbank und Dateispeicher | Dient der Wiederherstellung nach Ausfall oder Datenverlust. |
Für fachliche Lösch- und Aufbewahrungsfristen gilt die separate Übersicht Aufbewahrungsfristen.
Transiente Daten
Transiente Daten entstehen während der Nutzung und sind nicht als dauerhafte fachliche Speicherung vorgesehen. Beispiele sind:
- HTTP-Anfragen und Antworten zwischen Browser, Apache und HERA.
- LiveView- und WebSocket-Verbindungen während einer aktiven Sitzung.
- Laufende Sitzungs- und Anmeldezustände während einer aktiven Verbindung. Persistente Session- und Anmelde-Tokens werden in der Datenbank gespeichert und durch die dokumentierten Aufbewahrungsfristen begrenzt.
- Temporäre Uploads während der Verarbeitung einer Datei.
- Zwischenergebnisse von Hintergrundjobs, Importen, Exporten und Benachrichtigungsverarbeitung.
Ein Teil dieser Vorgänge kann technische oder sicherheitsrelevante Protokolleinträge erzeugen. Diese Protokolle sind dann wieder persistente Daten und unterliegen den dokumentierten Aufbewahrungsfristen.
Netzgrenzen und Schutzwirkung
Die produktive Umgebung ist so aufgebaut, dass aus dem Internet nur der Apache-Reverse-Proxy erreichbar ist. HERA-Container, Datenbank und Dateispeicher befinden sich innerhalb der VM und sind nicht direkt öffentlich exponiert.
Die wichtigsten Schutzgrenzen sind:
- Internet zu Apache: verschlüsselte Kommunikation per HTTPS/TLS.
- Apache zu HERA: lokale Weiterleitung innerhalb der VM auf einen nur lokal bereitgestellten Container-Port.
- HERA zu Datenbank: lokale Kommunikation innerhalb der VM zur separaten Datenbankanwendung.
- HERA zu Dateispeicher: lokaler Zugriff auf das Dateisystem der VM mit Trennung nach Instanz und Ortsverband.
- VM zu Backup-Server: tägliche Übertragung der Sicherung gemäß Betriebsumgebung.
Damit reduziert die Architektur die öffentlich erreichbare Angriffsfläche auf den Reverse Proxy. Der direkte Zugriff auf Anwendung, Datenbank und Dateispeicher ist nicht Bestandteil der öffentlichen Internetanbindung.