微服務涵蓋了微信管家、微信應用解決方案、微信客服客戶端、人工微信客服幾部分。微服務是對于微信公眾平臺賬號提供的輔助管理平臺,強化了微信公眾號的互動營銷推廣與客戶關系維護功能。微服務平臺開發了為商家定制的“個性化管理、營銷推廣、客戶關系管理、會員卡管理”等幾個重要的運營管理模塊。那么現實的微服務到底能夠怎樣被應用呢?中培偉業《微服務架構設計與最佳實踐》胡老師在這里介紹了幾個經典的微服務安全應用的最佳實踐。
第一條:發現并監控服務間的通訊
通常來說,安全管理者并不了解:在微服務應用中不同服務間的交互哪些是允許的。盡管在需要確保應用安全性時,管理者需要配置安全策略,并基于應用部署指南或者其它來自開發者的非正式指導來管理相應的交互。隨著應用發展,新服務上線,規則也可能會修改。
迎接這一挑戰,緩解問題的方式之一就是觀察并可視化服務間的通訊,通過對應用行為的理解,建立起相應的策略基準線。服務發現機制能自動檢測到應用中出現的新服務,而使用這些功能可以讓開發者與管理者了解服務的實時交互與性能表現,也有助于安全團隊發現異常的溝通模式,甚至識別潛在的漏洞。
第二條:對應用與服務進行分段或獨立
微分段是在應用之間通過策略建立起屏蔽,按顆粒度分段來保障各部分的安全。微分段可以使用相對較粗的顆粒度,比如將開發環境與生產環境相隔離;或者更細致一些的,比如管理電子商務應用中的目錄服務與訂單管理服務之間的交互。對于在微服務中的分段執行工作,在每個主機所運行的服務實例中,策略以集群為級別來執行。
第三條:加密傳輸數據與靜態數據
對應用或服務間數據傳輸進行加密,使得應用合乎要求,同時也提高其安全性(特別是公共網絡上的數據安全性)。保持證書更新、管理軟件版本、修復已知SSL問題。在工具上的投入有助于管理與分發密匙,在解決資源擴展的問題時保持更新密匙,這樣加密就不會影響到性能了。
第四條:自動化策略管理與配置
跨越不同系統與重復任務的復雜管理功能經常會出現人為的錯誤,最應當避免卻時常出現的安全事故源頭仍是人為的錯誤,比如配置錯誤或者忘記更新。我們的目標是:將諸如可在不同應用間復制的策略定義、將管理與開發角色相分離、管理SSL證書與密匙等任務自動化,以減少人為錯誤發生;而距離這一目標,我們還有很長的路要走。同樣,想要將整個堆棧的部署、管理與維護等任務自動化,以提高整體動態環境的安全狀態評估值,也有許多的工作需要完成。