sql >> Base de Datos >  >> NoSQL >> MongoDB

MongoDB:establecer usuario/contraseña para acceder a db

De su comentario menciona que está usando mViewer. La versión 0.9.1 de mViewer no admite la autenticación. Según este problema en mViewer GitHub, esto se resolvió en la versión 0.9.2, cuyo lanzamiento estaba previsto para octubre.

Antes de iniciar el nodo con autenticación, inicie sesión en el nodo y agregue un usuario. Luego inicie el nodo con --auth y conéctese al shell sin mViewer.

En este punto, puede conectarse a la base de datos de administración y autenticar a su usuario administrador:

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

Dado que configuró un usuario administrador, que tendrá acceso a todas las bases de datos, debe autenticarse en la base de datos administrativa. Una vez hecho esto, tendrá acceso a todas las bases de datos. También podrá crear nuevos usuarios en cualquier base de datos o crear nuevos usuarios de solo lectura para todas las bases de datos.

Si crea un nuevo usuario que tiene acceso a una sola base de datos, ese usuario deberá use esa base de datos y db.auth(name, pass) en contra.

Si crea un nuevo usuario que tiene acceso de solo lectura a todas las bases de datos, use admin y luego db.auth(name, pass) para obtener su acceso de solo lectura a todas las bases de datos

Puede encontrar más información sobre cómo configurar la autenticación aquí y más información sobre cómo configurar usuarios aquí

Nota:cuando inicia un nodo sin --auth entonces no se habilita la autenticación. Esto significa que puede conectarse con el shell y db.auth('root','root') pero no hará nada en lo que respecta al acceso. MongoDB no denegará el acceso a las bases de datos sin --auth opción de línea de comando (--keyFile en configuraciones fragmentadas o conjuntos de réplicas)