In uw opmerking vermeldt u dat u mViewer gebruikt. Versie 0.9.1 van mViewer ondersteunt geen authenticatie. Volgens dit probleem op de mViewer GitHub is dit opgelost in versie 0.9.2, die bedoeld was voor release in oktober.
Voordat u het knooppunt start met authenticatie, meldt u zich aan bij het knooppunt en voegt u een gebruiker toe. Start vervolgens het knooppunt met --auth
en maak verbinding met de shell zonder mViewer.
Op dit punt kunt u verbinding maken met de beheerdersdatabase en uw beheerdersgebruiker authenticeren:
use admin
db.auth('root', 'root')
Aangezien u een admin-gebruiker instelt, die toegang heeft tot alle databases, moet u zich verifiëren bij de admin-database. Zodra u dit heeft gedaan, heeft u toegang tot alle databases. U kunt ook nieuwe gebruikers maken voor elke database, of nieuwe alleen-lezen gebruikers maken voor alle databases.
Als u een nieuwe gebruiker aanmaakt die toegang heeft tot slechts één database, moet die gebruiker use
die database en db.auth(name, pass)
ertegen.
Als u een nieuwe gebruiker aanmaakt die alleen-lezen toegang heeft tot alle databases, zou deze use admin
en dan db.auth(name, pass)
om hun alleen-lezen toegang tot alle databases te krijgen
Meer informatie over het instellen van authenticatie vindt u hier en meer informatie over het instellen van gebruikers hier
Opmerking:wanneer u een knooppunt start zonder --auth
dan is er geen authenticatie ingeschakeld. Dit betekent dat u verbinding kunt maken met de shell en db.auth('root','root')
maar het zal niets doen voor zover het toegang betreft. MongoDB zal de toegang tot de databases niet weigeren zonder --auth
opdrachtregeloptie (--keyFile
in shard-opstellingen of replicasets)