複製鏈接
請複製以下鏈接發送給好友

abac

鎖定
ABAC是“下一代”授權模型,在結構化語言中使用屬性作為構建基石來定義並實施訪問控制,提供上下文相關細粒度動態訪問控制服務 [1]  。ABAC是一種為解決行業分佈式應用可信關係訪問控制模型,也表示詞語的一種構成形式。
中文名
基於屬性的訪問控制
外文名
ABAC(Attribute Based Access Control)
釋    義
為解決行業分佈式應用可信關係訪問控制模型

abac訪問控制

ABAC是一種為解決行業分佈式應用可信關係訪問控制模型,它利用相關實體(如主體、客體、環境)的屬性作為授權的基礎來研究如何進行訪問控制。基於這樣的目的,可將實體的屬性分為主體屬性、客體屬性和環境屬性,這與傳統的基於身份的訪問控制(IBAC)不同。在基於屬性的訪問控制中,訪問判定是基於請求者和資源具有的屬性,請求者和資源在 ABAC 中通過特性來標識,而不像 IBAC 那樣只通過 ID 來標識,這使得 ABAC 具有足夠的靈活性和可擴展性,同時使得安全的匿名訪問成為可能,這在大型分佈式環境下是十分重要的。

abac訪問對象

在ABAC中,主體是對客體(資源)實施訪問行為的實體,如用户、服務、通信實體等;
主體有定義其身份和特性的屬性,包括主體的身份、角色、職位、能力、位置、行政關係以及CA證書等,如用户這一主體,它可以以所處行業中用户屬性特徵為基礎,將這些用户的某些屬性進行標準化定義,包括某用户所屬的部門、職務、主管業務等;
客體是被主體操作的實體,如文件、數據、服務、系統設備等,客體屬性包括身份、位置(URL) 、大小、值,這些屬性可從客體的“元數據”中獲取,同樣也可以由對其操作的主體來繼承。這就是説,客體屬性與主體屬性具有一定的相關性;
環境屬性是與事務(或業務)處理關聯的屬性,它通常與身份無關,但適用於授權決策,如時間、日期、系統狀態、安全級別等。

abac與ABAC、RBAC的區別

ABAC 與 RBAC 顯著不同之處在於其對請求者、被請求資源通過屬性來描述,而一些限制條件同樣也使用環境屬性來描述,這就是説在ABAC 中所有實體的描述都統一採用同一種方式——屬性來進行描述,不同的是不同實體的屬性權重可能不同,這使得訪問控制判定功能在判定時,對訪問控制判定依據能夠採取統一處理。同時,基於屬性的策略描述也擺脱了基於身份的策略描述的限制,其能夠利用請求者所具有的一些屬性來決定是否賦予其訪問權限,在開放的環境下,訪問控制判定功能並不關心訪問者是誰(有時也可能根本無法獲取這類信息)。在系統運行過程中,屬性是一個易變量,而策略比較穩定,基於屬性的策略描述方式可以很好地將屬性管理和訪問判定相分離
基於角色的訪問控制(RBAC)通過引入角色中間元素,使得權限先經過角色進行聚合,然後再將權限分配給主體,通過這種方式可以簡化授權,可將角色信息看成是一種屬性,這樣 RBAC 就成為了ABAC 的一種單屬性特例。XACML 是一個基於 XML 的訪問控制標記語言,其採用訪問者、被請求資源、被請求行為和環境屬性來描述策略,是一個典型的在 ABAC 環境下的策略描述語言。針對ABAC 的研究大多集中在應用方面,而對其理論模型的研究較少,這使得ABAC 中很多概念沒有一個規範的定義。
參考資料