MongoDB Create Administrator User
Crearea unui administrator de utilizator în MongoDB se face folosind metoda createUser. Următorul exemplu arată cum se poate face acest lucru.
db.createUser({ user: "Guru99",pwd: "password",roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})
Explicatie cod:
- Primul pas este să specificați „numele de utilizator” și „parola” care trebuie create.
- Al doilea pas este de a atribui un rol utilizatorului. Deoarece trebuie să fie un administrator de bază de date, caz în care am atribuit rolul „userAdminAnyDatabase”. Acest rol permite utilizatorului să aibă privilegii administrative pentru toate bazele de date din MongoDB.
- Parametrul db specifică baza de date de administrare care este o bază de date Meta specială din MongoDB care deține informațiile pentru acest utilizator.
Dacă comanda este executată cu succes, va fi afișată următoarea ieșire:
Ieșire:
Rezultatul arată că a fost creat un utilizator numit „Guru99” și că utilizatorul are privilegii asupra tuturor bazelor de date din MongoDB.
MongoDB Creați utilizator pentru o singură bază de date
Pentru a crea un utilizator care va gestiona o singură bază de date, putem folosi aceeași comandă menționată mai sus, dar trebuie să folosim numai opțiunea „userAdmin”.
Următorul exemplu arată cum se poate face acest lucru;
db.createUser({user: "Employeeadmin",pwd: "password",roles:[{role: "userAdmin" , db:"Employee"}]})
Explicatie cod:
- Primul pas este să specificați „numele de utilizator” și „parola” care trebuie create.
- Al doilea pas este de a atribui un rol utilizatorului care, în acest caz, deoarece trebuie să fie administrator de baze de date, este atribuit rolului „userAdmin”. Acest rol permite utilizatorului să aibă privilegii administrative numai pentru baza de date specificată în opțiunea db.
- Parametrul db specifică baza de date pe care utilizatorul ar trebui să aibă privilegii administrative.
Dacă comanda este executată cu succes, va fi afișată următoarea ieșire:
Ieșire:
Rezultatul arată că a fost creat un utilizator numit „Employeeadmin” și că utilizatorul are privilegii numai în baza de date „Employee”.
Gestionarea utilizatorilor
Înțelegeți mai întâi rolurile pe care trebuie să le definiți. Există o listă întreagă de roluri disponibile în MongoDB. De exemplu, există un „rol de citire” care permite accesul numai la citire la baze de date și apoi există rolul „readwrite” care oferă acces de citire și scriere la baza de date, ceea ce înseamnă că utilizatorul poate emite inserarea, ștergerea și actualizați comenzile pentru colecțiile din baza de date respectivă.
db.createUser({user: "Mohan",pwd: "password",roles:[{role: "read" , db:"Marketing"},role: "readWrite" , db:"Sales"}}]})
Fragmentul de cod de mai sus arată că este creat un utilizator numit Mohan și căruia i se atribuie mai multe roluri în mai multe baze de date. În exemplul de mai sus, i se acordă permisiunea de citire numai pentru baza de date „Marketing” și permisiunea de readWrite pentru baza de date „Vânzări”.