ThroughoutCMS技術共享系列(3):三維的權限抽象模型-PK訪問控制設計的軟件實現

       基於角色的權限模型包括以下元素:

1)部門(組織,用戶組也作爲一種特殊的部門)。

       一組用戶的集合,具有統一的角色和數據範圍,例如仿真數據庫中的設計部門。部門沒有獨立的登錄帳號和登錄口令,不記錄日誌信息。部門是一個樹狀結構(Tree),各個節點分別代表了獨立的部門,部門同時也是用戶的宿主,部門和用戶是多對多的數據關係,用戶和部門形成統一的用戶體系。

2)用戶,個體用戶的賬戶信息。

作爲一個獨立的操作人員,有其獨立的登錄帳號和登錄口令,其在系統中的活動將會被記錄到日誌系統,用戶通過角色來獲取可用操作許可列表,用戶通過數據範圍獲取可用訪問資源。用戶分爲系統用戶(處理業務的用戶)和訪問用戶(訪問者或買家)兩種類型,用戶狀態分爲初始、可用、停用、刪除等不同的狀態。

3)角色:一組功能列表。

角色充當用戶(部門)和功能之間的橋樑,用戶獲取某些操作許可必須通過特定的角色來獲取,而不能直接與功能交互。

4)功能(也指操作):某個特定系統操作。

       如創建、修改設計方案等,都是功能,功能也是一組樹狀結構(Tree),例如“設計數據管理”是一個大功能,同時“設計數據管理——>創建設計方案”又是一個子功能。系統中所有納入訪問控制體系的權限用戶操作都可以註冊到系統中來,統一管理。功能根據操作區域的不同,可以分爲多種類型:控件功能(一個頁面中的某個控件)、頁面功能(頁面是否被允許訪問)、模塊功能(特定的模塊是否被支持訪問);功能根據操作區域的不同,可以分爲以下類型:用戶自維護功能(例如我的工作臺-口令維護)、系統業務功能(例如設計人員)、工作流程功能(例如定義工作流步驟的操作)。角色和功能形成了系統訪問控制的模塊功能體系。

5)數據範圍(也稱資源),系統訪問客體。

在訪問控制中意味着當用戶具有一定操作功能的時候,能操作哪些數據,例如用戶允許生成報表功能,但是那些報表允許此用戶生成的問題。數據範圍依附於特定的操作功能,數據範圍可以是數據集合或者數據範圍規則(條件),數據範圍也形成了訪問控制中的訪問資源體系。

       歸納起來,用戶訪問控制可以有以下要素構成:

       用戶訪問控制=用戶體系(主)+模塊功能體系(謂)+訪問資源體系(賓);

       形成了三維的權限抽象模型,如下所示:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章