sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB:ställ in användare/lösenord för åtkomst till db

Från din kommentar nämner du att du använder mViewer. Version 0.9.1 av mViewer stöder inte autentisering. Enligt det här problemet på mViewer GitHub, är detta löst i version 0.9.2, som planerades att släppas i oktober.

Innan du startar noden med autentisering, logga in på noden och lägg till en användare. Starta sedan noden med --auth och anslut till skalet utan mViewer.

Vid det här laget kan du ansluta till administratörsdatabasen och autentisera din administratörsanvändare:

use admin
db.auth('root', 'root')

Eftersom du konfigurerar en administratörsanvändare, som kommer att ha tillgång till alla databaser, måste du autentisera mot administratörsdatabasen. När du har gjort detta har du tillgång till alla databaser. Du kommer också att kunna skapa nya användare på vilken databas som helst, eller skapa nya skrivskyddade användare för alla databaser.

Om du skapar en ny användare som bara har tillgång till en databas, måste den användaren use den databasen och db.auth(name, pass) emot det.

Om du skapar en ny användare som har skrivskyddad åtkomst till alla databaser, skulle de use admin och sedan db.auth(name, pass) för att få sin skrivskyddade åtkomst till alla databaser

Du kan hitta mer information om hur du ställer in autentisering här och mer information om hur du ställer in användare här a>

Obs! När du startar en nod utan --auth då är ingen autentisering aktiverad. Det betyder att du kan ansluta med skalet och db.auth('root','root') men det kommer inte att göra något när det gäller åtkomst. MongoDB kommer inte att neka åtkomst till databaserna utan --auth kommandoradsalternativ (--keyFile i delade uppsättningar eller replikuppsättningar)




  1. Bästa sättet att ansluta till MongoDB med Node.js

  2. MongoDB Multiple Masters i ReplicaSet

  3. MongoDB $millisekund

  4. MongoDB Hämtar långsamt dokument (indexering används)