„MongoDB Create Administrator User“
Vartotojo administratorius sukuriamas „MongoDB“ naudojant „createUser“ metodą. Šis pavyzdys parodo, kaip tai galima padaryti.
db.createUser({ user: "Guru99",pwd: "password",roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})
Kodo paaiškinimas:
- Pirmiausia reikia nurodyti „vartotojo vardą“ ir „slaptažodį“, kuriuos reikia sukurti.
- Antras žingsnis - priskirti vaidmenį vartotojui. Kadangi tai turi būti duomenų bazės administratorius, tokiu atveju mes priskyrėme vaidmenį „userAdminAnyDatabase“. Šis vaidmuo leidžia vartotojui turėti visų MongoDB duomenų bazių administratoriaus teises.
- Parametras db nurodo administratoriaus duomenų bazę, kuri yra speciali MongoDB „Meta“ duomenų bazė, kurioje laikoma šio vartotojo informacija.
Jei komanda sėkmingai vykdoma, bus rodoma ši išvestis:
Išvestis:
Išvestis rodo, kad buvo sukurtas vartotojas, vadinamas „Guru99“, ir kad vartotojas turi privilegijas visoms „MongoDB“ duomenų bazėms.
„MongoDB“ sukurkite vartotoją vienai duomenų bazei
Norėdami sukurti vartotoją, kuris tvarkys vieną duomenų bazę, galime naudoti tą pačią komandą, kaip minėta aukščiau, tačiau turime naudoti tik „userAdmin“ parinktį.
Šis pavyzdys parodo, kaip tai galima padaryti;
db.createUser({user: "Employeeadmin",pwd: "password",roles:[{role: "userAdmin" , db:"Employee"}]})
Kodo paaiškinimas:
- Pirmiausia reikia nurodyti „vartotojo vardą“ ir „slaptažodį“, kuriuos reikia sukurti.
- Antras žingsnis yra priskirti vartotojui vaidmenį, kuris šiuo atveju, nes jis turi būti duomenų bazės administratorius, yra priskirtas vaidmeniui „userAdmin“. Šis vaidmuo leidžia vartotojui turėti administratoriaus teises tik į db parinktyje nurodytą duomenų bazę.
- Parametras db nurodo duomenų bazę, kurioje vartotojui turėtų būti suteiktos administratoriaus teisės.
Jei komanda sėkmingai vykdoma, bus rodoma ši išvestis:
Išvestis:
Išvestis rodo, kad buvo sukurtas vartotojas, vadinamas „Employeeadmin“, ir kad vartotojas turi privilegijas tik duomenų bazėje „Employee“.
Vartotojų valdymas
Pirmiausia supraskite vaidmenis, kuriuos turite apibrėžti. „MongoDB“ yra visas vaidmenų sąrašas. Pavyzdžiui, yra „skaitymo vaidmuo“, leidžiantis tik skaityti prieigą prie duomenų bazių, tada yra „skaitymo rašymas“, suteikiantis skaitymo ir rašymo prieigą prie duomenų bazės, o tai reiškia, kad vartotojas gali išduoti įterpimą, ištrinti ir įrašyti atnaujinti komandos rinkinius toje duomenų bazėje.
db.createUser({user: "Mohan",pwd: "password",roles:[{role: "read" , db:"Marketing"},role: "readWrite" , db:"Sales"}}]})
Pirmiau pateiktas kodo fragmentas rodo, kad sukurtas vartotojas, vadinamas Mohanu, ir jam priskiriami keli vaidmenys keliose duomenų bazėse. Ankstesniame pavyzdyje jam suteikiamas tik skaitymo leidimas „Rinkodaros“ duomenų bazei ir „ReadWrite“ leidimas duomenų bazės „Pardavimai“.