Πώς να δημιουργήσετε χρήστη και να προσθέσετε ρόλο MongoDB

MongoDB Δημιουργία χρήστη διαχειριστή

Δημιουργία διαχειριστή χρήστη στο MongoDB γίνεται χρησιμοποιώντας τη μέθοδο createUser. Το παρακάτω παράδειγμα δείχνει πώς μπορεί να γίνει αυτό.

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

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

MongoDB Δημιουργία χρήστη διαχειριστή

Επεξήγηση κώδικα:

  1. Το πρώτο βήμα είναι να καθορίσετε το «όνομα χρήστη» και τον «κωδικό πρόσβασης» που πρέπει να δημιουργηθούν.
  2. Το δεύτερο βήμα είναι να εκχωρήσετε έναν ρόλο στον χρήστη. Δεδομένου ότι πρέπει να είναι διαχειριστής βάσης δεδομένων, οπότε έχουμε εκχωρήσει το ρόλο "userAdminAnyDatabase". Αυτός ο ρόλος επιτρέπει στο χρήστη να έχει δικαιώματα διαχειριστή σε όλες τις βάσεις δεδομένων MongoDB.
  3. Η παράμετρος db καθορίζει τη βάση δεδομένων διαχειριστή που είναι μια ειδική βάση δεδομένων Meta εντός MongoDB που περιέχει τις πληροφορίες για αυτόν τον χρήστη.

Εάν η εντολή εκτελεστεί με επιτυχία, θα εμφανιστεί η ακόλουθη έξοδος:

Παραγωγή:

MongoDB Δημιουργία χρήστη διαχειριστή

Η έξοδος δείχνει ότι δημιουργήθηκε ένας χρήστης που ονομάζεται "Guru99" και ότι ο χρήστης έχει δικαιώματα σε όλες τις βάσεις δεδομένων στο MongoDB.

MongoDB Δημιουργία χρήστη για ενιαία βάση δεδομένων

Για να δημιουργήσουμε έναν χρήστη που θα διαχειρίζεται μια ενιαία βάση δεδομένων, μπορούμε να χρησιμοποιήσουμε την ίδια εντολή όπως αναφέρθηκε παραπάνω, αλλά πρέπει να χρησιμοποιήσουμε μόνο την επιλογή «userAdmin».

Το ακόλουθο παράδειγμα δείχνει πώς μπορεί να γίνει αυτό.

MongoDB Δημιουργία χρήστη για ενιαία βάση δεδομένων

db.createUser(
{
	user: "Employeeadmin",

	pwd: "password",

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

Επεξήγηση κώδικα:

  1. Το πρώτο βήμα είναι να καθορίσετε το «όνομα χρήστη» και τον «κωδικό πρόσβασης» που πρέπει να δημιουργηθούν.
  2. Το δεύτερο βήμα είναι η ανάθεση ενός ρόλου στον χρήστη, ο οποίος σε αυτήν την περίπτωση, δεδομένου ότι πρέπει να είναι διαχειριστής βάσης δεδομένων, εκχωρείται στον ρόλο «userAdmin». Αυτός ο ρόλος επιτρέπει στο χρήστη να έχει δικαιώματα διαχειριστή μόνο στη βάση δεδομένων που καθορίζεται στην επιλογή db.
  3. Η παράμετρος db καθορίζει τη βάση δεδομένων στην οποία ο χρήστης πρέπει να έχει δικαιώματα διαχειριστή.

Εάν η εντολή εκτελεστεί με επιτυχία, θα εμφανιστεί η ακόλουθη έξοδος:

Παραγωγή:

MongoDB Δημιουργία χρήστη για ενιαία βάση δεδομένων

Η έξοδος δείχνει ότι δημιουργήθηκε ένας χρήστης που ονομάζεται "Employeeadmin" και ότι ο χρήστης έχει δικαιώματα μόνο στη βάση δεδομένων "Employee".

Διαχείριση χρηστών

Κατανοήστε πρώτα τους ρόλους που πρέπει να ορίσετε. Υπάρχει μια ολόκληρη λίστα ρόλων που διατίθενται σε MongoDB. Για παράδειγμα, υπάρχει ο "ρόλος ανάγνωσης" που επιτρέπει μόνο πρόσβαση μόνο για ανάγνωση σε βάσεις δεδομένων και, στη συνέχεια, υπάρχει ο ρόλος "ανάγνωσης" που παρέχει πρόσβαση ανάγνωσης και εγγραφής στη βάση δεδομένων, που σημαίνει ότι ο χρήστης μπορεί να εκδώσει το ένθετο, να διαγράψει και ενημέρωση εντολών σε συλλογές σε αυτήν τη βάση δεδομένων.

Διαχείριση χρηστών

db.createUser(
{
	user: "Mohan",

	pwd: "password",

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

Το παραπάνω απόσπασμα κώδικα δείχνει ότι δημιουργείται ένας χρήστης που ονομάζεται Mohan και του έχουν εκχωρηθεί πολλοί ρόλοι σε πολλές βάσεις δεδομένων. Στο παραπάνω παράδειγμα, του δίνεται άδεια μόνο για ανάγνωση στη βάση δεδομένων "Marketing" και άδεια ανάγνωσης εγγραφής στη βάση δεδομένων "Πωλήσεις".