数据权限设计:从RBAC到ABAC的演变
本文來說下數(shù)據(jù)權(quán)限設(shè)計之從RBAC到ABAC的演變
文章目錄
- 概述
- 數(shù)據(jù)權(quán)限的發(fā)展歷史
- 從RBAC到ABAC
- 本文小結(jié)
概述
名詞解釋
- ACL:Access Control List
- RBAC:Role-Based Access Control
- ABAC:Attribute-Based Access Control
權(quán)限設(shè)計從ACL和RBAC發(fā)展而來,ABAC現(xiàn)在已經(jīng)成為各組織的標準模式,以確保員工只有在適當?shù)那闆r下才能獲得他們需要的信息。
舉一個制造業(yè)的例子,就是物聯(lián)網(wǎng)數(shù)據(jù)中心。制造商正在收集物聯(lián)網(wǎng)設(shè)備的數(shù)據(jù),以提高生產(chǎn)效率。通過收集工廠現(xiàn)場出現(xiàn)的不合格事件的數(shù)據(jù)點,制造商可以緩解造過程中的潛在問題,確保有缺陷的產(chǎn)品永遠不會到達客戶手中。然而,這些都是企業(yè)不希望向競爭對手傳播的專有信息,只有參與制造過程的特定人員需要這些信息。
為了安全地共享和使用數(shù)據(jù),用于治療病人、改善制造過程或跨行業(yè)的各種其他用途,所有組織都需要一個現(xiàn)代數(shù)據(jù)訪問控制模型。在討論現(xiàn)代訪問控制之前,我們有必要先看看訪問控制是如何發(fā)展到現(xiàn)在這個地步的。
數(shù)據(jù)權(quán)限的發(fā)展歷史
隨著時代的發(fā)展,每個組織需要保護的信息量迅速增加。而以前需要保護的數(shù)據(jù)少時,訪問控制模式就簡單。
在過去,數(shù)據(jù)訪問控制被可以納為三個階段。首先,我們有訪問控制列表(ACL),這是一種早期的數(shù)字訪問控制形式,允許根據(jù)用戶身份訪問數(shù)據(jù)。最終,組織要求加強對數(shù)據(jù)的保護,從而產(chǎn)生了一種新的訪問控制模式,即基于角色的訪問控制(RBAC)。
角色使管理員能夠?qū)⒂脩舴峙浣o不同的組,并賦予特定的訪問權(quán)限。角色通常是基于工作職能、位置和頭銜,以方便用戶訪問信息。由于角色的簡單性,開發(fā)人員在執(zhí)行內(nèi)部應(yīng)用程序訪問檢查時,可以使用各種編碼技術(shù),很容易參考。RBAC的工作效果很好,直到組織和應(yīng)用的增長,數(shù)據(jù)量成倍增長,數(shù)據(jù)、微服務(wù)和API的保護需求出現(xiàn)了。
這張圖是一個僅針對三個用戶的 "角色爆炸 "的例子。下圖角色為一家擁有1萬名員工的企業(yè)。
隨著這種指數(shù)級的增長,所需的角色數(shù)量變得無法管理,導(dǎo)致角色爆炸和職責(zé)分離(SoD)失敗。最后,一種新的、更動態(tài)的訪問控制形式被引入,稱為基于屬性的訪問控制(ABAC)。
從RBAC到ABAC
從RBAC到ABAC,數(shù)據(jù)訪問控制的演變
在數(shù)字時代,數(shù)據(jù)訪問控制最好采用ABAC模型。與RBAC模型不同,ABAC可以使用用戶屬性、動作屬性、上下文屬性(如時間、設(shè)備和位置)、資源屬性(如記錄的敏感度)等等。事實上,我們可以使用多種屬性(數(shù)據(jù))來描述用戶、資源和上下文,這使得ABAC具有多維度,幾乎可以支持任何訪問控制場景。
我們可以看一下策略
ABAC提供了一個多維度的訪問控制系統(tǒng)----通過使用屬性和策略----防止角色爆炸,提高可擴展性,建立關(guān)系,消除SoD沖突,并將授權(quán)外部化,便于管理控制。
這在一個醫(yī)療場景中意味著什么(基于上面的策略),授權(quán)決策過程,即用戶是否應(yīng)該被授予訪問資源的權(quán)限,是一個動態(tài)的決策過程,要對整個上下文進行評估。
這個場景中的屬性來自于多個來源。有些是來自應(yīng)用發(fā)送的,這些屬性通常是用戶和環(huán)境相關(guān)的屬性,如用戶的標識符、認證強度(保證級別)、資源標識符(病歷#123)和操作(查看、編輯等)。這些關(guān)鍵屬性會觸發(fā)策略,然后評估規(guī)則。
授權(quán)引擎現(xiàn)在收集決策過程完成所需的屬性。這些屬性值既來自于病歷#123本身,也來自于其他來源。這可能包括從終端用戶的保險單中收集數(shù)據(jù),驗證同意書,或者委托或檢查保險代理人的合同有效性。在做出授權(quán)決定之前,所有這些方面都會被考慮進去。
除了利用屬性來簡單地拒絕或授予數(shù)據(jù)訪問權(quán)限外,ABAC還利用數(shù)據(jù)掩蓋來保護關(guān)鍵信息,同時也允許共享和利用這些信息。它通過掩蓋或完全掩蓋敏感的數(shù)據(jù)項目,如醫(yī)院患者的保險單號或臨床試驗參與者的姓名等,來實現(xiàn)對敏感數(shù)據(jù)的遮蓋。
數(shù)據(jù)訪問控制已經(jīng)發(fā)展到可以滿足組織在無限數(shù)據(jù)時代面臨的數(shù)據(jù)保護挑戰(zhàn)。由ACL和RBAC演變而來,ABAC現(xiàn)在已經(jīng)成為組織的標準模式,以確保員工只在合適的情況下才能訪問他們需要的信息。
本文小結(jié)
本文介紹了數(shù)據(jù)權(quán)限設(shè)計之從RBAC到ABAC的演變
總結(jié)
以上是生活随笔為你收集整理的数据权限设计:从RBAC到ABAC的演变的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一些基础电路和物理量在线换算公式
- 下一篇: 为什么服务器运行失败怎么回事,服务器运行