MongoDB之权限管理
在实现权限管理之前,需要开启数据库的登录验证,在MongoDB的mongo.config文件中开启登录验证,如下:
dbpath=C:\Program Files\MongoDB\Server\3.6\data\db
logpath=C:\Program Files\MongoDB\Server\3.6\data\log\MongoDB.log
#开启登录验证
auth=true
1.连接MongoDB服务器
2.切换到admin数据库,并创建具有数据库管理角色的用户
3.退出当前登录用户,使用刚创建的dbUser用户登录,创建普通数据库,并指定用户,给用户赋予read权限
4.退出客户端,直接连接dbTest数据库
5.使用userTest进行登录,并向集合test中插入文档
6.发生报错:在dbTest数据库上没有权限执行这条命令,原因是该用户只有read的权限,不能写入,切换到admin数据库下,查看用户
5.增加用户dbTest的权限readWrite(注意要切换到用户对应的数据库下才可以)
6.查看用户userTest的权限,同时具有read和readWrite的权限
7.在dbTest中插入数据
总结:
(1)修改用户角色,需登录具有数据库用户管理角色的账号
(2)修改用户,需要切换到对应数据库下进行操作,否则会报错:在当前数据库下没有该用户