除了「一般」服務器的安全最佳實踐之外,我正在爲MongoDB服務器尋找「安全最佳實踐」。你能指點我有用的資源嗎?MongoDB安全
回答
有兩種方法:
- 安裝MongoDB的沒有可信的環境
--auth
選項。通常它是應用程序,數據庫安裝的本地網絡。此網絡外的服務器無法訪問mongodb和其他資源。 - 安裝mongodb 與
--auth
選項在mongodb端口未被防火牆阻止且每個人都可以訪問的環境中。
有關安全的更多詳細信息,您可以找到here。
安全問題總是特定於應用程序。它是不可能以一般方式完全回答這個問題的。
通常情況下,依賴NOSQL數據庫的應用程序易受OWASP A4 - Insecure Direct Object Reference的影響。值得注意的是,_ID
的值不是加密的隨機數,這個值很大程度上取決於時間戳,因此攻擊者很容易猜到這些值。
另一個常見問題是CWE-602 - client side enforcement of server side security。客戶端永遠不會被信任,如果他們直接與數據庫交互,那麼他們擁有數據庫期間。
假設你有一個MongoDB的
服務器只享有人權的Web服務進行交互,你需要定期登錄,讓使用會話的客戶端服務器對訪問權限。那樣你就應該避免權利僞造。
過濾所有的客戶請求。這很容易,Mongo請求是一個jSON,你可以限制jSON到specific schema以及超載與限制/限制的請求。請注意,服務器將使用會話的變量重載請求。這既可以用於訪問限制,也可以避免客戶端發送沉重的請求,從而使系統過載。
過濾掉結果「修剪樹」。這可能是最後一次檢查,例如,如果您同意返回用戶的姓名而不是他的ID。這就是說,這更可能比篩選客戶端請求多一步。
使用https安全連接。這將確保您的客戶與正確的服務器進行交談,同時確保您的服務器仍然與同一客戶交談(理論上不會發生劫持)。
避免將任何信息堆疊在一起,儘量使用模型以這種方式獲得清晰,但也避免將敏感信息存儲在錯誤的地方。
基本上什麼需要做的是
啓用驗證
打開MongoDB的外殼
use admin
db.addUser("admin","adminpassword")
(注意:您啓用身份驗證之前,您將需要一個管理員用戶,否則你將無法訪問數據)。
現在編輯MongoDB的配置文件 sudo vi /etc/mongodb.conf
並取消auth=true
。保存並重啓蒙戈DB sudo service mongodb restart
的MongoDB綁定到受信任的網絡或機器
編輯MongoDB的配置文件,並添加bind_ip = 127.0.0.1
或逗號分隔的IP地址,將能夠連接到MongoDB的列表。然後重啓。
欲瞭解更多信息,你可以找到一個指南做這些在我的網站here
在我看來,這個回答實際上是非常瀕臨的;這是自我宣傳,並沒有真正包括任何有價值的信息在這個網站上。最後,你忽略了包括所要求的披露,即它是你的網站鏈接。我在這裏補充說明。 **請不要忘記將來的披露**。 –
當然,我會在下次再做。 – Manu
- 1. 在mongodb中創建安全數據庫
- 2. Asp.net上的MongoDB:安全同步寫入
- 3. 如何更新MongoDB中安全
- 4. 從mongodb外殼安全寫入
- 5. 安裝了mongodb
- 6. MongoDB全文搜索JHIPSTER/SPRING DATA MONGODB
- 7. mongoDb多分片安裝的全局(範圍)可變用法
- 8. SQL Server 2008 R2到MongoDB - 遷移是否安全?
- 9. 用安全的mongodb發貨我的軟件
- 10. 爲mongodb使用root用戶不安全嗎?
- 11. 登錄彈簧安全和mongodb不工作
- 12. 如何使用安全模式與MongoDB的C#驅動
- 13. MongoDB的不安全的啓動爲Mac OS X
- 14. 如何安全地連接到我的MongoDB replicaset?
- 15. 在mongodb中存儲公共SSH rsa密鑰是否安全?
- 16. MongoDB PowerPC安裝Squeeze
- 17. mongodb安裝 - 要求?
- 18. mongodb安裝失敗
- 19. 安全
- 20. 安全
- 21. 安全++
- 22. WCF安全 - 數據來源安全
- 23. 安全xmlhttprequest從不安全的頁面
- 24. 混合安全和非安全頁面
- 25. 安全和非安全端口
- 26. 安全嗎?覆蓋apache2 index.php的安全
- 27. WCF安全傳輸安全問題
- 28. PHP:filter_var安全性足夠安全嗎?
- 29. 藍牙SDP安全和不安全
- 30. CakePHP:使用安全:: allowedControllers和安全:: allowedActions
有下面的答案出色的信息。我經常發現問題是「沒有建設性」,如果沒有那些在這裏彙總的人的幫助,我就不會輕易找到這些信息。我想說「當你問的問題或答案得到解決時,不要氣餒。」我認爲有很多過度熱忱的封閉和閉合。我回答了很多'bash'問題,並且可以告訴你從來沒有*最好的*方式/答案,但是這些問題從未關閉。 –