MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB und Mongoose greifen auf eine Datenbank zu, während sie sich bei einer anderen authentifizieren (NodeJS, Mongoose)

Hier ist die Syntax für ein Mongodb-, Mongoose-, Knoten-Setup.

  1. Erstellen Sie den Datenbankbenutzer in der Admin-Datenbank von der Mongo-Shell

    use admin

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

  2. Erstellen Sie die Datenbank und fügen Sie den Benutzer hinzu – die userSource gibt an, dass die Anmeldeinformationen in der Admin-Datenbank definiert sind

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

  3. Geben Sie den auth-Parameter in der Mungo-Verbindungszeichenfolge

    an

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

    die Option {auth:...} gibt an, dass das Benutzerkonto gegenüber der Admin-Datenbank authentifiziert werden muss.

  4. Ähnlich, um sich von der Mongo-Shell aus mit der Datenbank zu verbinden

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

Hinweis:Der Benutzer „mydbuser“ hatte nur Lese-/Schreib- und Administratorzugriff auf mydb. Weitere Informationen zu Benutzerprivilegien finden Sie hier . Ein ausführlicheres Beispiel für das Szenario finden Sie hier