給mongodb設置密碼


數據來源:https://segmentfault.com/a/1190000011554055

 

mongodb安裝后是無需密碼

Mongodb安裝后自身是沒有密碼的,用戶連接只需填寫id地址,端口號,數據庫名稱即可

安全問題

只要你服務器的mongodb數據庫端口開放,任何人的電腦都可以連接到你的數據庫,操作修改你的mongodb數據,本人以前就遭受過入侵,深有感觸。如圖:黑客盜取你的數據庫,然后留下一個郵箱和賬號,要求你給比特幣才肯歸還數據庫給你。。。

 

給mongodb加密

如果需要給MongoDB數據庫使用安全驗證,則需要用--auth開啟安全性檢查,只有數據庫認證的用戶才能執行讀寫操作,開戶安全性檢查。
第一步:開機先:mongod --dbpath 存放數據庫文件夾路徑

 

第二步:打開命令行窗口輸入mongo,進入mongo環境 

 

第三步:切換到 'admin' 數據庫 use admin

 

第四步:給admin設置用戶密碼:
user: 用戶名, pwd: 用戶密碼,roles: 用來設置用戶的權限,比如讀,讀寫 等等
db.createUser({user: 'root', pwd: '123456', roles: ['root']})

 


驗證是否添加成功,'db.auth(用戶名,用戶密碼)' 這里用db.auth('root', '123456') 如果返回 '1'表示驗證成功, 如果是 '0' 表示驗證失敗...

第5步:剛才是給root設置密碼,現在要給特定的每個庫設置權限,比如我這里有一個庫,庫名字叫做Article,這里以Article這個庫為例

 

 

切換到Article數據庫,use Article

 

接下來為這個庫添加一個用戶,並且賦予權限,db.createUser({user:'zwVic',pwd:'adgjmp123',roles: [{role:'readWrite',db:'Article'}]})})
這行代碼意思是 創建一個zwStar用戶 給予讀寫權限 db表示該用戶操作的數據庫名

 


 

 

OK,一切搞定,重新開機mongodb,MongoDB默認是沒有開啟訪問控制,我們通過--auth參數重啟mongod服務。mongod --dbpath 存放數據庫文件夾路徑 --auth一旦開啟了,用戶連接mongod必須指定用戶名和密碼。

 

 

連接加密數據庫

xxx.db('mongodb://your name: your pwd@ ip :27017/Article');
your name:為用戶名
your pwd:為密碼

總結

通過加密后。連接數據庫就需要賬號,密碼,同時阿里雲或者騰訊雲上也可以給服務器設置安全組增加安全性,比如27107這個端口只授權給自己訪問等等....
文中有什么不對的,希望大家指正哈!
如果覺得本文對你有所幫助,就star一下吧~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM