MongoDB設(shè)置訪問(wèn)權(quán)限設(shè)置用戶.docx

MongoDB設(shè)置訪問(wèn)權(quán)限設(shè)置用戶.docx

ID:59253941

大?。?2.67 KB

頁(yè)數(shù):2頁(yè)

時(shí)間:2020-09-08

MongoDB設(shè)置訪問(wèn)權(quán)限設(shè)置用戶.docx_第1頁(yè)
MongoDB設(shè)置訪問(wèn)權(quán)限設(shè)置用戶.docx_第2頁(yè)
資源描述:

《MongoDB設(shè)置訪問(wèn)權(quán)限設(shè)置用戶.docx》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)

1、MongoDB設(shè)置訪問(wèn)權(quán)限、設(shè)置用戶MongoDB已經(jīng)使用很長(zhǎng)一段時(shí)間了,基于MongoDB的數(shù)據(jù)存儲(chǔ)也一直沒(méi)有使用到權(quán)限訪問(wèn)(MongoDB默認(rèn)設(shè)置為無(wú)權(quán)限訪問(wèn)限制),今天特地花了一點(diǎn)時(shí)間研究了一下,研究成果如下:注:研究成果基于Windows平臺(tái)MongoDB在本機(jī)安裝部署好后1.輸入命令:showdbs,你會(huì)發(fā)現(xiàn)它內(nèi)置有兩個(gè)數(shù)據(jù)庫(kù),一個(gè)名為admin,一個(gè)名為local。local好像沒(méi)啥用,如果哪位在使用過(guò)程中發(fā)現(xiàn)了這個(gè)local表的用途,希望能夠留言提醒,那我們就專心來(lái)說(shuō)說(shuō)admin表2.輸入命令:useadmin,你會(huì)發(fā)現(xiàn)該DB下包含了一個(gè)system.user表,

2、呵呵,沒(méi)錯(cuò),這個(gè)表就等同于MsSql中的用戶表,用來(lái)存放超級(jí)管理員的,那我們就往它里面添加一個(gè)超級(jí)管理員試試看3.輸入命令:db.addUser('sa','sa'),這里我添加一個(gè)超級(jí)管理員用戶,username為sa,password也為sa,即然我們添加了超級(jí)管理員,那咱們就來(lái)測(cè)試下,看看咱們?cè)俅芜B接MongoDB需不需要提示輸入用戶名、密碼,我們先退出來(lái)(ctrl+c)4.輸入命令:useadmin5.輸入命令:showcollections,查看該庫(kù)下所有的表,你會(huì)發(fā)現(xiàn),MongoDB并沒(méi)有提示你輸入用戶名、密碼,那就奇怪了,這是怎么回事呢?在文章最開始提到了,Mon

3、goDB默認(rèn)設(shè)置為無(wú)權(quán)限訪問(wèn)限制,即然這樣,那我們就先把它設(shè)置成為需要權(quán)限訪問(wèn)限制,咱們?cè)倏纯葱Ч?,怎么設(shè)置呢?6.在注冊(cè)表中,找到MongoDB的節(jié)點(diǎn),在它的ImgPath中,我們修改一下,加入-auth,如下所示:"D:ProgramFilesmongodbbinmongod"-dbpath?e:workdatamongodbdb?-logpath?e:workdatamongodblog-auth-service7.輸入命令:useadmin8.輸入命令:showcollections,呵呵,我們發(fā)現(xiàn)無(wú)法查看該庫(kù)下的表了,提示:"$err":"un

4、authorizeddb:adminlocktype:-1client:127.0.0.1",很明顯,提示沒(méi)有權(quán)限,看來(lái)關(guān)鍵就在于這里,我們?cè)趩?dòng)MongoDB時(shí),需要加上-auth參數(shù),這樣我們?cè)O(shè)置的權(quán)限才能生效,好,接下來(lái)我們使用剛剛之前設(shè)置的用戶名、密碼來(lái)訪問(wèn)9.輸入命令:db.auth('sa','sa'),輸出一個(gè)結(jié)果值為1,說(shuō)明這個(gè)用戶匹配上了,如果用戶名、密碼不對(duì),會(huì)輸入010.輸入命令:showcollections,呵呵,結(jié)果出來(lái)了,到這里,權(quán)限設(shè)置還只講到一多半,接著往下講,我們先退出來(lái)(ctrl+c)11.輸入命令:mongoTestDB,我們嘗試連接一個(gè)

5、新的庫(kù)(無(wú)論這個(gè)庫(kù)是否存在,如果不存在,往該庫(kù)中添加數(shù)據(jù),會(huì)默認(rèn)創(chuàng)建該庫(kù)),然后,我們想看看該庫(kù)中的表12.輸入命令:showcollections,好家伙,沒(méi)權(quán)限,我們輸入上面創(chuàng)建的用戶名、密碼13.輸入命令:db.auth('sa','sa'),輸入結(jié)果0,用戶不存在,這下有人可能就不明白了,剛剛前面才創(chuàng)建,怎么會(huì)不存在呢?原因在于:當(dāng)我們單獨(dú)訪問(wèn)MongoDB的數(shù)據(jù)庫(kù)時(shí),需要權(quán)限訪問(wèn)的情況下,用戶名密碼并非超級(jí)管理員,而是該庫(kù)的system.user表中的用戶,注意,我這里說(shuō)的是單獨(dú)訪問(wèn)的情況,什么是不單獨(dú)訪問(wèn)的情況呢?接下來(lái)再講,現(xiàn)在咋辦,沒(méi)權(quán)限,那我們就嘗試給庫(kù)的sy

6、stem.user表中添加用戶14.輸入命令:db.addUser('test',''),哇靠,仍然提示沒(méi)有權(quán)限,這可咋辦,新的數(shù)據(jù)庫(kù)使用超級(jí)管理員也無(wú)法訪問(wèn),創(chuàng)建用戶也沒(méi)有權(quán)限,呵呵,別急,即然設(shè)定了超級(jí)管理員用戶,那它就一定有權(quán)限訪問(wèn)所有的庫(kù)15.輸入命令:useadmin16.輸入命令:db.auth('sa','sa')17.輸入命令:useTestDB18.輸入命令:showcollections,哈哈,一路暢通無(wú)阻,我們發(fā)現(xiàn)可以利用超級(jí)管理員用戶訪問(wèn)其它庫(kù)了,呵呵,這個(gè)就是不單獨(dú)訪問(wèn)的情況,不難發(fā)現(xiàn),我們是先進(jìn)入admin庫(kù),再轉(zhuǎn)到其它庫(kù)來(lái)的,admin相當(dāng)于是一個(gè)

7、最高級(jí)別官員所在區(qū)域,如果你是個(gè)地產(chǎn)商,想在地方弄個(gè)大工程做做,你想不經(jīng)過(guò)那些高級(jí)官員就做,這是行不通的,你需要先去到他們那里,送點(diǎn)禮,再順著下到地方,工程你就可以拿到手了,此言論僅為個(gè)人觀點(diǎn),不代表博客園;即然工程拿到手了,就要開始建了,那我們不至于每加塊磚、添個(gè)瓦都得去和那幫高級(jí)官員打招呼吧,所以我們得讓這個(gè)工程合法化,咱們得把相關(guān)的手續(xù)和證件弄齊全,不至于是違建19.輸入命令:db.addUser('test',''),我們給TestDB庫(kù)添加一個(gè)用戶,以后每次訪問(wèn)該庫(kù),我都使用剛剛創(chuàng)

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。