Passwort für MongoDB einrichten

Zum Absichern der Datenbank kann ein Passwort vergeben werden, mit folgender Anleitung:

Administrator Account erstellen
Dafür in die mongos Shell und Admin Datenbank wechseln


mongosh
use admin

Admin User anlegen


db.createUser(
{
user: "Admin",
pwd: "<passwort>",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)

Die Mongo Konfiguration anpassen


nano etc/mongod.conf

security:
authorization: "enabled"

Service neu starten


sudo service mongodb restart

Erneut in die Mongo Shell wechseln


mongo 'mongodb://admin:<passwort>@<ip>:27017/admin?authSource=admin&replicaSet=rs0'

Nutzer für die Enginsight Datenbank anlegen


db.createUser(
{
user: "test",
pwd: "test",
roles: [ { role: "readWrite", db: "enginsight" } ]
}
)

Beim Ausführen der ./setup.sh auf dem AppServer muss nun für die Mongo Connection folgender String genutzt werden


mongodb://test:test@<ip>:27017/enginsight?authSource=enginsight&replicaSet=rs0