訪問控制系統的設計 Esoft ACL

2021-09-30 02:11:14 字數 2800 閱讀 9719

esoft-acl介紹

我在開發

esoft-xpcms

及esoft-myoffice1.0

過程中,對訪問控制系統的設計偏向個性化,即系統的每乙個應用都有自己的許可權控制體系,如

esoft-xpcms

的新聞發布、產品發布都有自己的許可權控制體系,

esoft-myoffice

中的論壇帖子管理、電子公告管理等也有自己的許可權控制體系,當要往

esoft-myoffice

中加入新的應用子系統時,又必須單獨為這個新應用設計許可權系統,這樣一方面增加了工作量,另一方面也給使用者的許可權分配與維護帶來一定的難度。為了降低應用系統與許可權訪問控制系統的耦合度,提高系統的可擴充套件性,

esoft-acl

應運而生。通過

esoft-acl

可實現對所有應用系統的統一訪問控制.在

esoft-acl

中,訪問控制系統可分解為許可權資源、許可權控制型別、角色三都之間的組合關係。

許可權資源:指的是許可權要控制的資源物件,如我們要為論壇帖子管理設立許可權,那麼這裡的論壇帖子就是許可權資源;再如**資訊發布,我們要控制不同人員對不同欄目的維護許可權,這裡的欄目也是許可權資源。在

esoft-acl

中,每乙個許可權資源都要用唯一識別符號來表示。許可權資源根據是否具有子分類可以分成兩種,一種是沒有子分類的許可權資源,一種是有子分類的許可權資源。沒有子分類的許可權資源如「意見建議」,有子分類的許可權資源如「**欄目」,「**欄目」這類資源有樹狀結構的分類,不同的使用者對不同的分類可能享有不同的許可權。 ?

許可權控制型別:指的是許可權控制訪問的介面型別,是許可權資源的動作型別,如新增、刪除、修改或其它動作。許可權控制型別在特定的許可權資源環境下具有包含關係,如在「**資訊」這個許可權資源裡,「修改」許可權控制型別就應包含「瀏覽」許可權。在

esoft-acl

中,每乙個許可權控制型別都要用唯一識別符號來表示。

使用者:許可權主體的最小單位,是角色、群組的基本組成元素,乙個使用者可以同時具備多種角色。

角色:使用者在各種場合下,都會扮演具有一定權利與義務的角色。角色是許可權的最直接主體,使用者是否具有訪問許可權資源的許可權就要看其所扮演的角色是否被分配訪問許可權資源的許可權。角色可以分為三種型別,一種是超級使用者型別,一種是基礎角色型別,還有一種是使用者自定義型別,屬於超級使用者型別的則不經過

esoft-acl

系統驗證,直接享有系統所有許可權;基礎角色是系統不可少的角色,使用者不可以刪除;自定義型別的角色則是由使用者自由定製,可以自由修改或刪除。

群組:指的是一群具有多種角色的使用者群體,乙個群組可以具有多種角色,多個使用者可以組成乙個群組,屬於該群組的使用者具備該群組中所有角色所具備許可權的並集。如「開發部」這個群組裡有

a使用者,

b使用者,

c使用者,同時「開發部」具有「公司成員」、「開發部成員」、「技術員」這三種角色,那麼a、

b、c三個使用者就具有「公司成員」、「開發部成員」、「技術員」這三種角色所享有的訪問應用系統許可權的並集。

許可權:指的是角色、許可權資源、許可權控制型別三者的線性關係,表現為在某種許可權資源環境下,某些角色在某種許可權控制型別上享有訪問或操作許可權。

esoft-acl

中,許可權交叉是採用並集處理,如上圖,假設某個使用者具有角色

a、角色

b、角色

c三種角色,那麼該使用者所享有的許可權就是如上圖所示為三個角色的並集。

esoft-acl

中,乙個群組可以具有多種角色,

1個角色也可以分配給多個群組,二者是多對多的關係,同理,群組與使用者,角色與使用者都是多對多的關係。許可權資源與許可權控制型別也是多對多的關係。?

這裡的clients

就是使用者,使用者登陸系統後,要訪問應用系統

或者叫許可權資源,首先要進行身份驗證,身份驗證需要三組引數:角色陣列,要訪問的許可權資源**,許可權控制型別**。這三組引數通過

esoft-acl

提供的api

介面或webservices

介面,傳給

esoft-acl

核心處理,驗證成功,則返回

true

,允許訪問

,驗證失敗,返回

false

,拒絕訪問

。通過提供的

webservices

介面,可以實現跨伺服器的分布式驗證,為系統的企業級應用提供了介面。?

為了保證訪問控制系統的維護及使用者操作方便,在

esoft-acl

中統一了許可權訪問介面,即只對角色授予許可權,使用者與群組都要通過角色再能與許可權建立聯絡。因此使用者

a具備哪些許可權,要看使用者

a具有哪些角色,隸屬於哪些群組,這些群組又具有哪些角色,然後根據這些角色集合去得出相應的許可權並集。?

如上圖所示,假設現有應用系統:意見建議系統、**資訊發布系統等應用系統。那麼我們可以在

esoft-acl

中建立相應的兩種許可權資源——意見建議,**資訊發布,建立完許可權資源後,還要建立相關的許可權控制型別,新增相關控制介面,如瀏覽、新增、修改、刪除等。然後在這些許可權資源與許可權控制型別間建立對映關係,從而形成真正的許可權(

privilege

)。在建立對映過程中,有些許可權資源要求許可權控制型別之間存在包含關係,如在意見建議系統中,要修改意見建議,首先就必須具備瀏覽意見建議許可權,因此可以設定意見建議中,修改許可權包含瀏覽許可權。

? ?

?

? ?

說明:圖中右邊的意見建議à刪除

[瀏覽、刪除自己發表,瀏覽自己發表

]表示意見建議許可權資源的刪除許可權中包含了瀏覽、刪除自己發表,瀏覽自己發表其他三種許可權。 ?

?

控制系統設計 非線性控制系統設計

控制設計的目標可以敘述如下 對於給定的被控物理系統和系統期望性態的規範,構造反饋控制規律,使得系統呈現出期望的性態。兩類基本的非線性控制問題 非線性調節和非線性跟蹤 非線性控制所期望的性態 構造非線性控制器的基本問題 可利用的非線性控制器設計方法。1.1.鎮定問題 漸近鎮定問題 給定由方程 描述的非...

MySQL訪問控制系統入門

連線時驗證 使用有效的使用者名稱和密碼來進行登入操作 執行時驗證 每個需要執行的sql語句,mysql會檢查登入的使用者是否具有偶足夠的許可權來執行該語句。mysql資料庫包含5個主要的授權表 user表 包含使用者賬戶和全域性許可權列。我們登入所用到的使用者資訊都儲存在這兒。d b 表 包含資料庫...

TACACS 終端訪問控制器訪問控制系統

1 開啟全域性模式下的認證 xnet configure terminal xnet config aaa authentication enable weil local xnet config aaa authentication login weil local xnet config end...