最近對就有系統人員許可權升級計劃――也談人員許可權的設計。
前言:
人員、機構、角色、許可權物件間組織關係的重新抽象;
人員、機構、角色、許可權;
這四個經過抽象的物件原型經過事實證明還是比較成功的;
這幾個物件不會有大的變動;
但是實際中也碰到了問題,就是這些物件之間關係的不確定性;
下面描述以下四個物件新的關係結構;
1 核心思想:
1。人員在系統中總是扮演某種角色的;
例如:小張在屬於辦公廳這個部門,以前我們都傾向於認為辦公廳聚合了小張。
其實考察一下實際情況,辦公廳下面有個辦公廳人員這個角色,而小張只是扮演了這個角色而已;
考慮一下如果當小長被調動另外一個部門時候那種抽象更容易處理。
2。業務邏輯希望面對的是系統中的角色,而非扮演角色的具體的人。
例如:以工作流示例,一個公文的下一步流轉的物件是組織部部長,他不關心誰扮演這個部長,人員許可權模組知道就行了。
2 抽象關係描述:
.人員和機構之間的松耦合(透過角色耦合)
目的:改變糟糕地人員和機構之間的強聚合關係。
人員和部門透過角色進行耦合;
人員和部門的關係可以容易的變化,不會產生大的影響。
.人員和角色間變成強聚合關係;
目的:強調人員在系統中必須扮演角色,起碼扮演某個機構的人員這個角色;
人員的角色又可以同時扮演的,也有互相排斥的。
排斥的角色就是不能同時扮演的,登入以後可以選擇的角色;
由管理員規定人員的那些角色是相互排斥的;
.機構和許可權點之間沒有直接關係;
目的:讓機構的抽象更清晰化,機構和許可權的關係透過角色體現;
.機構和角色之間強聚合關係;
目的:明確部門的作用是行使某種特定職能的。
說明:
部門和部門之間還有從屬關係;
部門可以專門設定部門管理員用於管理下級的機構和人員,使分級管理在模型上成為可能;
部門擁有的角色有寫是系統規定的,如:部門人員,部門管理員;
部門可以自定義自己的角色,並由部門管理員管理;
.角色之間的繼承關係;
目的:更好的處理角色和許可權點之間的關係;
說明:
角色之間擁有繼承關係如上圖所示。
可以被繼承的角色是由系統管理員制定的,部門管理員不能制定;
3 總結:
經過考慮,我認為 人員、機構、角色、許可權 的關係應該做成可以改變的外掛,系統初始時候進行選擇不同組織方式;
也就是說,上文描述的 人員、機構、角色、許可權 的關係還有原有關係都做成的外掛,並不拋棄原有的人員許可權關係。
人員、機構、角色、許可權物件間組織關係的重新抽象;
人員、機構、角色、許可權;
這四個經過抽象的物件原型經過事實證明還是比較成功的;
這幾個物件不會有大的變動;
但是實際中也碰到了問題,就是這些物件之間關係的不確定性;
下面描述以下四個物件新的關係結構;
1 核心思想:
1。人員在系統中總是扮演某種角色的;
例如:小張在屬於辦公廳這個部門,以前我們都傾向於認為辦公廳聚合了小張。
其實考察一下實際情況,辦公廳下面有個辦公廳人員這個角色,而小張只是扮演了這個角色而已;
考慮一下如果當小長被調動另外一個部門時候那種抽象更容易處理。
2。業務邏輯希望面對的是系統中的角色,而非扮演角色的具體的人。
例如:以工作流示例,一個公文的下一步流轉的物件是組織部部長,他不關心誰扮演這個部長,人員許可權模組知道就行了。
2 抽象關係描述:
.人員和機構之間的松耦合(透過角色耦合)
目的:改變糟糕地人員和機構之間的強聚合關係。
人員和部門透過角色進行耦合;
人員和部門的關係可以容易的變化,不會產生大的影響。
.人員和角色間變成強聚合關係;
目的:強調人員在系統中必須扮演角色,起碼扮演某個機構的人員這個角色;
人員的角色又可以同時扮演的,也有互相排斥的。
排斥的角色就是不能同時扮演的,登入以後可以選擇的角色;
由管理員規定人員的那些角色是相互排斥的;
.機構和許可權點之間沒有直接關係;
目的:讓機構的抽象更清晰化,機構和許可權的關係透過角色體現;
.機構和角色之間強聚合關係;
目的:明確部門的作用是行使某種特定職能的。
說明:
部門和部門之間還有從屬關係;
部門可以專門設定部門管理員用於管理下級的機構和人員,使分級管理在模型上成為可能;
部門擁有的角色有寫是系統規定的,如:部門人員,部門管理員;
部門可以自定義自己的角色,並由部門管理員管理;
.角色之間的繼承關係;
目的:更好的處理角色和許可權點之間的關係;
說明:
角色之間擁有繼承關係如上圖所示。
可以被繼承的角色是由系統管理員制定的,部門管理員不能制定;
3 總結:
經過考慮,我認為 人員、機構、角色、許可權 的關係應該做成可以改變的外掛,系統初始時候進行選擇不同組織方式;
也就是說,上文描述的 人員、機構、角色、許可權 的關係還有原有關係都做成的外掛,並不拋棄原有的人員許可權關係。
相關文章
- 許可權系統設計
- 許可權系統:許可權應用服務設計
- Confluence6對比系統管理員許可權和Confluence管理員許可權
- 許可權系統:6個許可權概念模型設計模型
- 許可權系統:許可權應用服務設計Tu
- Oracle的物件許可權、角色許可權、系統許可權Oracle物件
- 使用者許可權設計(三)——通用資料許可權管理系統設計
- 許可權系統設計(2)--operation
- 許可權系統設計(3)-- subject
- 許可權系統設計(4)--resource
- 許可權系統設計--概論
- 取消 root 級管理員的 root 許可權
- 關於許可權系統的設計
- .NET 程式許可權控制、獲得管理員許可權程式碼
- 許可權系統:一文搞懂功能許可權、資料許可權
- 續:關於許可權系統的設計
- Linux提權-許可權升級Linux
- Android系統許可權和root許可權Android
- 程式請求管理員許可權
- windows7管理員許可權Windows
- win10系統如何開啟管理員許可權 win10開啟管理員許可權的圖文教程Win10
- [LotusScript] 重新整理一般人員的ACL許可權
- 許可權系統設計(1)--基本模式模式
- 許可權系統設計(5)--動態性
- 系統許可權資料庫設計方案資料庫
- JavaWeb許可權設計原理JavaWeb
- Oracle 使用者、物件許可權、系統許可權Oracle物件
- 關於系統許可權的設計-位操作
- win10取得管理員許可權怎麼獲取 win10計算機管理員許可權獲得方法Win10計算機
- windows10管理員許可權怎麼設定_win10電腦設定管理員許可權的步驟WindowsWin10
- win10管理員許可權怎麼取消_win10如何關掉管理員許可權Win10
- w10如何獲得管理員許可權_win10怎麼取得管理員許可權Win10
- 如何獲取最高管理員許可權 win10教育版最高管理員許可權Win10
- macOS 系統 Root 管理員許可權漏洞解決方案Mac
- win10管理員許可權不足怎麼設定_win10管理員許可權不足如何解決Win10
- 授權許可權服務設計解析
- win10管理員許可權怎麼獲取 win10管理員許可權獲取的方法Win10
- 淺談許可權管理的設計與實現