node.js – 如何在MongoDB v3.0.5中创建用户

前端之家收集整理的这篇文章主要介绍了node.js – 如何在MongoDB v3.0.5中创建用户前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要在 mongodb中为我的数据库创建一个用户,但似乎我无法让它工作.

我在我的Windows 7机器上安装了mongoDb v3.0.5.根据this article,我连接到我的mongo实例使用:

mongo -u siteUserAdmin -p password

然后我创建了第一个用户

use admin
db.createUser(
  {
    user: "siteUserAdmin",pwd: "password",roles: [ { role: "userAdminAnyDatabase",db: "admin" } ]
  }
)

然后我在exampleDb上为我的nodejs应用程序创建了一个用户

use admin
db.createUser(
  {
    user: "myUser",pwd: "123456",roles: [ { role: "readWrite",db: "exampleDb" } ]
  }
)

最后在我的nodejs应用程序中,当我尝试使用此连接字符串连接到我的mongo实例时:

var connString = "mongodb://myUser:123456@127.0.0.1:27017/exampleDb";

发生身份验证失败错误

{ name: 'MongoError',message: 'Authentication Failed.',ok: 0,code: 18,errmsg: 'Authentication Failed.'
}

解决方法

当您“使用admin”时,您的新用户将在数据库“admin”中创建.
use admin
db.createUser(
  {
    user: "myUser",db: "exampleDb" } ]
  }
)

所以你的连接字符串必须是:

var connString = "mongodb://myUser:123456@127.0.0.1:27017/admin";

猜你在找的Node.js相关文章