1、创建管理员用户

db.system.users.find() 查看用户
 必须在admin中执行下面的命令
 db.createUser({user:“rx”,pwd:“mm”,roles:[{role:“userAdminAnyDatabase”,db:“admin”}]})
 Successfully added user: {
 “user” : “rx”,
 “roles” : [
 {
 “role” : “userAdminAnyDatabase”,
 “db” : “admin”
 }
 ]
 }

–管理员用户创建之后需要重启mongodb(不需要重启)

2、使用权限方式启动mongodb

默认情况下mongodb是不开启用户认证的。如果我们添加用户,需要开启用户认证机制。通过修改mongodb.conf配置文件,在文件中添加auth=true 即可

此时再执行查询操作就需要认证了
db.auth(“rx”,“mm”)

3、创建普通用户

普通用户需要管理员用户创建

1、创建数据库 use sxt 没有就是创建
db.createUser({user:“xj”,pwd:“mm”,roles:[{role:‘readWrite’,db:‘sxt’}]})

2、重新打开命令窗口,权限验证之后,插入数据
db.sxt.insert({id:“100”})
db.sxt.find()

4、更新用户角色

db.updateUser() 需要userAdminAnyDatabase权限
 更新角色的语法
 db.updateUser(“用户名”,{“roles”:[role:“角色名”,{更新项:“更新内容”}]})
 db.updateUser(“rx”,{roles:[{role:“userAdminAnyDatabase”,db:“admin”},{role:“dbAdminAnyDatabase”,db:“admin”}]})
 在admin下执行此操作 用户+更新项
 切换到用户所在库
 如果没有返回任何信息说明会更新成功
 show users 显示用户

5、更新用户密码

1、使用管理员用户

db.updateUser()
 db.updateUser(“rx”,{pwd:“mi”}) 必须切换到用户所在库
 2、db.changeUserPassword(“rx”,“mm”) 用户名和密码

6、删除用户

切换到创建用户时所指定的数据库 必须具备 userAdminAnyDatabase权限
打开新的会话

use admin
 db.auth(“rx”,“mm”)
 use sxt
 db.dropUser(“xj”) 返回true执行成功

切换用户前先进行退出 ctrl+c 再使用mongo连接