在MongoDB中创建新用户时,必须在管理员下创建它?

use*_*206 9 mongodb

我想在MongoDB中创建一个新用户,所以我必须通过登录管理员(使用管理员)来做到这一点然后我必须使用命令add user来创建新用户吗?

谢谢,

And*_*ich 36

如果没有创建用户,则可以创建没有任何身份验证的新用户,但如果您为特定数据库创建了admin用户,则应该进行身份验证,然后执行任何操作.

文件:

如果admin.system.users中没有配置用户,则可以从localhost接口访问数据库而不进行身份验证.因此,从运行数据库的服务器(以及因此在localhost上),运行数据库shell并配置管理用户:

 $ ./mongo
 > use admin
 > db.addUser("theadmin", "anadminpassword")
Run Code Online (Sandbox Code Playgroud)

我们现在有一个为数据库管理员创建的用户.请注意,如果我们之前没有进行过身份验证,那么现在我们必须执行进一步的操作,因为admin.system.users中有一个用户.

 > db.auth("theadmin", "anadminpassword")
Run Code Online (Sandbox Code Playgroud)

我们可以使用以下命令查看数据库的现有用户:

 > db.system.users.find()
Run Code Online (Sandbox Code Playgroud)

现在,让我们为另一个数据库配置一个"常规"用户.

 > use projectx
 > db.addUser("joe", "passwordForJoe")
Run Code Online (Sandbox Code Playgroud)

  • @Mark可能与"addUser"已被弃用的事实有关?我不知道,我是Mongo的新手,但是尽管所有的教程都提到了`addUser`,阅读官方文档说你应该使用[`createUser`](http://docs.mongodb.org/manual/reference /method/db.createUser/#db.createUser)现在.有点混淆作为新人. (3认同)