Mongodb v3.4
Du måste göra följande för att skapa en säker databas:
Se till att användaren som startar processen har behörigheter och att katalogerna finns (/data/db
i det här fallet).
1) Starta MongoDB utan åtkomstkontroll.
mongod --port 27017 --dbpath /data/db
2) Anslut till instansen.
mongo --port 27017
3) Skapa användaradministratören (i admin-autentiseringsdatabasen) .
use admin
db.createUser(
{
user: "myUserAdmin",
pwd: "abc123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
4) Starta om MongoDB-instansen med åtkomstkontroll.
mongod --auth --port 27017 --dbpath /data/db
5) Anslut och autentisera som användaradministratör.
mongo --port 27017 -u "myUserAdmin" -p "abc123" --authenticationDatabase "admin"
6) Skapa ytterligare användare efter behov för din implementering (t.ex. i testautentiseringsdatabasen) .
use test
db.createUser(
{
user: "myTester",
pwd: "xyz123",
roles: [ { role: "readWrite", db: "test" },
{ role: "read", db: "reporting" } ]
}
)
7) Anslut och autentisera som myTester.
mongo --port 27017 -u "myTester" -p "xyz123" --authenticationDatabase "test"
Jag förklarade i princip bara den korta versionen av de officiella dokumenten här:https://docs.mongodb.com/master/tutorial/enable-authentication/