5、MongoDB学习之安全与认证
每个MongoDB库可以有许多用户,只有开启了用户并且有对于的库操作权限才能读写操作,MongoDB安全机制为:1、首先要建立一个超级用户,可以由超级用户认证后再创建对应库的用户
目标:
1、创建一个超级用户进行管理(包括创建新用户)
2、超级用户认证后再创建普通用户用于读写对应的数据库
版本:
> db.version()
3.4.7
一、使用admin数据库
> use admin
switched to db admin
> show collections
二、创建超级用户
> db.createUser({user:'admin',pwd:'123',roles:['root']})
Successfully added user: { "user" : "admin", "roles" : [ "root" ] }
三、查看用户权限
> db.system.users.find()
四、mongodb开启认证测试超级用户
# vi /usr/local/mongodb/mongodb.conf
添加
auth = true
重启服务
五、测试超级用户认证
[root@TEST-1 bin]# ./mongo
> use admin
switched to db admin
> db.auth("admin","123")
1
#备注:认证也必须是要先use admin 之后再进行认证的
六、在aa数据库中创建普通用户
> use aa
switched to db aa
> db.createUser({user:'test',pwd:'123',roles:['readWrite']})
Successfully added user: { "user" : "test", "roles" : [ "readWrite" ] }
七、测试普通用户
> use aa
switched to db aa
> db.auth('test','123')
1