sql >> Databáze >  >> NoSQL >> MongoDB

MongoDB a Mongoose přistupují k jedné databázi při ověřování proti jiné (NodeJS, Mongoose)

Zde je syntaxe pro nastavení mongodb, mongoose, node.

  1. Vytvořte uživatele databáze v databázi správce z mongo shell

    use admin

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

  2. Vytvořte databázi a přidejte uživatele – userSource označuje, že přihlašovací údaje jsou definovány v databázi správce

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

  3. Zadejte parametr auth v připojovacím řetězci mongoose

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

    volba {auth:...} určuje, že uživatelský účet musí být ověřen proti admin db.

  4. Podobně pro připojení k databázi z mongo shell

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

Poznámka:Uživatel "mydbuser" měl pouze přístup pro čtení/zápis a administrátorský přístup k mydb. více informací o uživatelských oprávněních naleznete zde . Úplnější příklad scénáře je zde



  1. Existuje způsob, jak získat řez jako výsledek Find()?

  2. Agregační kanál a indexy

  3. Ukládání souborů v MongoDB pomocí GridFS

  4. Mongoose:Odeslání do ObjectId se nezdařilo