Immer wieder liest man von Sicherheitsproblemen bei Datenbanken.
Schaut man einmal hinter die Überschriften, so kommt oft eine Mißkonfiguration oder ein Betrieb abseits von Best Practices als Ursache zutage. Deshalb hier mal die wichtigsten Punkte zum Betrieb einer MongoDB Installation in einer Live-Umgebung!
- MongoDB sollte immer in vertrauensvollen Umgebungen gehostet werden, die den Zugriff über Netzwerkregeln steuert
- Authentifizierungsmechanismen der MongoDB nutzen (administrative Benutzer, normale Benutzer, read-only User, Key-File-Authentifizierung)
- IP basierte Zugriffsberechtigungen nutzen
Um die Authentifizierung von MongoDB zu nutzen muß die Datenbank mit dem Parameter "auth" gestartet werden. Man sollte beachten, daß man einen administrativen Benutzer anlegt, bevor man die Datenbank mit dem "auth" Parameter startet. Hat man die Datenbank bereits gestartet und noch keinen administrativen Benutzer angelegt, so kann man nur über eine Verbindung auf "localhost" einen administrativen Benutzer hinzufügen.
In einem Sharded Cluster muß in jedem Fall zuerst ein administrativer Benutzer angelegt werden. Erst danach darf der Cluster, unter Verwendung von KeyFiles für die Kommunikation zwischen den Nodes, neu gestartet werden. Die Verwendung von KeyFiles, für die Kommunikation zwischen MongoDB Nodes, hat einerseits den Vorteil daß die Kommunikation verschlüsselt erfolgt, auf der anderen Seite kann man mit unterschiedlichen KeyFiles auch dafür sorgen, daß nicht versehentlich falsche Nodes zusammengeschalten werden.
Mehr zum Thema MongoDB Administration und Sicherheit bei MongoDB Installationen gibt es in den Qualiero Classroom Trainings zum Thema MongoDB
MongoDB Administrator-Kurs
https://www.qualiero.com/lerninhalte/classroom-trainings/mongodb-administrator-kurs.html
MongoDB für Sharded Cluster Administrator-Kurs
https://www.qualiero.com/lerninhalte/classroom-trainings/mongodb-fuer-sharded-cluster-administrator-kurs.html
MongoDB Administrator-Kompaktkurs
https://www.qualiero.com/lerninhalte/classroom-trainings/mongodb-administrator-kompaktkurs.html