En 400-6655-581
5
返回列表
> 資源中心 > 零信任 | 零信任架構(gòu)和訪問控制模型ABAC

零信任 | 零信任架構(gòu)和訪問控制模型ABAC

2020-05-08瀏覽次數(shù):944

近幾年,權(quán)限訪問控制模型被反復(fù)提及,目前常用的是RBAC(Role-Based Access Control),RBAC是迄今為止最為普及的權(quán)限設(shè)計(jì)模型,其優(yōu)點(diǎn)是簡單,實(shí)現(xiàn)起來非常容易。


但是隨著授權(quán)需求復(fù)雜度的提升和對(duì)控制邏輯靈活性的高度要求,ABAC(attribute-based access control)訪問控制模型將會(huì)越來越普及。近期火爆的零信任架構(gòu)里,ABAC模型就比RBAC更加合適。


ABAC既然是針對(duì)屬性(attributes)的,那我們先來看看它一般是針對(duì)哪些屬性進(jìn)行授權(quán)控制的。屬性可以是任意的對(duì)象,一般會(huì)涉及的屬性主要是以下四類:


1

訪問主體屬性:訪問者自帶的屬性,比如年齡,性別,部門,角色等;

2


動(dòng)作屬性:比如讀取,刪除,查看等;

3


對(duì)象屬性:被訪問對(duì)象的屬性,比如一條記錄的修改時(shí)間,創(chuàng)建者等;

4


環(huán)境屬性:比如時(shí)間信息,地理位置信息,訪問平臺(tái)信息等。


基于屬性,ABAC可以設(shè)置很多靈活的策略來進(jìn)行訪問的控制,比如:


1

當(dāng)一個(gè)文檔的所屬部門跟用戶的部門相同時(shí),用戶可以訪問這個(gè)文檔;

2

當(dāng)用戶是一個(gè)文檔的額擁有者并且文檔的狀態(tài)是草稿,用戶可以編輯這個(gè)文檔;

3

早上九點(diǎn)前禁止A部門的人訪問B系統(tǒng);

4

在除了上海以外的地方禁止以管理員身份訪問A系統(tǒng)。

看起來是不是挺強(qiáng)大的。


因?yàn)槟P褪腔诓呗?,而策略又是基于各種靈活的屬性動(dòng)態(tài)控制的,所以ABAC模型里通常有配置文件(XML、YAML等)或DSL配合規(guī)則解析引擎使用。規(guī)則引擎負(fù)責(zé)控制邏輯的處理,配置文件負(fù)責(zé)策略的定義和描述。


XACML(eXtensible Access Control Markup Language)就是基于ABAC訪問模型的一個(gè)實(shí)現(xiàn)(可能也是最復(fù)雜的一種實(shí)現(xiàn))。


在XACML的架構(gòu)中,有5種控制節(jié)點(diǎn):



典型的訪問請(qǐng)求是這樣流轉(zhuǎn)的:


1. 用戶訪問資源,發(fā)送原始請(qǐng)求,請(qǐng)求會(huì)被PEP攔截;

2. PEP把請(qǐng)求轉(zhuǎn)換成一個(gè)XACML的訪問申請(qǐng)請(qǐng)求;

3. PEP把訪問申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)給PDP;

4. PDP根據(jù)策略配置對(duì)認(rèn)證請(qǐng)求進(jìn)行評(píng)估。策略保存在PRP,并由PAP維護(hù)。如果需要采集屬性信息,還會(huì)從PIP收集屬性;

5. PDP收到訪問申請(qǐng)請(qǐng)求的結(jié)果(允許,禁止)并發(fā)送給PEP;

6. PEP根據(jù)收到的信息,允許或者禁止用戶訪問資源。


文字太多,請(qǐng)看圖:


我們?cè)賮砜匆幌翧BAC訪問控制模型和零信任架構(gòu)的結(jié)合點(diǎn),從Gartner提供的報(bào)告中,我們可以看到典型的零信任架構(gòu)圖如下:



SDP Gateway是用于做訪問攔截和訪問代理,這個(gè)跟XACML里的PEP功能類似。


SDP Controller是做訪問控制的策略定義和執(zhí)行,這個(gè)則是包含了XACML里除了PEP以外的節(jié)點(diǎn)的功能。


ABAC可以說是縮小版的零信任模型。


零信任架構(gòu)是想解決最小化授權(quán)、策略集中化管理、動(dòng)態(tài)授權(quán)控制、自適應(yīng)授權(quán)控制等問題。這些功能的實(shí)現(xiàn)跟ABAC權(quán)限控制模型不謀而合(也有廠商的零信任架構(gòu)是基于ABAC和RBAC兩種授權(quán)控制模型結(jié)合實(shí)現(xiàn)的)。


隨著零信任架構(gòu)的大放光彩,ABAC授權(quán)模型也將被大家所熟知。