docker部署mongo,並配置使用者
阿新 • • 發佈:2022-03-10
- 建立容器:
docker run --name mongo -p 3717:27017 -v /data/mongo/data:/data/db -v /data/mongo/backup:/data/backup -d mongo --auth
- 進入容器:
docker exec -it mongo mongo admin
- 切換資料庫到admin:
use admin
- 建立admin賬戶:
db.createUser({user:'admin',pwd:'123456',roles:[{role:'userAdminAnyDatabase',db:'admin'}]})
- 使用admin賬戶操作:
db.auth("
- 建立新庫:
use new-db
- 建立普通使用者並授權:
db.createUser({user:"new-user",pwd:"123456",roles:[ { role: "readWrite", db: "new-db" }]});
- 退出容器:
exit
基於角色的許可權說明(摘抄自:https://blog.csdn.net/m0_46205920/article/details/106115173)
內建角色
資料庫使用者角色
read: 只讀資料許可權
readWrite:學些資料許可權資料庫管理角色
dbAdmin: 在當前db中執行管理操作的許可權
dbOwner: 在當前db中執行任意操作
userADmin: 在當前db中管理user的許可權備份和還原角色
backup
restore跨庫角色
readAnyDatabase: 在所有資料庫上都有讀取資料的許可權
readWriteAnyDatabase: 在所有資料庫上都有讀寫資料的許可權
userAdminAnyDatabase: 在所有資料庫上都有管理user的許可權
dbAdminAnyDatabase: 管理所有資料庫的許可權叢集管理
clusterAdmin: 管理機器的最高許可權
clusterManager: 管理和監控叢集的許可權
clusterMonitor: 監控叢集的許可權
hostManager: 管理Server超級許可權
root: 超級使用者