1. 程式人生 > >Mongodb安裝與設定副本集 二 (新增許可權認證)

Mongodb安裝與設定副本集 二 (新增許可權認證)

1.Mongodb安裝與設定副本集 一,中配置了一個簡單的mongodb replica set環境,但是沒有新增認證,任何知道伺服器IP+埠的客戶端都能訪問
2.新增認證—接著上篇文章繼續配置

2.9:replica set許可權認證 , 通過openssl生一個keyfile檔案,用於節點之間許可權認證的
2.9.1 在mongodb安裝資料夾下建立一個rs目錄 mkdir -p /usr/local/mongodb/rs
2.9.2 使用 openssl生成一個key檔案, openssl rand -base64 741 > keyfile (沒有安裝openssl的請自行下載安裝)
2.9.3 同時給 keyfile 檔案設定許可權 chmod 600 keyfile
然後把keyfile檔案傳到各個mongodb伺服器mongodb/rs 資料夾下
啟動各個mongod節點,在主節點下新增使用者,會自動同步到其他複製集中
use admin 建立一個管理員使用者,db.createUser({user:“admin”.pwd:“admin”,roles:[{role:“root”,db:“admin”}]})
再在業務資料庫中建立使用者 use youka db.createUser({user:“youka”.pwd:“youka”,roles:[{role:“dbAdmin”,db:“youka”},{role:“readWrite”,db:“youka”}]})
注意dbAdmin許可權,其實是沒有讀寫許可權的,需要再給業務庫分配讀寫許可權 readWrite


此時,伺服器的27017埠是可以被所有使用者訪問的,因此需要在配置檔案中新增訪問認證
2.9.4 修改各個mongodb伺服器的mongodb.conf配置檔案,新增如下配置
security:
authorization: enabled
clusterAuthMode: keyFile
keyFile: /usr/local/mongodb/rs/keyfile
keyFile就是剛剛生成的檔案,並放在所在的目錄,然後所有mongodb全部重啟
現在就可以通過使用者名稱youka 密碼youka 資料庫名youka host:xxx訪問mongodb業務資料庫了