增加mongodbauthentication断开连接通过nodejs

我需要外部访问我的mongodb数据库,所以我已经从mongod.conf文件中删除了bind_ip,并打开了auth。 然后,我添加了一个可以访问所有内容的root用户,并尝试用robomongo连接到数据库 – 完美地工作。 然后,我为nodejs应用程序添加了另一个用户。 我已经尝试使用angular色dbAdmin,readWrite,read ….并且无论我设置了什么,它都不会完成连接到nodejs中的数据库。

用户看起来像这样:

db.getUser('node'); { "_id" : "admin.node", "user" : "node", "db" : "admin", "roles" : [ { "role" : "read", "db" : "mydb" }, { "role" : "userAdmin", "db" : "mydb" }, { "role" : "dbAdmin", "db" : "mydb" }, { "role" : "readWrite", "db" : "mydb" }, { "role" : "userAdminAnyDatabase", "db" : "mydb" } ] } 

我似乎无法find适当的angular色应该在哪里。

更新:我想更好地解释当它尝试连接时发生了什么。 它授权用户就好,因为如果我更改用户名/通过错误,它会给出一个失败的authentication错误。 我也尝试添加一个事件监听器,当连接“连接”,然后运行脚本的其余部分…该事件从来没有触发。 它似乎挂起。

更新:这是我试图通过mongoose连接到MongoDB的代码:

 mongoose.connect('mongodb://username:password@localhost:27017/database', { auth: { authdb: 'admin' } });