Wie man MongoDB prüft
Die Prüfung von MongoDB ist für Organisationen, die mit sensiblen oder regulierten Daten umgehen, unerlässlich. Sie ermöglicht die Nachverfolgung von Benutzeraktionen, die Erkennung von Anomalien und die Einhaltung von Standards wie GDPR und HIPAA. Dieser Leitfaden behandelt die native Audit-Konfiguration von MongoDB — verfügbar in der MongoDB Enterprise Edition — sowie Erweiterungen mit DataSunrise und Strategien für Echtzeitüberwachung, dynamisches Maskieren, Entdeckung und Compliance.
Warum Audits wichtig sind
Audit-Logs sind das forensische Rückgrat der Datenbanksicherheit. Sie protokollieren, wer wann und wie auf was zugegriffen hat. Diese Informationen unterstützen Ermittlungen, bestätigen die Einhaltung von Datenschutzvorschriften und fördern betriebliche Transparenz. Ohne Auditing könnten bösartige Aktivitäten unentdeckt bleiben, bis erheblicher Schaden entstanden ist. Dies ist besonders wichtig in Branchen wie Finanzen, Gesundheitswesen und Verwaltung, wo Verstöße zu regulatorischen Strafen, Reputationsverlust und Betriebsstörungen führen können.
Native MongoDB Audit-Konfiguration (Enterprise)
Das native Auditing-System von MongoDB ist nur in MongoDB Enterprise und MongoDB Atlas verfügbar. Es erfasst Datenbankereignisse mithilfe flexibler Filter. Um das Auditing zu aktivieren, bearbeiten Sie die mongod.conf mit dem gewünschten Protokollziel, Ausgabeformat und Ereignisfiltern:
auditLog:
destination: file
format: BSON
path: /var/log/mongodb/auditLog.bson
filter: '{ atype: { $in: ["createCollection", "update", "insert", "remove"] } }'
Starten Sie MongoDB mit:
mongod --config /etc/mongod.conf
Konvertieren Sie BSON-Protokolle zur Analyse in JSON:
bsondump /var/log/mongodb/auditLog.bson > auditLog.json
Konfigurationsbeispiele
Starten Sie mit Kommandozeilenoptionen:
mongod \
--auditDestination file \
--auditFormat BSON \
--auditPath /var/log/mongodb/auditLog.bson \
--auditFilter '{ atype: { $in: ["insert","update","remove"] } }' \
--config /etc/mongod.conf
Senden Sie Audit-Ereignisse an syslog:
auditLog:
destination: syslog
format: JSON
systemLog:
destination: syslog
verbosity: 0
Filtern nach Namespace:
auditLog:
destination: file
format: JSON
path: /var/log/mongodb/audit.json
filter: '{ "param.ns": { $regex: "^sales\." }, atype: { $in: ["insert","update","remove"] } }'
Filtern von Admin-Aktionen eines Benutzers:
auditLog:
destination: file
format: JSON
path: /var/log/mongodb/audit-admin.json
filter: '{ "users.user": "admin", atype: { $in: ["createUser","updateUser","grantRolesToUser","dropUser","authCheck"] } }'
Beispiel für Atlas/Enterprise Ereignis:
{
"atype": "createUser",
"ts": { "$date": "2025-08-15T11:04:12.901Z" },
"local": { "ip": "127.0.0.1", "port": 27017 },
"remote": { "ip": "192.0.2.15", "port": 56024 },
"users": [{ "user": "admin", "db": "admin" }],
"param": { "db": "sales", "user": "reporter", "roles": [{ "role": "read", "db": "sales" }] },
"result": 0
}
Erweiterte Filterung ermöglicht das gezielte Ansprechen bestimmter Benutzer, Rollen oder Operationen. Für Laufzeitkonfiguration:
db.adminCommand({
setParameter: 1,
auditAuthorizationSuccess: true
})
Siehe MongoDB Audit-Log Dokumentation und Percona Audit-Logging-Leitfaden.
Echtzeitüberwachung
Das native Auditing dient oft der Nachbereitung nach einem Vorfall. Kombinieren Sie es mit Database Activity Monitoring, um verdächtige Aktionen sofort zu erkennen, riskante Abfragen zu blockieren und Warnungen über integrierte Kanäle zu senden.
DataSunrise erweitert das native Auditing mit zentralisiertem Multi-Datenbank-Support, anpassbaren Regeln und Echtzeitdurchsetzung. Setzen Sie es als Reverse Proxy ein, definieren Sie überwachte Aktionen, legen Sie Benachrichtigungen fest und aktivieren Sie die Überwachung.
Maskierung, Compliance und Entdeckung
Dynamische Maskierung verbirgt sensible Felder, ohne gespeicherte Daten zu verändern. Datenentdeckung durchsucht Sammlungen nach sensiblen Feldern und ermöglicht gezielte Audits. Für die Einhaltung von PCI DSS, SOX oder HIPAA ordnet DataSunrise Audit-Richtlinien den Vorschriften zu, erstellt Berichte und automatisiert die Zustellung.
Kombiniertes Beispiel
Ein Einzelhandelsunternehmen verwendet native Auditing, um Preisänderungen zu protokollieren, und DataSunrise, um übermäßige Änderungen zu blockieren, Lieferantendaten zu maskieren und Manager zu benachrichtigen. Halten Sie Filter spezifisch, um die Last zu reduzieren, sichern Sie Protokolle, automatisieren Sie Reviews mit SIEM, integrieren Sie die Bedrohungserkennung und testen Sie die Konfigurationen regelmäßig. Siehe MongoDB Audit-Handbuch und Atlas Sicherheitsdokumentation.
Funktionsvergleichstabelle
| Funktion | Native MongoDB Enterprise Audit | DataSunrise Audit |
|---|---|---|
| Verfügbarkeit | Nur Enterprise / Atlas | Unterstützt über 40 Datenbanken |
| Ereignisfilterung | Ja, über Konfiguration oder CLI | Ja, mit GUI und erweiterter Logik |
| Echtzeitwarnungen | Nein | Ja |
| Datenmaskierung | Nein | Dynamische & statische Maskierung |
| Datenentdeckung | Nein | Eingebaute Suche nach sensiblen Daten |
| Compliance-Zuordnung | Manuell | Automatisiert mit Compliance Manager |
| Integration | Syslog, Datei | Email, Slack, MS Teams, SIEM |
Fazit
Wer weiß, wie man MongoDB prüft, nutzt das Enterprise-Auditing für Details und DataSunrise zur Prävention, Maskierung und Automatisierung der Compliance. Zusammen bilden sie einen robusten, mehrschichtigen Ansatz für Datenbanksicherheit.