MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB:defina usuário/senha para acessar db


No seu comentário, você menciona que está usando o mViewer. A versão 0.9.1 do mViewer não suporta autenticação. De acordo com este problema no mViewer GitHub, isso é resolvido na versão 0.9.2, que foi lançada em outubro.

Antes de iniciar o nó com autenticação, faça logon no nó e adicione um usuário. Em seguida, inicie o nó com --auth e conecte-se ao shell sem mViewer.

Neste ponto, você pode se conectar ao banco de dados admin e autenticar seu usuário admin:
use admin
db.auth('root', 'root')

Como você configurou um usuário admin, que terá acesso a todos os bancos de dados, você precisa se autenticar no banco de dados admin. Depois de ter feito isso, você terá acesso a todos os bancos de dados. Você também poderá criar novos usuários em qualquer banco de dados ou criar novos usuários somente leitura para todos os bancos de dados.

Se você criar um novo usuário que tenha acesso a apenas um banco de dados, esse usuário precisará use esse banco de dados e db.auth(name, pass) contra isso.

Se você criar um novo usuário que tenha acesso somente leitura a todos os bancos de dados, eles use admin e então db.auth(name, pass) para obter seu acesso somente leitura a todos os bancos de dados

Você pode encontrar mais informações sobre como configurar a autenticação aqui e mais informações sobre como configurar usuários aqui

Nota:Quando você inicia um nó sem --auth então nenhuma autenticação é habilitada. Isso significa que você pode se conectar com o shell e db.auth('root','root') mas não fará nada no que diz respeito ao acesso. MongoDB não negará acesso aos bancos de dados sem --auth opção de linha de comando (--keyFile em configurações fragmentadas ou conjuntos de réplicas)