1、安全性流程
2、超级管理员
- 为了更安全的访问mongodb,需要访问者提供用户名和密码,于是需要在mongodb中创建用户
- 采用了角色-用户-数据库的安全管理方式
- 常用系统角色如下:
- root:只在admin数据库中可用,超级账号,超级权限
- Read:允许用户读取指定数据库
- readWrite:允许用户读写指定数据库
- 创建超级管理用户
use admin db.createUser({ user:'admin', pwd:'123', roles:[{role:'root',db:'admin'}] })
3、启用安全认证
- 修改配置文件
sudo vi /etc/mongod.conf
- 启用身份验证
- 注意:keys and values之间一定要加空格, 否则解析会报错
security: authorization: enabled
- 重启服务
sudo service mongod stop sudo service mongod start
- 终端连接
mongo -u 'admin' -p '123' --authenticationDatabase 'admin'
4、普通用户管理
- 使用超级管理员登录,然后进入用户管理操作
- 查看当前数据库的用户
use test1 show users
- 创建普通用户
db.createUser({ user:'t1', pwd:'123', roles:[{role:'readWrite',db:'test1'}] })
- 终端连接
mongo -u t1 -p 123 --authenticationDatabase test1
-
切换数据库,执行命令查看效果
-
修改用户:可以修改pwd、roles属性
db.updateUser('t1',{pwd:'456'})