Systemarchitektur und Funktionsumfang
Systemarchitektur
Ein Audit-Server kann für mehrere Mandanten genutzt werden. Der Betrieb des Audit-Servers kann ausserhalb der Installation von CMI erfolgen. Aus Datenschutzgründen kann dies sogar gewünscht sein.
Es ist zu klären, wer auf das Audit-Log zugreifen darf. Aus Daten- (Persönlichkeits)-Schutz darf dies nur bei Bedarf erfolgen. Die Architektur stellt sicher, dass die Audit-Log-Einträge getrennt von der Applikation gespeichert werden, und das Verknüpfen mit den Daten (Visualisieren) einen expliziten, manuellen Schritt benötigt.
Architekturbeschreibung:
Datenfluss:
- Jeder CMI Server schreibt seine Audit-Logs in eine eigenen RabbitMq Qeueue.
- Der Audit-Server holt die Einträge aus den verschiedenen Qeueues und verarbeitet (Signiert) sie.
- Nach der Verarbeitung wird das Audit-Log in der Datenbank gespeichert.
- Die Auswertungen (siehe Use Cases) erfolgen gegenüber dieser Datenbank. Das Resultat (Rohdaten mit GUIDs) wird als CSV-Datei exportiert.
- Auswertung der Audit-Log-Daten durch Report in CMI.
RabbitMq fungiert als Schnittstelle zwischen CMI Server und dem Audit-Server. Sowohl RabbitMq als auch der Audit-Server können als Cluster (mehrere Instanzen) betrieben werden.
Authentifizierung / Benutzerverwaltung
Für den CSV-Export der Daten ist eine Anmeldung am Web-Frontend notwendig. Die Anmeldung wird dabei durch den STS3 Authentifiziert. Für jeden Mandanten im Audit-Server kann eine Liste von Benutzern konfiguriert werden, dessen STS3-Tokens für den Audit-Server verwendet werden können. Auf diese Weise ist sichergestellt, dass nur explizit erlaubte Benutzer Zugriff auf den Audit-Server erhalten.
Funktionsumfang
Der Audit Server stellt folgende Grundfunktionalität zur Verfügung
- Verifikation der Einträge auf Vollständigkeit und Integrität.
- Export von Einträgen für die Visualisierung mit einem Report in CMI als CSV-Datei.
- Automatisches Löschen von Logs nach einer definierten Zeit.