超級管理員
- 為了更安全的訪問mongodb,需要訪問者提供用戶名和密碼,于是需要在mongodb中創(chuàng)建用戶
- 采用了角色-用戶-數(shù)據(jù)庫的安全管理方式
- 常用系統(tǒng)角色如下:
- root:只在admin數(shù)據(jù)庫中可用,超級賬號,超級權(quán)限
- Read:允許用戶讀取指定數(shù)據(jù)庫
- readWrite:允許用戶讀寫指定數(shù)據(jù)庫
- 創(chuàng)建超級管理用戶
use admin
db.createUser({
user:'admin',
pwd:'123',
roles:[{role:'root',db:'admin'}]
})
啟用安全認(rèn)證
- 修改配置文件
sudo vi /etc/mongod.conf
- 啟用身份驗證
- 注意:keys and values之間一定要加空格, 否則解析會報錯
security:
authorization: enabled
- 重啟服務(wù)
sudo service mongod stop
sudo service mongod start
- 終端連接
mongo -u 'admin' -p '123' --authenticationDatabase 'admin'
普通用戶管理
- 使用超級管理員登錄,然后進入用戶管理操作
- 查看當(dāng)前數(shù)據(jù)庫的用戶
use test1
show users
- 創(chuàng)建普通用戶
db.createUser({
user:'t1',
pwd:'123',
roles:[{role:'readWrite',db:'test1'}]
})
- 終端連接
切換數(shù)據(jù)庫,執(zhí)行命令查看效果
修改用戶:可以修改pwd、roles屬性
db.updateUser('t1',{pwd:'456'})