1. 程式人生 > 資料庫 >MongoDB開啟許可權認證的方法步驟詳解

MongoDB開啟許可權認證的方法步驟詳解

前言

最近在生產環境中MongoDB已經使用有一段時間了,但對於MongoDB的資料儲存一直沒有使用到許可權訪問(MongoDB預設設定為無許可權訪問限制),最近在酷殼網看了一篇技術文章(https://coolshell.cn/?s=從+MONGODB+“贖金事件”+看安全問題&from=timeline&isappinstalled=0)介紹的mongodb未開啟許可權認證導致資料被黑客竊取,要比特幣贖回的事件,考慮到資料安全的原因特地花了一點時間研究了一下,我現在用的版本是MongoDB3.4.2,在Linux系統上進行的驗證,我在win8上也是類似操作方式開啟。

和其它資料庫一樣,許可權的管理都差不多一樣。

但不同的是mongodb的使用者是跟資料庫相關聯的,具體的資料庫,還是需要有對應的使用者,也就是說哪怕是超級管理員也不能操作其他資料庫的。

mongodb儲存所有的使用者資訊在admin 資料庫的集合system.users中,儲存使用者名稱、密碼和資料庫資訊。
mongodb預設不啟用授權認證,只要能連線到該伺服器,就可連線到mongod。若要啟用安全認證,需要更改配置檔案引數--auth。

下面來介紹下開啟許可權認證的步驟。

一、非授權方式建立使用者

1、先以非授權方式(即不帶--auth引數)登入建立系統管理員使用者

2、進入到mongodb的安裝bin目錄下

3、客戶端登入

4、切換到admin資料庫

5、為admin資料庫建立使用者了

6、檢視使用者

  使用db.system.users.find()命令就可以檢視我們剛剛建立的使用者了

最後將殺掉mongodb程序,以授權方式啟動

二、授權方式啟動

1、新增--auth引數授權啟動

2、登入並切換到admin資料庫

3、再檢視資料庫,會發現沒有許可權

這時就是使用db.auth('hehaitao','hehaitao')啟用auth認證

會看到返回的值為1,這就表示啟動成功了,然後我們再使用命令檢視資料庫

發現就可以使用查看了

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對我們的支援。