Cum se creează un utilizator și se adaugă un rol în MongoDB

MongoDB Creați utilizator administrator

Crearea unui administrator de utilizator în MongoDB se realizează prin utilizarea metodei createUser. Următorul exemplu arată cum se poate face acest lucru.

db.createUser(
{	user: "Guru99",
	pwd: "password",

	roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})

MongoDB Creați utilizator administrator

Explicația codului:

  1. Primul pas este să specificați „numele de utilizator” și „parola” care trebuie create.
  2. Al doilea pas este atribuirea unui 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.
  3. Parametrul db specifică baza de date admin care este o bază de date meta specială 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:

MongoDB Creați utilizator administrator

Rezultatul arată că un utilizator numit „Guru99” a fost creat și acel utilizator are privilegii asupra tuturor bazelor de date din MongoDB.

MongoDB Creați utilizator pentru o bază de date unică

Pentru a crea un utilizator care va gestiona o singură bază de date, putem folosi aceeași comandă ca cea menționată mai sus, dar trebuie să folosim doar opțiunea „userAdmin”.

Următorul exemplu arată cum se poate face acest lucru;

MongoDB Creați utilizator pentru o bază de date unică

db.createUser(
{
	user: "Employeeadmin",

	pwd: "password",

	roles:[{role: "userAdmin" , db:"Employee"}]})

Explicația codului:

  1. Primul pas este să specificați „numele de utilizator” și „parola” care trebuie create.
  2. Al doilea pas este alocarea unui rol pentru utilizator, care în acest caz, deoarece trebuie să fie un administrator de bază de date, este atribuit rolului „userAdmin”. Acest rol permite utilizatorului să aibă privilegii administrative numai pentru baza de date specificată în opțiunea db.
  3. 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:

MongoDB Creați utilizator pentru o bază de date unică

Rezultatul arată că un utilizator numit „Employeeadmin” a fost creat și acel utilizator are privilegii numai pe baza de date „Angajat”.

Gestionarea utilizatorilor

Mai întâi înțelegeți rolurile pe care trebuie să le definiți. Există o listă întreagă de roluri disponibile în MongoDB. De exemplu, există „rolul de citire” care permite doar accesul numai în citire la bazele de date și apoi există rolul „citire scriere” care oferă acces de citire și scriere la baza de date, ceea ce înseamnă că utilizatorul poate emite inserarea, ștergerea și comenzi de actualizare pentru colecțiile din acea bază de date.

Gestionarea utilizatorilor

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 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 citire pentru baza de date „Vânzări”.