當許多組織制定2020年及以后的計劃時,看到的世界將比以往任何時候都更加復雜。對于軟件開發人員而言,向微服務的轉變意味著一天要發布多個版本,并且不斷添加新代碼。對于企業而言,這意味著可以極大地加快產品上市時間,而應用程序和更新的發布只需數小時,而不是數月。對于消費者而言,這意味著可能暴露其個人數據面臨的風險日益增加。在這個快速發展的新世界,企業必須繼續提高效率,同時還要降低風險,并減少錯誤。那么其唯一的答案是什么?自動化授權或策略即代碼。
應用程序開發市場正在轉向容器化的“云原生”應用程序架構,而不是單片應用程序。現在也是制定政策和授權的時候了,以提供所有現代安全策略的基礎,無論是企業更喜歡將其稱為零信任、Gartner公司的CARTA還是谷歌的BeyondCorp,為了管理新應用程序開發世界的運營、安全和合規風險,需要對授權進行重新設計。
事實上,隨著當今自動化、GitOps和容器化趨勢所產生的“一切即代碼”的心態,在基礎設施本身中構建策略勢在必行。“策略即代碼”解決方案對于Kubernetes、持續集成和持續交付(CICD)、數據庫、API、servicemesh、應用程序、云平臺等至關重要。當基礎設施本身(應用程序組件)由策略控制和管理時,它們只能做正確的事情。企業的最佳實踐無法再適應這些新環境的速度和廣度。只有在環境本身中執行的自動化策略才能真正降低操作、安全和法規遵從性風險。
例如,使用將策略定義為代碼的授權規則,DevOps團隊可以確保只有已批準的工作負載才能在生產中運行;只有特定的服務才能基于當前場景訪問其他服務;只有特定的數據才能在給定的數據庫和給定的服務之間移動;每次部署新工作負載時,都會有特定的安全配置。這樣的策略不能應用于應用程序的外部;也不應該硬編碼為不同的應用程序組件本身。與其相反,它們必須在應用程序基礎結構中應用,使用公共框架和語言,與服務分離,但必須集成且足夠接近才能有效并滿足性能要求。即代碼的聲明性策略可以提供這些必要的保護。
以下是導致出現這一拐點的三個宏觀趨勢:
(1)開源和微服務改變了應用程序開發
正如計算、網絡、存儲和監控必須發展以適應現代應用程序的需求一樣,策略和授權服務也必須發展。在剛剛過去的兩年里,云原生應用程序堆棧和微服務架構已經正式進入企業。部署已從簡單的探索轉向全面的生產。開源項目是這一轉變的關鍵,由同行評審的社區的創新、迭代和強化推動。這一全球群體所創造的技術,包括Docker、Mission、Istio和Prometheus,對當今的企業至關重要。當然,Kubernetes是現代應用程序部署的必備組件。
根據設計,這種新的微服務堆棧是高度動態的、短暫的和分離的。原有的策略和授權方法不足以應對新的規模、速度和復雜性挑戰。一種新的聲明性系統是唯一的方法,在該系統中,可以在應用程序代碼之外定義策略,但可以將其與整個堆棧中的API集成在一起以執行。如果做得好,那么輕量級的但無處不在的策略層可以確保正確的訪問級別、正確??的工作負載類型以及正確的配置,以便只允許可能發生的事情,而不擔心其他事情。
(2)安全性以預防為主
如今,絕大多數企業實際上已經成為軟件企業。無論產品是什么,基于云計算的訂購、營銷和社區應用程序越來越成為基本的構建基塊。同時,軟件開發過程也正在發生重大變化。企業正在盡可能地使流程自動化,從而導致從每年僅幾個版本過渡到每天多個版本。其驅動因素是提高開發人員的效率和專注力。其結果是獲得競爭優勢,并加快上市時間。
當今的云原生架構世界要求將安全性轉換為按策略編碼,并加入當今的GitOps工作流程。這使DevOps團隊可以與開發管道中的所有其他代碼和配置更改一起創建、查看和聲明滿足所有合規性要求的策略。無論是滿足內部合規性需求還是更廣泛的行業合規性,例如用于信用卡處理的PCI法規或醫療領域的HIPAA法規,圍繞單片應用程序堆棧的“黑盒”安全解決方案時代已經結束。安全必須遵循新的云原生模型,才能進行部署、測試和審核。
DevOps團隊還希望確保高水平的自動化、測試和可靠性,以確保交付速度不會帶來額外的風險。為了減輕這種風險,安全性是“向左移動”的,在這個周期的早些時候得到了解決。其目標是著重于預防問題,而不是發現問題。應用程序開發人員對安全和運營負有更多責任,應對IT安全和運營團隊先前處理的任務負責。當務之急是在周期的早期編纂和實施安全與運營政策。將安全性轉換為按策略編碼可以使DevOps團隊確保策略符合合規性要求,并且可以實時執行。
(3)數據政策標準越來越嚴格
數據泄露一直在發生。企業和消費者都越來越意識到對其隱私的威脅以及對其保護的需求。美國方面,將于2020年1月生效的《加利福尼亞消費者隱私法案》(CCPA)正在啟動,以幫助個人控制其個人信息。同樣,于2018年實施的歐洲通用數據保護條例(GCPR)用于保護個人數據。這些可能是目前公認的最廣泛的保護措施,但還有幾十項正在進行中。
發生數據泄露時,通常是因為策略執行失敗。DevOps團隊需要能夠證明安全性,顯示策略的實施方式,向審核和安全團隊明確表示已經實施了數據保護,并且在需要的地方阻止了訪問。誰有權訪問私人數據?策略定義了這種訪問權限,但是無法執行該策略通常是人為錯誤的直接結果。有了自動護欄,現代應用程序就更有可能既安全又合規,通過消除無法預料的結果的可能性,并限制對非常有限和可控制的可能性的訪問。
簡而言之,人類無法跟上這種發展。靜態策略無法解決問題。事情可能以各種方式出錯,但主要只有幾種方式。云原生的范圍只會使這些問題復雜化,而唯一的解決方法就是將策略作為代碼。但是,審核員和IT安全/合規團隊并不是編程人員,與審核員一起研究代碼如何解決策略是浪費時間,并且與Kubernetes的速度和自動化直接沖突。當人們過渡到新的即代碼解決方案以實現新堆棧中的安全性時,簡單的監視、驗證以及證明策略能夠達到預期效果的能力將至關重要。
結語
隨著創新的速度和自動化帶來的日益復雜性,現在到了網絡安全的關鍵時刻。為了幫助開發人員更快地發展新世界并改善他們的安全狀況,Adobe、Atlassian、CapitalOne、Chef、Google、Microsoft、Goldman Sachs、Cisco和Styra等公司目前正在為整個策略和授權支持事實上的標準新的應用程序開發堆棧,即開源項目Open Policy Agent(OPA)。OPA為云原生環境提供基于策略的控制,從而為管理員提供了整個堆棧的靈活、細粒度的控制。OPA之類的工具為云原生,高度自動化的世界提供了必要的框架。開源社區正在響應云原生應用程序體系結構中策略和授權的趨勢,并采取措施使企業和消費者的部署更加安全。
版權聲明:本文為企業網D1Net編譯,轉載需注明出處為:企業網D1Net,如果不注明出處,企業網D1Net將保留追究其法律責任的權利。