mongodb超级管理员账号的创建
进入mogodb命令行
windows在mongodb安装目录的bin目录,执行mongo
linux:mongo --port 40008(自定义的端口) 默认端口可以不必输入port
use admin (使用admin数据库(超级管理员账号必须创建在该数据库上))
db.createUser({"user":"root_name","pwd":"password","roles":["root"]}) 创建超级用户
创建成功会显示如下信息
Successfully added user: { “user” : “root_name”, “roles” : [ “root” ] }
创建普通用户user1,该用户在test1上的权限是只读
db.createUser("user":"user1", "pwd":"pwd1", roles:["read"])
创建普通用户user1,该用户在test1上的权限是读写
db.createUser("user":"user1", "pwd":"pwd1", roles:["readWrite"])
在admin用户数据库上创建普通用户
db.createUser({"user":"python1", "pwd":"python1", roles:[{"role":"read","db":"dbname1"},{"role":"readWrite","db":"dbname2"}]})
在admin上创建python1用户,python1用户的权限有两个,一个再dbname1上的只读,另一个是在dbname2上的读写
查看创建的用户
show users
删除用户
进入账号数据所在的数据库 use db_name
删除用户 db.dropUser('python')
登录验证
此时再使用数据库各命令的时候会报权限错误,需要认证才能执行相应操作、
use admin
db.auth('root_name','password')
root_name用户是创建在admin数据库上的所以必须来到admin数据库上进行认证
认证成功会返回1,失败返回0
配置文件修改
security:
authorization: enabled