Mongodb v3.4
Chcete-li vytvořit zabezpečenou databázi, musíte provést následující:
Ujistěte se, že uživatel spouštějící proces má oprávnění a že adresáře existují (/data/db
v tomto případě).
1) Spusťte MongoDB bez řízení přístupu.
mongod --port 27017 --dbpath /data/db
2) Připojte se k instanci.
mongo --port 27017
3) Vytvořte administrátora uživatelů (v autentizační databázi administrátora) .
use admin
db.createUser(
{
user: "myUserAdmin",
pwd: "abc123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
4) Restartujte instanci MongoDB s řízením přístupu.
mongod --auth --port 27017 --dbpath /data/db
5) Připojte se a ověřte se jako správce uživatele.
mongo --port 27017 -u "myUserAdmin" -p "abc123" --authenticationDatabase "admin"
6) Vytvořte další uživatele podle potřeby pro vaše nasazení (např. v testovací ověřovací databázi) .
use test
db.createUser(
{
user: "myTester",
pwd: "xyz123",
roles: [ { role: "readWrite", db: "test" },
{ role: "read", db: "reporting" } ]
}
)
7) Připojte se a ověřte jako myTester.
mongo --port 27017 -u "myTester" -p "xyz123" --authenticationDatabase "test"
V podstatě jsem jen vysvětlil krátkou verzi oficiálních dokumentů zde:https://docs.mongodb.com/master/tutorial/enable-authentication/