Kako stvoriti korisnika i dodati ulogu MongoDB

MongoDB Stvorite korisnika administratora

Stvaranje korisničkog administratora u MongoDB radi se pomoću metode createUser. Sljedeći primjer pokazuje kako se to može učiniti.

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

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

MongoDB Stvorite korisnika administratora

Objašnjenje koda:

  1. Prvi korak je određivanje "korisničkog imena" i "lozinke" koje je potrebno izraditi.
  2. Drugi korak je dodjeljivanje uloge za korisnika. Budući da to mora biti administrator baze podataka, u tom smo slučaju dodijelili ulogu "userAdminAnyDatabase". Ova uloga omogućuje korisniku da ima administrativne ovlasti za sve baze podataka u MongoDB.
  3. Parametar db navodi administratorsku bazu podataka koja je unutar nje posebna meta baza podataka MongoDB koji sadrži podatke za ovog korisnika.

Ako je naredba uspješno izvršena, prikazat će se sljedeći izlaz:

Izlaz:

MongoDB Stvorite korisnika administratora

Izlaz pokazuje da je kreiran korisnik pod nazivom "Guru99" i da taj korisnik ima privilegije nad svim bazama podataka u MongoDB.

MongoDB Stvorite korisnika za jednu bazu podataka

Za kreiranje korisnika koji će upravljati jednom bazom podataka, možemo koristiti istu naredbu kao što je gore spomenuto, ali moramo koristiti samo opciju “userAdmin”.

Sljedeći primjer pokazuje kako se to može učiniti;

MongoDB Stvorite korisnika za jednu bazu podataka

db.createUser(
{
	user: "Employeeadmin",

	pwd: "password",

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

Objašnjenje koda:

  1. Prvi korak je određivanje "korisničkog imena" i "lozinke" koje je potrebno izraditi.
  2. Drugi korak je dodjeljivanje uloge za korisnika koja je u ovom slučaju budući da mora biti administrator baze podataka dodijeljena ulozi "userAdmin". Ova uloga omogućuje korisniku da ima administrativne ovlasti samo za bazu podataka navedenu u opciji db.
  3. Parametar db navodi bazu podataka za koju korisnik treba imati administrativne ovlasti.

Ako je naredba uspješno izvršena, prikazat će se sljedeći izlaz:

Izlaz:

MongoDB Stvorite korisnika za jednu bazu podataka

Izlaz pokazuje da je kreiran korisnik pod nazivom "Employeeadmin" i da taj korisnik ima privilegije samo na bazi podataka "Employee".

Upravljanje korisnicima

Prvo shvatite uloge koje trebate definirati. Dostupan je cijeli popis uloga MongoDB. Na primjer, postoji "uloga za čitanje" koja dopušta samo pristup samo za čitanje bazama podataka, a zatim postoji uloga "čitanje i pisanje" koja omogućuje pristup za čitanje i pisanje u bazi podataka, što znači da korisnik može izdati umetanje, brisanje i naredbe za ažuriranje kolekcija u toj bazi podataka.

Upravljanje korisnicima

db.createUser(
{
	user: "Mohan",

	pwd: "password",

	roles:[
	{
		role: "read" , db:"Marketing"},
    {
		role: "readWrite" , db:"Sales"}
	}
		  ]
})

Gornji isječak koda pokazuje da je kreiran korisnik pod imenom Mohan i da mu je dodijeljeno više uloga u više baza podataka. U gornjem primjeru, on ima dozvolu samo za čitanje baze podataka "Marketing" i dozvolu za čitanje i pisanje za bazu podataka "Prodaja".