Kā izveidot lietotāju & pievienot lomu MongoDB

Satura rādītājs:

Anonim

MongoDB Izveidot administratora lietotāju

Lietotāja administratora izveide MongoDB tiek veikta, izmantojot metodi createUser. Šis piemērs parāda, kā to var izdarīt.

db.createUser({ user: "Guru99",pwd: "password",roles:[{role: "userAdminAnyDatabase" , db:"admin"}]})

Koda skaidrojums:

  1. Vispirms ir jānorāda "lietotājvārds" un "parole", kas jāizveido.
  2. Otrais solis ir piešķirt lietotājam lomu. Tā kā tam jābūt datu bāzes administratoram, tādā gadījumā mēs esam piešķīruši lomu "userAdminAnyDatabase". Šī loma ļauj lietotājam piešķirt administratīvās privilēģijas visām MongoDB datu bāzēm.
  3. Parametrs db norāda administratora datu bāzi, kas ir īpaša Meta datu bāze MongoDB, kurā glabājas šī lietotāja informācija.

Ja komanda tiek veiksmīgi izpildīta, tiks parādīta šāda izeja:

Izeja:

Rezultāts parāda, ka tika izveidots lietotājs ar nosaukumu "Guru99" un šim lietotājam ir privilēģijas visām MongoDB datu bāzēm.

MongoDB Izveidot lietotāju vienotai datu bāzei

Lai izveidotu lietotāju, kurš pārvaldīs vienu datu bāzi, mēs varam izmantot to pašu komandu, kas minēta iepriekš, bet mums jāizmanto tikai opcija "userAdmin".

Šis piemērs parāda, kā to var izdarīt;

db.createUser({user: "Employeeadmin",pwd: "password",roles:[{role: "userAdmin" , db:"Employee"}]})

Koda skaidrojums:

  1. Vispirms ir jānorāda "lietotājvārds" un "parole", kas jāizveido.
  2. Otrais solis ir piešķirt lietotājam lomu, kas šajā gadījumā ir jāpiešķir lomai "userAdmin", jo tam ir jābūt datu bāzes administratoram. Šī loma ļauj lietotājam būt administratīvām tiesībām tikai uz datubāzi, kas norādīta opcijā db.
  3. Parametrs db norāda datubāzi, kurā lietotājam jābūt administratora tiesībām.

Ja komanda tiek veiksmīgi izpildīta, tiks parādīta šāda izeja:

Izeja:

Rezultāts parāda, ka tika izveidots lietotājs ar nosaukumu "Employeeadmin" un šim lietotājam ir privilēģijas tikai datu bāzē "Employee".

Lietotāju pārvaldība

Vispirms izprotiet lomas, kas jums jānosaka. MongoDB ir pieejams visu lomu saraksts. Piemēram, ir "lasīšanas loma", kas ļauj tikai lasīt piekļuvi datu bāzēm, un pēc tam ir loma "lasīt rakstīt", kas nodrošina lasīšanas un rakstīšanas piekļuvi datu bāzei, kas nozīmē, ka lietotājs var izdot ievietojumu, dzēst un atjaunināt komandas šajā datu bāzē esošajām kolekcijām.

db.createUser({user: "Mohan",pwd: "password",roles:[{role: "read" , db:"Marketing"},role: "readWrite" , db:"Sales"}}]})

Iepriekš minētais koda fragments parāda, ka ir izveidots lietotājs Mohan, un viņam tiek piešķirtas vairākas lomas vairākās datu bāzēs. Iepriekš minētajā piemērā viņam tiek dota tikai lasīšanas atļauja datu bāzei "Mārketings" un lasīšanas un rakstīšanas atļauja datu bāzei "Pārdošana".