MongoDB Skapa administratörsanvändare
Skapa en användaradministratör i MongoDB görs med hjälp av metoden createUser. Följande exempel visar hur detta kan göras.
db.createUser({ user: "Guru99",pwd: "password",roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})
Kodförklaring:
- Det första steget är att ange "användarnamn" och "lösenord" som måste skapas.
- Det andra steget är att tilldela en roll för användaren. Eftersom det måste vara en databasadministratör, har vi tilldelats rollen "userAdminAnyDatabase". Denna roll tillåter användaren att ha administrativa behörigheter till alla databaser i MongoDB.
- Parametern db anger administratörsdatabasen som är en speciell Metadatabas inom MongoDB som innehåller informationen för den här användaren.
Om kommandot utförs framgångsrikt visas följande utdata:
Produktion:
Utdata visar att en användare som heter "Guru99" skapades och att användaren har behörighet över alla databaser i MongoDB.
MongoDB Skapa användare för en enda databas
För att skapa en användare som kommer att hantera en enda databas kan vi använda samma kommando som nämnts ovan, men vi behöver bara använda alternativet "userAdmin".
Följande exempel visar hur detta kan göras;
db.createUser({user: "Employeeadmin",pwd: "password",roles:[{role: "userAdmin" , db:"Employee"}]})
Kodförklaring:
- Det första steget är att ange "användarnamn" och "lösenord" som måste skapas.
- Det andra steget är att tilldela en roll för användaren som i det här fallet eftersom den måste vara en databasadministratör tilldelas rollen "userAdmin". Denna roll tillåter användaren att endast ha administratörsbehörighet till den databas som anges i db-alternativet.
- Parametern db anger databasen som användaren ska ha administrativa behörigheter för.
Om kommandot utförs framgångsrikt visas följande utdata:
Produktion:
Utdata visar att en användare som heter "Employeeadmin" skapades och att användaren bara har behörigheter i databasen "Anställd".
Hantera användare
Förstå först vilka roller du behöver definiera. Det finns en hel lista med roller tillgängliga i MongoDB. Det finns till exempel en "läsroll" som endast tillåter skrivskyddad åtkomst till databaser och sedan finns det "lässkrivningsrollen" som ger läs- och skrivåtkomst till databasen, vilket innebär att användaren kan utfoga insättningen, radera och uppdatera kommandon för samlingar i den databasen.
db.createUser({user: "Mohan",pwd: "password",roles:[{role: "read" , db:"Marketing"},role: "readWrite" , db:"Sales"}}]})
Ovanstående kodavsnitt visar att en användare som heter Mohan skapas och att han tilldelas flera roller i flera databaser. I exemplet ovan får han skrivskyddad behörighet till databasen "Marketing" och readWrite-behörighet till "Sales" -databasen.