這篇文章主要介紹了MongoDB 如何對用戶管理,幫助大家更好的理解和使用MongoDB數據庫,感興趣的朋友可以了解下。
小小最近接觸了MongoDB,所以這里開始學習MongoDB,之用戶管理模塊的相關內容。
進入MongoDB的Shell
這里輸入如下的命令,進入MongoDB的shell
mongo
切換數據庫
use admin
使用如上的命令,切換數據庫到admin數據庫。
創建超級管理員用戶
創建超級管理員權限的用戶
db.createUser(
{ user: "admin",
customData:{description:"superuser"},
pwd: "admin",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
其中各個字段解釋如下
user字段: 新用戶的名字。
pwd 字段 用戶的密碼
cusomData 字段,任意內容,可以是用戶名的全民介紹。
roles 字段 指定用戶的角色,用于給一個空數組,給新用戶設定空的角色,在roles字段,可以指定設置相關的角色。
db 數據庫的名字,用于管理數據庫。
創建超級用戶
這里創建一個超級用戶,用于管理全部用戶的權限
db.createUser(
{
user:"root",
pwd:"pwd",
roles:["root"]
}
)
創建一個業務數據庫的管理員的用戶
這個用戶專門負責一個或者幾個數據庫的增刪查改。
> db.createUser({
user:"user001",
pwd:"123456",
customData:{
name:'jim',
email:'jim@qq.com',
age:18,
},
roles:[
{role:"readWrite",db:"db001"},
{role:"readWrite",db:"db002"},
'read'// 對其他數據庫有只讀權限,對db001、db002是讀寫權限
]
})
其中
數據庫用戶角色,read,readWrite。
數據庫管理角色: dbAdmin,dbOwner,userAdmin
集群管理角色: clusterAdmin,clusterManager,clusterMonitor,hostManage。
備份恢復角色: backup,restore。
所有數據庫角色: readAnyDatabase。readWriteAnyDatabase,userAdminAnyDatabase,dbAdminAnyDatabase。
超級用戶角色: root
內部角色 _system
這樣就完成了一個最基本的數據庫管理角色的創建。
查看和創建用戶
使用如下的命令,進行查看和創建用戶
show users
使用該命令可以實現對用戶的查看和創建用戶。
修改密碼
use admin
db.changeUserPassword("username", "xxx")
使用該命令,可以實現對密碼的修改。
修改密碼和用戶信息
db.runCommand(
{
updateUser:"username",
pwd:"xxx",
customData:{title:"xxx"}
}
)
刪除數據庫用戶
use admin
db.dropUser('user001')
創建其他數據庫管理員
// 登錄管理員用戶
use admin
db.auth('admin','admin')
// 切換至db001數據庫
use db001
// ... 増查改刪該數據庫專有用戶
核心,啟用權限驗證
權限設定完成以后,需要輸入如下的命令,用于啟用權限驗證。
mongo --auth
所有的修改,都需要重寫啟動mongodb
所有的修改,都需要重寫啟動mongodb,才可以生效
net stop mongodb;
net start mongodb;
本文來自腳本之家,原文鏈接:https://www.jb51.net/article/194582.htm
申請創業報道,分享創業好點子。點擊此處,共同探討創業新機遇!