管理云中的應用程序依賴關系:策略和優秀實踐
人們需要了解了應用程序依賴關系映射的基礎知識,應用程序依賴在云計算環境中的重要性,以及涵蓋了四個關鍵的最佳實踐。
什么是應用程序依賴映射?
應用依賴映射(ADM)可以讓企業創建整個生態系統的綜合地圖。它有助于避免盲點,避免出現錯誤或漏洞。應用依賴映射(ADM)解決方案可以識別和映射整個生態系統中的所有實例、應用程序和通信通道,包括端口和服務。
有各種應用依賴映射解決方案,包括供應商原生、開源和商業供應商不可知論工具。而供應商不可知論的解決方案可以快速而輕松地識別幾個云計算提供商(例如MicrosoftAzure、谷歌云和AWS)上的子網、Vpc和安全組。
應用依賴映射解決方案可以顯示直觀的地圖,直觀地表示應用程序的依賴關系。可以共享、檢查并使用此映射進行規劃和故障排除。地圖可視化可以幫助支持業務戰略制定,根據業務場景進行組織,實時對警報和信息進行優先級排序。
為什么應用程序依賴映射在云計算中至關重要?
應用程序依賴關系映射可以幫助企業遷移所有應用程序的依賴關系。否則,可能會錯過一個關鍵的依賴項,而遷移時沒有它。因此,企業的應用程序可能會出現性能問題或中斷。應用程序依賴關系映射可以幫助避免這些問題。
云計算提供商在遷移之前就知道映射依賴關系的重要性,并提供了內部部署環境的應用依賴關系映射工具,包括Azure、AWS和谷歌云。由于這些工具提供了特定于其環境的結果,所以應該只在遷移到其中一個云平臺時使用它們。
或者,也可以使用與供應商無關的工具。有多種可用的選擇,包括免費的、開源的工具。大多數工具都會分析應用程序,為服務器間關系建模,并識別入站和出站連接延遲、必要的TCP端口和正在運行的進程。
云計算提供程序ADM工具
(1)AWS應用程序發現服務
AWS應用發現服務收集內部部署數據中心的信息,幫助企業規劃遷移項目。數據中心遷移通常涉及數千個深度相互依賴的工作負載,因此在遷移過程的早期階段分析服務器利用率數據并執行依賴關系映射是至關重要的。
AWS應用程序發現服務聚合并呈現服務器的使用、行為和配置數據,以幫助企業更好地理解其工作負載。該服務使用數據存儲,以加密格式保存收集到的數據。
用戶可以將數據導出為CSV文件,并使用它來估計AWS總擁有成本(TCO),并相應地計劃其云遷移。也可以在AWS遷移樞紐中找到這些數據,它可以讓用戶遷移服務器并跟蹤遷移進度。
(2)Azure應用見解
Azure應用見解是AzureMonitor的一個特性,為實時Web應用程序提供監視和可擴展的應用程序性能管理(APM)。用戶可以使用Azure應用見解自動檢測性能異常,并使用分析工具診斷問題。
該功能提供了關于用戶行為的信息,幫助用戶了解他們使用應用程序做了什么。Azure應用見解可以利用這些數據來不斷提高應用的可用性和性能。默認的應用程序儀表板可以讓Azure應用見解跟蹤負載、性能和響應性,并監視依賴關系、AJAX調用和頁面加載。
云中依賴管理的最佳實踐和策略
(1)版本固定
版本固定包括限制應用程序中軟件依賴的版本,確保使用特定的版本(理想情況下是一個版本)。
固定依賴版本可以及時凍結應用程序。盡管使應用程序可復制是一種很好的做法,但它可能會產生不利影響,阻止應用程序將更新合并到其依賴項中——錯過了安全性和錯誤修復。
用戶可以通過使用自動化的依賴管理工具來處理源代碼控制存儲庫來緩解這個問題。依賴管理器監視新版本的軟件依賴關系,并更新應用程序。通常,這包括更新細節,如變更日志數據。
(2)哈希和簽名驗證
有幾種方法可以確保軟件包發布的某個工件是想要安裝的工件。通過將工件的散列與工件存儲庫進行比較,可以驗證工件的真實性和安全級別。
哈希驗證可以讓用戶確保依賴項包含正確的文件,并且惡意行為者沒有篡改它們。相信在工件的驗證或初始檢索期間工件存儲庫中列出的散列是安全且未被破壞的。
用戶還可以使用簽名驗證來為工件驗證過程添加一層安全層。工件可以由軟件維護者或工件存儲庫(或兩者)簽名。
(3)避免混淆私人和公共依賴關系
云原生應用程序通常依賴于各種組件,包括開源軟件、第三方代碼、閉源組件和內部庫。私有存儲庫對于跨多個應用程序共享業務邏輯和重用相同的工具來安裝外部和內部庫尤其有用。
然而,將公共依賴和私有依賴結合起來可能會使應用程序遭受依賴混淆攻擊。當威脅行為者將與內部項目名稱相同的項目發布到開源存儲庫時,就會發生混淆攻擊。接下來,該行為者試圖使用錯誤配置的安裝程序在合法的內部包上秘密安裝惡意庫。
這里有一些實踐可以幫助你避免依賴混淆攻擊:
?通過在鎖文件中列出所有依賴項的散列或簽名來驗證它們。
?確保內部依賴和第三方依賴的安裝過程是分開的,使用兩個不同的步驟。
?在私有存儲庫中顯式鏡像第三方依賴,使用代理或人工處理。
(4)漏洞掃描
與其他組件一樣,依賴關系可能包括新發現的或零日漏洞。用戶必須設置一個進程,該進程掃描其依賴項,并在發現漏洞時獲得通知。然而,人工監控漏洞數據庫的依賴關系和可靠地審計第三方軟件的依賴關系是很困難的。
漏洞掃描器會自動并持續地分析依賴項,在它們被發現時尋找漏洞。漏洞掃描工具會消耗鎖文件來識別您所依賴的工件,并在新的漏洞出現時通知您。有些工具可以建議升級路徑。
結論
以上解釋了應用程序依賴映射的基礎知識,應用程序依賴在云計算環境中的重要性,以及涵蓋了四個關鍵的最佳實踐,可以幫助用戶更好地利用云應用程序映射,避免安全風險:
?版本固定——確保依賴關系被限制在一定范圍的安全版本中,或者理想情況下只有一個版本。
?哈希和簽名驗證——確保軟件包中的構件是真實的,不包含惡意組件。
?避免混合私有和公共依賴——在確保第三方依賴安全之后,更傾向于將第三方依賴鏡像到一個受信任的私有存儲庫中。
?漏洞掃描——確保所有依賴項都進行了已知漏洞的掃描。
希望這將對人們提高可見性和對云計算部署的控制有所幫助。