MongoDB Stvori administratora
Stvaranje korisničkog administratora u MongoDB vrši se metodom createUser. Sljedeći primjer pokazuje kako se to može učiniti.
db.createUser({ user: "Guru99",pwd: "password",roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})
Objašnjenje koda:
- Prvi korak je navođenje "korisničkog imena" i "lozinke" koje treba stvoriti.
- Drugi je korak dodijeliti ulogu korisniku. 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 privilegije za sve baze podataka u MongoDB-u.
- Parametar db specificira administrativnu bazu podataka koja je posebna Meta baza podataka u MongoDB koja sadrži informacije za ovog korisnika.
Ako se naredba uspješno izvrši, prikazat će se sljedeći izlaz:
Izlaz:
Izlaz pokazuje da je stvoren korisnik pod nazivom "Guru99" i da taj korisnik ima privilegije nad svim bazama podataka u MongoDB-u.
MongoDB Stvori korisnika za jednu bazu podataka
Da bismo stvorili korisnika koji će upravljati jednom bazom podataka, možemo koristiti istu naredbu kao što je gore spomenuto, ali trebamo koristiti samo opciju "userAdmin".
Sljedeći primjer pokazuje kako se to može učiniti;
db.createUser({user: "Employeeadmin",pwd: "password",roles:[{role: "userAdmin" , db:"Employee"}]})
Objašnjenje koda:
- Prvi korak je navođenje "korisničkog imena" i "lozinke" koje treba stvoriti.
- Drugi je korak dodijeliti ulogu korisniku koja je u ovom slučaju budući da mora biti administrator baze podataka dodijeljena ulozi "userAdmin". Ova uloga omogućava korisniku da ima administrativne privilegije samo za bazu podataka navedenu u db opciji.
- Parametar db navodi bazu podataka na koju bi korisnik trebao imati administratorske privilegije.
Ako se naredba uspješno izvrši, prikazat će se sljedeći izlaz:
Izlaz:
Izlaz pokazuje da je stvoren korisnik pod nazivom "Employeeadmin" i da taj korisnik ima privilegije samo u bazi podataka "Employee".
Upravljanje korisnicima
Prvo shvatite uloge koje trebate definirati. U MongoDB-u je dostupan čitav popis uloga. Na primjer, postoji "uloga za čitanje" koja omogućuje samo pristup samo za čitanje baza podataka, a tu je i uloga "za čitanje" koja pruža pristup za čitanje i pisanje u bazu podataka, što znači da korisnik može izdati umetanje, brisanje i ažurirati naredbe na zbirkama u toj bazi podataka.
db.createUser({user: "Mohan",pwd: "password",roles:[{role: "read" , db:"Marketing"},role: "readWrite" , db:"Sales"}}]})
Gornji isječak koda pokazuje da je stvoren korisnik koji se zove Mohan i dodijeljeno mu je više uloga u više baza podataka. U gornjem primjeru daje mu dopuštenje samo za čitanje baze podataka "Marketing" i dopuštenje readWrite za bazu podataka "Prodaja".