MongoError:身份验证失败

时间:2015-11-19 21:05:52

标签: node.js mongodb

我正在尝试使用mongodb设置应用。我显然需要

nano /etc/mongo.conf and uncomment "auth=true"

但是没有这样的设置,我甚至检查了/etc/mongod.conf并且那里没有auth = true。

所以我被告知用userAdminAnyDatabase添加用户,所以我进入了mongo shell并尝试了

db.createUser({ user: "username", pwd: "password", roles: ["userAdminAnyDatabase"] });

我得到了

Error: couldn't add user: No role named userAdminAnyDatabase@test

我想做的就是找到我的管理员conn设置或者只是完全禁用localhost auth并继续安装。

任何想法我做错了什么?

1 个答案:

答案 0 :(得分:2)

您需要在admin数据库中运行此语句,您当前正在针对test数据库运行它。在Mongo shell中键入use admin以切换到admin数据库。您还需要向用户授予readWriteAnyDatabase角色。

db.grantRolesToUser(
 "username",
[
  { role: "readAnyDatabase", db:"admin" }
]
)