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

MongoDB &Mongoose acessando um banco de dados enquanto se autentica em outro (NodeJS, Mongoose)


Aqui está a sintaxe para uma configuração de nó mongodb, mongoose.

  1. Crie o usuário do banco de dados no banco de dados admin do shell do mongo

    use admin

    db.addUser( { user: "mydbuser", pwd: "mypassword", roles: [ ] } )

  2. Crie o banco de dados e adicione o usuário - o userSource indica que as credenciais estão definidas no banco de dados admin

    use mydb
    db.addUser( { user: "mydbuser", userSource: "admin" , roles: [ "readWrite" , "dbAdmin"] } )

  3. Especifique o parâmetro de autenticação na string de conexão do mangusto

    var myDB = mongoose.createConnection("mongodb://mydbuser:[email protected]:27017/mydb" ,{auth:{authdb:"admin"}});

    a opção {auth:...} é o que especifica que a conta do usuário deve ser autenticada no banco de dados do administrador.

  4. Da mesma forma para se conectar ao banco de dados do shell do mongo

    mongo myipaddr:27017/mydb -u "mydbuser" -p "mypassword"

Nota:O usuário "mydbuser" tinha apenas acesso de leitura/gravação e administrador ao mydb. você pode encontrar mais informações sobre privilégios de usuário aqui . Um exemplo mais completo do cenário está aqui