簡單來說,對於 abac 我們判斷乙個使用者是否能訪問某項資源,是對其很多不同屬性的計算而得到的。
訪問控制
訪問控制是資料安全的乙個基本組成部分,它規定了哪些人可以訪問和使用公司資訊與資源。通過身份驗證和授權,訪問控制策略可以確保使用者的真實身份,並且擁有訪問公司資料的相應許可權。訪問控制還適用於限制對園區、建築、房間和資料中心的物理訪問。工作原理
訪問控制通過驗證多種登入憑據以識別使用者身份,這些憑據包括使用者名稱和密碼、pin、生物識別掃瞄和安全令牌。許多訪問控制系統還包括多因素身份驗證,多因素身份驗證是一種需要使用多種身份驗證方法來驗證使用者身份的辦法。
驗證使用者身份後,訪問控制就會授予其相應級別的訪問許可權以及與該使用者憑據和 ip 位址相關的允許的操作。
訪問控制主要有四種型別。組織通常會根據其獨特的安全和合規要求,選擇行之有效的方法。這四種訪問控制模型分別是:
**自主訪問控制 (dac) **
採用這種方法時,受保護系統、資料或資源的所有者或管理員可以設定相關策略,規定誰可以訪問。
**強制訪問控制 (mac) **
這種非自主模型則會根據資訊放行來授予訪問許可權。**機構根據不同的安全級別來管理訪問許可權,這在**和軍事環境中非常常見。
**基於角色的訪問控制 (rbac) **
rbac 根據定義的業務功能而非個人使用者的身份來授予訪問許可權。這種方法的目標是為使用者提供適當的訪問許可權,使其只能夠訪問對其在組織內的角色而言有必要的資料。這種方法是基於角色分配、授權和許可權的複雜組合,使用非常廣泛。
基於屬性的訪問控制 (abac)
採用這種動態方法時,訪問則是基於分配給使用者和資源的一系列屬性和環境條件,例如時間和位置。
相關術語
attribute:屬性,用於表示 subject、object 或者 environment conditions 的特點,attribute 使用 key-value 的形式來儲存這些資訊,比如我在公司的 role 是 developer,role 是 key,developer 是 value,而我的小組暱稱袋熊,key 是 team,value 是 wombat。
subject:常常指代使用系統的人或者其他使用者(non-person entity,npe),比如說客戶端程式,訪問 api 的 client 或者移動裝置等等。當然乙個 subject 可以有多個的 attributes,就像使用者屬性這些我們曾經用過的名詞一樣。
object:指代我們這個 acm 需要管理的資源,比如檔案,比如某項記錄,比如某台機器或者某個**,任何你需要進行訪問控制的資源都可以稱為 object,同樣 object 也可以有多項屬性,比如袋熊組的桌子,或者洛克組的線上例項,我們也常常使用 resource 來描述這些資源,但是在 abac 的環境下,我們稱為 object。
operation:有了 object 有了 subject,自然就有了 subject 需要做的事情,比如檢視某條記錄,登入某台伺服器,使用某個 saas 服務進行報銷或者檢視候選人的作業。往往包括我們常說的讀、寫、修改、拷貝等等,一般 operation 是會表達在 request 中的,比如 http method。
policy:通過 subject、object 的 attribute 與 environment conditions 一起來判斷 subject 的請求是否能夠允許的關係表示,比如說:policy 可以用人類語言這樣表達,只有袋熊組的人才能訪問這幾台伺服器,或者只有在辦公室才能訪問這些資源,但對於機器來說,無非就是乙個判斷語句罷了。當然了,policy 可以是一堆這樣 boolean 邏輯判斷的組合,比如只有公司的正式員工、並且在公司的六樓區域的網路中,才能訪問某個服務。你可以使用 specification pattern 來實現 policy,其實沒那麼複雜。
environment conditions:表示目前進行的訪問請求發生時,的操作或情境的上下文。environment conditions 常常用來描述環境特徵,是獨立於 subject 與 object 的,常用來描述系統的情況:比如時間,當前的安全等級,生產環境還是測試環境等等。
abac授權的步驟
使用者在攜帶自身的屬性值包括主題屬性,資源屬性,環境屬性,然後向資源傳送請求,授權引擎 會根據subject所攜帶的屬性進行判斷,然後會給出拒絕或者同意的結果給使用者,然後就可以訪問資源。
使用者訪問資源,傳送原始請求。
請求傳送到策略實施點(pep),pep構建xacml格式請求。
pep將xacml請求傳送到策略決策點(pdp)。
pdp根據xacml請求,查詢策略管理點(pap)中的策略檔案。
pdp從策略資訊點(pip)查詢策略檔案中需要的屬性值(主體、資源、環境屬性)。
pdp將決策結果(permit、deny、不確定、不適用)返回給pep。
pep傳送請求到資源,並把資源返回給使用者。
技術優勢
無需改造使用者端和服務端
煉石ciphergateway無需修改原有應用的使用者端和服務端,通過短時間部署即可「透明」實現和補充業務應用系統的abac能力,不需額外培訓使用者,即使發生問題,也可在分鐘級別時間內恢復應用使用,不會影響現有業務的正常運營,使上線切換風險降到最低。
能夠適應資料實時動態變化
面對資料頻繁變化,煉石ciphergateway從整體角度考慮,使abac功能能夠根據資料在不同階段的屬性配置相應的訪問控制策略,通過實時獲取請求者、環境和被訪問資料三要素的屬性資訊,觸發相應的訪問控制策略,從而實現訪問控制的動態管理,降低企業的管理和運營成本。
能夠適應跨應用的資料訪問控制
在企業應用大整合下,資料會在異構系統間流轉,而對於資料的訪問仍然由相應的應用各自進行管理。煉石ciphergateway的abac功能可以與資料的全生命週期相結合,將資料在流轉和使用過程中的各種狀態、所在應用環境等因素作為屬性進行管理,並進一步作為訪問控制策略的依據。
能夠適應資料保密性的要求
為保證服務端資料安全,除了需加強資料安全訪問控制外,還需考慮進行加密保護。煉石ciphergateway的abac功能可以根據企業敏感資料的屬性特徵值,使用專利加密技術,對資料進行有選擇的加密,而不是「一刀切」加密,在不影響效能和正常工作效率的情況下,增強企業資料的安全性。
學習筆記15
響應式 media 不同的大小 執行不行的css 寫上 float left 預設不會屏佔百分百,寫上多少就是多少 但是無法滿足全屏鋪滿 min left 900x 的意思是 當寬度小於這個值時候 底部出現滾動條 position absolute 這麼寫 會鋪滿螢幕 只有加上 left right...
每日學習筆記 15
今天接著讀 mysql技術內幕innodb儲存引擎 的第5章關於索引這部分內容。什麼時候使用b 樹索引?並不是在所有的查詢條件下出現的列都需要新增索引,作者指出當訪問表中很少一部分行時,使用b 樹索引才有意義。對於像性別,地區,型別等字段,它們的可取值範圍很小,即所謂低選擇性,比如select fr...
java學習筆記 15
1 list的子類 掌握 1 list的子類特點 arraylist 底層資料結構是陣列,查詢快,增刪慢 執行緒不安全,效率高 vector 底層資料結構是陣列,查詢快,增刪慢 執行緒安全,效率低 linkedlist 底層資料結構是鍊錶,查詢慢,增刪快 執行緒不安全,效率高 2 arraylist...