Estou usando esta conexão uri para conectar ao mongodb: mongodb://user:password@localhost/admin
. Ele usará admin
como autenticação de bot e banco de dados de destino. Como posso fazer o uri usar admin
como autenticação, mas permitir que eu me conecte a um banco de dados diferente? Por favor, veja o comando abaixo como um exemplo:
mongo --host localhost -u user -p password --authentication admin test
o comando acima usará admin
como banco de dados de autenticação, mas se conectará ao test
banco de dados. como posso fazer a mesma coisa em uri?
Sim.. Facilmente!
Você coloca seu banco de dados de destino no final da string "base" e adiciona o banco de dados de autenticação ao parâmetro authSource
Ref.:
https://docs.mongodb.com/manual/reference/connection-string/#connections-connection-options
Você precisará usar o formato abaixo e não precisa usar o banco de dados admin.
mongodb://user:password@localhost/test?authSource=admin
Certifique-se de ter um usuário no
test
banco de dados. Consulte a seção 6 deste documento.Ativar autenticação
Crie usuários adicionais conforme necessário para sua implantação.