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连接