標籤:密碼 back 啟動 提示 adduser family files god 技術分享
MongoDB預設設定為無許可權訪問限制註:研究成果基於Windows平台
在部署mongodb成功後。進入控制台:輸入命令:mongod use admin,你會發現該DB下包括了一個system.user表,呵呵。沒錯,這個表就等同於MsSql中的使用者表。用來存放超級管理員的,那我們就往它裡面加入一個超級管理員試試看裡我加入一個超級管理使用者,username為admin,password也為admin,即然我們加入了超級管理員,那咱們就來測試下,看看咱們再次串連MongoDB需不須要提示輸入使用者名稱、密碼。我們先退出來
輸入命令:mongod use admin
輸入命令:show collections。查看該庫下全部的表,你會發現,MongoDB並沒有提示你輸入username、password。那就奇怪了,這是怎麼回事呢?在文章最開始提到了。
MongoDB預設設定為無許可權訪問限制,即然這樣,那我們就先把它設定成為須要許可權訪問限制,咱們再看看效果,怎麼設定呢?
在注冊表中,找到MongoDB的節點。在它的ImgPath中,我們改動一下,增加 -auth,例如以下所看到的:mongod
"D:\Program Files\mongodb\bin\mongod" -dbpath e:\work\data\mongodb\db -logpath e:\work\data\mongodb\log -auth -service
註:進入系統注冊表(WIN+R-->regedit),找到[HKEY_LOCAL_MACHINE-->SYSTEM-->CurrentControlSet-->Services-->MongoDB]在右邊的健-值列表中打到 “ImagePath”
改動完畢後再次進入控制台,發現須要password驗證了。
輸入username和password就能夠驗證了。
別急,還沒有完。
當退出表單後。再次啟動進入表單後,通過use mydatabase來切換還有一個庫後,查看庫以下的表,發現又沒有許可權了。可是。通過之前命令先進入admin庫,然後驗證username和password後再進入mydatabase庫就沒有問題。
這樣我們就能夠進入mydatabase庫後
在加入使用者 db.addUser(username,password);
這樣就能夠通過username和password來進入mydatabase庫了。
相同在linux的環境下,須要在啟動的服務後面加入auth的參數來啟動許可權訪問控制。
MongoDB下配置使用者權限