1.在mongodb中有一个admin数据库,牵涉到服务器配置层面的操作,需要先切换到admin数据库。
即use admin,-->相当于进入用户管理模式
2.mongo中的用户是以数据库为单位来创建的,每个数据库都有自己的管理员
3.我们在设置用户时,需要先在admin数据库下建立管理员--这个管理员登录后,相当于超级管理员
0:查看用户
1:添加用户
命令:db.addUser(用户名,密码,是否只读)
注意:添加用户后,我们再次退出并登录,发现依然可以直接读数据库,原因是什么?
答:mongo服务器启动时,默认是不需要认证的。
要让用户生效,需要启动服务器时,就指定 --aux选项,这样,操作时就需要认证了。
例:
use admin
db.addUser('zs','123456',false);
2.删除用户
use test
db.removeUser(用户名);
3.修改密码
use test
db.changeUserPassword(用户名,密码);
4.认证
use test
db.auth(用户名,密码);
注:如果需要给用户添加更多的权限,可以用json结构来传递用户参数
例:
db.addUser({user:'guan',pwd:'111111',roles:['readWrite,dbAdmin']});