MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

MongoDB:imposta utente/password per accedere al db

Dal tuo commento dici che stai usando mViewer. La versione 0.9.1 di mViewer non supporta l'autenticazione. Secondo questo problema su mViewer GitHub, il problema è stato risolto nella versione 0.9.2, che doveva essere rilasciata a ottobre

Prima di avviare il nodo con l'autenticazione, accedere al nodo e aggiungere un utente. Quindi avvia il nodo con --auth e connettiti alla shell senza mViewer.

A questo punto puoi connetterti al database admin e autenticare il tuo utente admin:

use admin
db.auth('root', 'root')

Poiché hai configurato un utente amministratore, che avrà accesso a tutti i database, devi autenticarti sul database admin. Una volta fatto questo avrai accesso a tutti i database. Potrai anche creare nuovi utenti su qualsiasi database o creare nuovi utenti di sola lettura per tutti i database.

Se crei un nuovo utente che ha accesso a un solo database, quell'utente dovrà use quel database e db.auth(name, pass) contro di essa.

Se crei un nuovo utente che ha accesso in sola lettura a tutti i database, use admin e poi db.auth(name, pass) per ottenere l'accesso in sola lettura a tutti i database

Puoi trovare ulteriori informazioni sulla configurazione dell'autenticazione qui e ulteriori informazioni sulla configurazione degli utenti qui

Nota:quando avvii un nodo senza --auth quindi nessuna autenticazione è abilitata. Ciò significa che puoi connetterti con la shell e db.auth('root','root') ma non farà nulla per quanto riguarda l'accesso. MongoDB non negherà l'accesso ai database senza --auth opzione della riga di comando (--keyFile in configurazioni partizionate o set di repliche)