sql >> Database >  >> NoSQL >> MongoDB

MongoDB:Server heeft opstartwaarschuwingen ''Toegangscontrole is niet ingeschakeld voor de database''

Mongodb v3.4

U moet het volgende doen om een ​​beveiligde database aan te maken:

Zorg ervoor dat de gebruiker die het proces start machtigingen heeft en dat de mappen bestaan ​​(/data/db in dit geval).

1) Start MongoDB zonder toegangscontrole.

mongod --port 27017 --dbpath /data/db

2) Maak verbinding met de instantie.

mongo --port 27017

3) Maak de gebruikersbeheerder (in de beheerdersauthenticatiedatabase) .

use admin
db.createUser(
  {
    user: "myUserAdmin",
    pwd: "abc123",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)

4) Start de MongoDB-instantie opnieuw met toegangscontrole.

mongod --auth --port 27017 --dbpath /data/db

5) Maak verbinding en authenticeer als de gebruikersbeheerder.

mongo --port 27017 -u "myUserAdmin" -p "abc123" --authenticationDatabase "admin"

6) Maak indien nodig extra gebruikers voor uw implementatie (bijv. in de testverificatiedatabase) .

use test
db.createUser(
  {
    user: "myTester",
    pwd: "xyz123",
    roles: [ { role: "readWrite", db: "test" },
             { role: "read", db: "reporting" } ]
  }
)

7) Maak verbinding en authenticeer als myTester.

mongo --port 27017 -u "myTester" -p "xyz123" --authenticationDatabase "test"

Ik heb zojuist de korte versie van de officiële documenten hier uitgelegd:https://docs.mongodb.com/master/tutorial/enable-authentication/



  1. MongoDB Security - Middelen om NoSQL DB's veilig te houden

  2. MongoDB, verwijder object uit array

  3. Hoe krijg ik alle openstaande taken in de laravel-wachtrij op redis?

  4. kan redis-server op linux niet doden