精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

當前位置:云計算云安全 → 正文

構建云原生權限的5個最佳實踐

責任編輯:cres 作者:Weis |來源:企業網D1Net  2022-05-13 13:57:11 原創文章 企業網D1Net

基于云原生/微服務的產品很復雜,為這些產品構建訪問控制和管理權限也很復雜。而且每次拉取請求只會讓情況變得更糟。大多數開發人員最終都會為他們的產品多次構建授權或訪問控制,他們被迫根據每個新客戶、產品或安全需求進行重構。為了讓人們的工作和生活更輕松,需要了解構建云原生權限帶來的獨特挑戰,并了解構建云原生權限的五個最佳實踐,這些實踐可以為開發人員減少很多麻煩。
 
應用程序和訪問權限已更改
 
開發人員在過去使用帶有授權或訪問控制的單一框架(如Django或Spring)來構建授權,但當創建云原生應用程序時,這些不再適用。
 
這有幾個原因。首先,應用程序本身不再是單一的——它們基于微服務并且正在變得高度分散。當開發人員需要合并部署在邊緣,并且通常也需要訪問控制的設備或實例時,這一點也值得引起注意。
 
其次,云原生應用程序往往需要集成第三方服務(例如計費、身份驗證、數據庫、分析等),并且除了開發人員自己的應用程序的微服務之外,還需要能夠控制對它們的訪問。
 
第三,更加動態和分布式的應用程序需要使用一堆不同的授權模型(例如RBAC、ReBAC、ABAC),這些模型基于多個數據源和越來越復雜的規則。最后,安全、隱私和合規性需求也在上升(面對日益復雜的網絡威脅)并且變得非常復雜。開發人員發現自己不僅要管理誰應該訪問數據,還要管理數據在不同服務之間的傳播方式。
 
授權的現實
 
所有這些新需求都要求在考慮授權時采用不同的思維方式:
 
·授權不再是事后事項,必須提前計劃。
 
·授權是一項持續的努力,而不是一次性解決的問題。它必須與產品一起不斷發展。
 
·授權是客戶體驗的關鍵,因為它會影響用戶連接和邀請他人使用產品的方式。如果體驗不好,他們不會喜歡。
 
·授權連接到更大的身份和訪問管理空間。
 
構建云原生權限的5個最佳實踐
 
為了處理所有這些更改,有一些最佳實踐可以幫助開發人員構建云原生權限,并有時間實際開發功能,而不是在處理權限方面不堪重負。
 
(1)解耦策略和代碼
 
構建云原生權限的最重要實踐之一是策略和代碼的解耦。將授權層的代碼與應用程序代碼本身混合在一起可能會產生很大的問題。更重要的是,它造成了在不同微服務之間復制代碼時難以升級、添加功能和整體監控代碼的情況。每一項更改都需要重構大量代碼,這些代碼只會隨著這些微服務的發展而彼此偏離得更遠。
 
這可以通過(在理想情況下)創建一個單獨的授權微服務將策略與代碼解耦來避免這種情況,其他服務將使用該微服務來滿足它們的授權需求。例如,開放策略管理或Spice DB等開源策略/權限引擎允許開發人員在單獨的服務中管理授權。
 
(2)事件驅動
 
開發人員希望正在構建的應用程序是動態的。應用程序通常包括用戶邀請、角色分配或使用第三方數據源等功能——所有這些都應該實時管理。如果沒有這種能力,做出授權決策的能力將顯著降低。
 
這要求開發人員將授權層設計為事件驅動的。他們希望創建一個現實,每次發生影響授權的事件時,它都會立即通過系統傳遞,以確保授權層了解它,并與應用程序和任何相關的第三方數據服務保持同步。
 
在理想情況下,為了實現這一點,開發人員將授權數據與應用程序數據分離(因為并非所有與應用程序相關的數據都與授權相關,反之亦然),在授權層中創建一個精益模型,然后通過實時事件使其與應用程序和其他源保持同步。
 
例如,開放策略管理層是一個開源項目,可以使開放策略管理成為事件驅動的。這使開發人員可以響應策略和數據更改,向其代理推送實時更新,并使開放策略達到實時應用程序所需的速度。
 
(3)利益相關者的后臺集成
 
授權層是產品本身的一部分,在以產品為中心的企業中,有各種利益相關者需要能夠連接到訪問控制體驗。與開發人員一起,這些包括DevOps、產品經理、安全、合規、銷售、營銷等。在構建授權層時,希望通過后臺系統為這些不同的利益相關者提供控制和接口。這要求從一開始就考慮不同利益相關者從訪問控制界面到產品的需求。應該讓每個人都滿意。
 
(4)客戶接口
 
與考慮利益相關者要求的方式類似,開發人員還需要考慮最終用戶/客戶。授權不僅與管理產品有關,而且與產品的最終用戶有關。例如,如果用戶需要訪問他們自己的審計日志(幾乎每個B2B應用程序用戶都需要),他們應該能夠輕松地看到在產品中所做的事情。提前認識到這一需求需要構建授權層,使其能夠鎖定滿足最終用戶需求的不同接口。
 
(5)GitOps
 
因此創建了一個單獨的微服務來管理權限,并且能夠以事件驅動的方式向它提供更新。現在如何管理這些更改、應用版本、應用各種制衡,并確保微服務的代碼和數據符合需求和要求?其答案是GitOps。
 
使用GitOps可以讓開發人員為每個版本更改創建一個拉取請求。然后,當開發人員更新產品及其訪問控制功能時,他們可以使用新代碼推動提交,讓這些代碼通過必要的測試和檢查,并將它們應用到授權層。
 
云原生權限的未來發展
 
隨著復雜性的增加以及客戶和安全需求的不斷涌現,以一種為未來做好準備且不需要大量重構或重寫的方式構建產品的訪問控制至關重要。為授權創建單獨的微服務,將其設計為事件驅動,為各種利益相關者和客戶提供控制和接口,并使用GitOps使開發人員能夠創建盡可能面向未來的產品,并防止他們不得不多次重建授權層,而無論需求如何。
 
版權聲明:本文為企業網D1Net編譯,轉載需注明出處為:企業網D1Net,如果不注明出處,企業網D1Net將保留追究其法律責任的權利。

關鍵字:云計算云原生云安全

原創文章 企業網D1Net

x 構建云原生權限的5個最佳實踐 掃一掃
分享本文到朋友圈
當前位置:云計算云安全 → 正文

構建云原生權限的5個最佳實踐

責任編輯:cres 作者:Weis |來源:企業網D1Net  2022-05-13 13:57:11 原創文章 企業網D1Net

基于云原生/微服務的產品很復雜,為這些產品構建訪問控制和管理權限也很復雜。而且每次拉取請求只會讓情況變得更糟。大多數開發人員最終都會為他們的產品多次構建授權或訪問控制,他們被迫根據每個新客戶、產品或安全需求進行重構。為了讓人們的工作和生活更輕松,需要了解構建云原生權限帶來的獨特挑戰,并了解構建云原生權限的五個最佳實踐,這些實踐可以為開發人員減少很多麻煩。
 
應用程序和訪問權限已更改
 
開發人員在過去使用帶有授權或訪問控制的單一框架(如Django或Spring)來構建授權,但當創建云原生應用程序時,這些不再適用。
 
這有幾個原因。首先,應用程序本身不再是單一的——它們基于微服務并且正在變得高度分散。當開發人員需要合并部署在邊緣,并且通常也需要訪問控制的設備或實例時,這一點也值得引起注意。
 
其次,云原生應用程序往往需要集成第三方服務(例如計費、身份驗證、數據庫、分析等),并且除了開發人員自己的應用程序的微服務之外,還需要能夠控制對它們的訪問。
 
第三,更加動態和分布式的應用程序需要使用一堆不同的授權模型(例如RBAC、ReBAC、ABAC),這些模型基于多個數據源和越來越復雜的規則。最后,安全、隱私和合規性需求也在上升(面對日益復雜的網絡威脅)并且變得非常復雜。開發人員發現自己不僅要管理誰應該訪問數據,還要管理數據在不同服務之間的傳播方式。
 
授權的現實
 
所有這些新需求都要求在考慮授權時采用不同的思維方式:
 
·授權不再是事后事項,必須提前計劃。
 
·授權是一項持續的努力,而不是一次性解決的問題。它必須與產品一起不斷發展。
 
·授權是客戶體驗的關鍵,因為它會影響用戶連接和邀請他人使用產品的方式。如果體驗不好,他們不會喜歡。
 
·授權連接到更大的身份和訪問管理空間。
 
構建云原生權限的5個最佳實踐
 
為了處理所有這些更改,有一些最佳實踐可以幫助開發人員構建云原生權限,并有時間實際開發功能,而不是在處理權限方面不堪重負。
 
(1)解耦策略和代碼
 
構建云原生權限的最重要實踐之一是策略和代碼的解耦。將授權層的代碼與應用程序代碼本身混合在一起可能會產生很大的問題。更重要的是,它造成了在不同微服務之間復制代碼時難以升級、添加功能和整體監控代碼的情況。每一項更改都需要重構大量代碼,這些代碼只會隨著這些微服務的發展而彼此偏離得更遠。
 
這可以通過(在理想情況下)創建一個單獨的授權微服務將策略與代碼解耦來避免這種情況,其他服務將使用該微服務來滿足它們的授權需求。例如,開放策略管理或Spice DB等開源策略/權限引擎允許開發人員在單獨的服務中管理授權。
 
(2)事件驅動
 
開發人員希望正在構建的應用程序是動態的。應用程序通常包括用戶邀請、角色分配或使用第三方數據源等功能——所有這些都應該實時管理。如果沒有這種能力,做出授權決策的能力將顯著降低。
 
這要求開發人員將授權層設計為事件驅動的。他們希望創建一個現實,每次發生影響授權的事件時,它都會立即通過系統傳遞,以確保授權層了解它,并與應用程序和任何相關的第三方數據服務保持同步。
 
在理想情況下,為了實現這一點,開發人員將授權數據與應用程序數據分離(因為并非所有與應用程序相關的數據都與授權相關,反之亦然),在授權層中創建一個精益模型,然后通過實時事件使其與應用程序和其他源保持同步。
 
例如,開放策略管理層是一個開源項目,可以使開放策略管理成為事件驅動的。這使開發人員可以響應策略和數據更改,向其代理推送實時更新,并使開放策略達到實時應用程序所需的速度。
 
(3)利益相關者的后臺集成
 
授權層是產品本身的一部分,在以產品為中心的企業中,有各種利益相關者需要能夠連接到訪問控制體驗。與開發人員一起,這些包括DevOps、產品經理、安全、合規、銷售、營銷等。在構建授權層時,希望通過后臺系統為這些不同的利益相關者提供控制和接口。這要求從一開始就考慮不同利益相關者從訪問控制界面到產品的需求。應該讓每個人都滿意。
 
(4)客戶接口
 
與考慮利益相關者要求的方式類似,開發人員還需要考慮最終用戶/客戶。授權不僅與管理產品有關,而且與產品的最終用戶有關。例如,如果用戶需要訪問他們自己的審計日志(幾乎每個B2B應用程序用戶都需要),他們應該能夠輕松地看到在產品中所做的事情。提前認識到這一需求需要構建授權層,使其能夠鎖定滿足最終用戶需求的不同接口。
 
(5)GitOps
 
因此創建了一個單獨的微服務來管理權限,并且能夠以事件驅動的方式向它提供更新。現在如何管理這些更改、應用版本、應用各種制衡,并確保微服務的代碼和數據符合需求和要求?其答案是GitOps。
 
使用GitOps可以讓開發人員為每個版本更改創建一個拉取請求。然后,當開發人員更新產品及其訪問控制功能時,他們可以使用新代碼推動提交,讓這些代碼通過必要的測試和檢查,并將它們應用到授權層。
 
云原生權限的未來發展
 
隨著復雜性的增加以及客戶和安全需求的不斷涌現,以一種為未來做好準備且不需要大量重構或重寫的方式構建產品的訪問控制至關重要。為授權創建單獨的微服務,將其設計為事件驅動,為各種利益相關者和客戶提供控制和接口,并使用GitOps使開發人員能夠創建盡可能面向未來的產品,并防止他們不得不多次重建授權層,而無論需求如何。
 
版權聲明:本文為企業網D1Net編譯,轉載需注明出處為:企業網D1Net,如果不注明出處,企業網D1Net將保留追究其法律責任的權利。

關鍵字:云計算云原生云安全

原創文章 企業網D1Net

電子周刊
回到頂部

關于我們聯系我們版權聲明隱私條款廣告服務友情鏈接投稿中心招賢納士

企業網版權所有 ©2010-2024 京ICP備09108050號-6 京公網安備 11010502049343號

^
  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 名山县| 保定市| 诸城市| 大渡口区| 宜州市| 尉犁县| 凤冈县| 惠州市| 凤山县| 明溪县| 高州市| 灌阳县| 厦门市| 灵石县| 平阴县| 苏尼特左旗| 会东县| 五莲县| 广宗县| 广宁县| 高雄市| 余干县| 平利县| 灌云县| 汤阴县| 上饶县| 光泽县| 进贤县| 蚌埠市| 山东省| 大连市| 锦州市| 个旧市| 天水市| 阜新| 东台市| 贵州省| 都安| 安丘市| 灵山县| 仁寿县|