本系列文章學(xué)習(xí)來源是技術(shù)胖的MogoDB系列
??安裝好MongoDB時,它為我們默認開了一個最高管理權(quán)限方便我們管理數(shù)據(jù)庫,我們可以用mongo鏈接數(shù)據(jù)庫,就是這個原因。但在實際開發(fā)中考慮到安全性問題,并一般不能使用這個用戶,要對MongoDB的用戶進行管理。
創(chuàng)建用戶
??創(chuàng)建用戶可以用db.createUser方法來完成。
db.createUser({
user:"zyb",
pwd:"123456",
customData:{
name:'zyb',
email:'123456@qq.com',
age:23,
},
roles:['read']
})
??還可以單獨配置一個數(shù)據(jù)庫的權(quán)限,比如我們現(xiàn)在要配置user數(shù)據(jù)庫的權(quán)限為讀寫:
db.createUser({
user:"zyb",
pwd:"123456",
customData:{
name:'zyb',
email:'123456@qq.com',
age:23,
},
roles:[
{
role:"readWrite",
db:"user"
},
'read'
]
})
查找用戶信息
db.system.users.find()
刪除用戶
db.system.users.remove({user:"zyb"})
建權(quán)
??有時候我們要驗證用戶的用戶名密碼是否正確,就需要用到MongoDB提供的建權(quán)操作,也算是一種登錄操作,不過MongoDB把這叫做建權(quán)。
db.auth("zyb","123456")
如果正確返回1,如果錯誤返回0。(Error:Authentication failed。)
啟動建權(quán)
??重啟MongoDB服務(wù)器,然后設(shè)置必須使用建權(quán)登錄。
mongod --auth
??啟動后,用戶登錄只能用用戶名和密碼進行登錄,原來的mongo形式鏈接已經(jīng)不起作用了,相應(yīng)的用戶權(quán)限也對應(yīng)妥當(dāng),實際項目中我們啟動服務(wù)器必須使用建權(quán)形式。
登錄
??如果在配置用戶之后,用戶想登錄,可以使用mongo的形式,不過需要配置用戶名密碼:
mongom -u zyb -p 123456 127.0.0.1:27017/admin
??這時候就可以用給定的權(quán)限對數(shù)據(jù)庫操作了。