在网络上运行的mongodb服务,用户配置是必不可少的,但是目前大部分配置用户角色的资料都比较旧,有些方法甚至已经被遗弃,因此这里做一下整理。

1. 配置管理员

  • 确定数据库启动时没有添加-auth参数,启动数据库
  • 在admin数据库下新建管理员用户
use admin
db.createUser(
  {
    user: "username",
    pwd: "password",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)

这里userAdminAnyDatabase参数是申明用户管理员权限,也可以改成admin就拥有所有权限了。db参数不能少,否则会报错。

2. 启用mongodb的认证功能

  • 添加-auth参数并重新启动数据库
  • 在所需要管理的数据库下新建管理用户
use database

db.createUser(
 {
   user: "username",
   pwd: "password",
   roles: [
      { role: "readWrite", db: "database" }
   ]
 }
)

完成!!