1. 程式人生 > >許可權管理需求分析

許可權管理需求分析

1、  一個使用者(User)屬於一個使用者組(user group),一個使用者組擁有多個使用者。

2、  一個使用者組(user group)只有一個管理員(Admin,並且只能對本使用者組進行操作

3、  系統擁有一個超級管理員(super Admin,並且能夠對整個系統有全權。

4、  每個使用者組的管理員都有新增使用者,授予使用者許可權的能力。

5、  每個使用者組的管理員都具有建立角色的能力,並且自己管理這自己的角色。

6、  使用者(User)可以擁有多個角色(Role),角色可以被分配給多個使用者

7、  許可權的意思就是對某個資源的某個操作,現在規定:

a)

         所謂資源,即系統的模組

b)        所謂操作,包括:增加、刪除、修改、查詢等操作

8、  許可權管理系統的總體功能分為:授權與認證

9、  授權,指將許可權授予角色或使用者

a)         如果使用者A擁有角色B、角色C,那麼,預設的情況下,使用者A將擁有被分配給角色A和角色C的所有許可權(即預設情況下,使用者A繼承其擁有的角色所具有的所有許可權)

b)        如果使用者擁有多個角色,那麼使用者的許可權是這些角色許可權的合集

c)         除了可以對角色進行授權外,也可以針對使用者進行授權,也就是說,將許可權授予使用者。針對某個資源的所有操作,我們可以設定這些許可權對使用者來說是“繼承”或“不繼承”

                         i.             繼承:意思是這些許可權將使用其(即使用者)所擁有的角色的許可權,而不使用其(即使用者)單獨設定的許可權

                       ii.             不繼承:意思是這些許可權將使用其單獨設定的許可權,而不使用其所擁有的角色的許可權

10、 認證,指使用者訪問資源的某些操作時,根據授權,判斷是否允許使用者的訪問

a)         在使用者訪問的時候,需要進行即時的判斷(是否有權訪問)

b)        應該提供查詢的功能,可以查詢某個使用者所擁有的所有許可權

11、 總體上,可分為模組管理、角色管理,使用者組管理和使用者管理模組:

模組管理:

模組管理主介面參考:

因為模組是一個樹狀結構(本系統只支援兩級模組的結構),我們可以點選其中一個模組以便開啟其子模組來維護,比如點選“信件交流”:

可以在這個介面上新增模組資訊以及刪除模組資訊

角色管理:

可以新增角色資訊、刪除角色資訊以及給角色授權

給角色授權,選中其中一個角色,可以開啟角色授權介面:

在這個介面上,按照兩級模組的形式列出系統所有模組,以及在這些模組上面的CRUD(新增、讀取、更新、刪除)許可權;所謂“啟用”,意思是本設定有效,否則設定無效!

當點選選中其中某個模組的某個許可權時,系統自動新增此許可權!【選中就開始生效,無需點選提交按鈕】

使用者組管理:

與角色管理流程基本相似,只不過,使用者組所具有的許可權是其使用者組下的使用者基本的許可權,而角色所具有的許可權是其使用者組下的使用者附加的許可權。

使用者管理:

因為使用者實際上就是系統人員的帳號,而且每個人只能擁有一個帳號,所以使用者管理主介面,實際上就是系統所有人員的列表!

【分配帳號】 - 給人員分配帳號,如果已經有帳號,則提示無法繼續分配帳號,如果想修改帳號的話,需要先刪除帳號,再重新分配

【刪除帳號】- 提示是否刪除,如果確定,再發出刪除請求,在刪除成功之後,重新整理介面。

【分配角色】- 給使用者分配角色,一個使用者可以擁有多個角色,點選“分配角色”:

在分配角色的介面上,點選“給使用者分配角色”,可以選擇需要分配的角色,同時可以輸入其優先順序:

點選“分配角色”按鈕,提交資料,這時候,所選擇的角色,就會被賦予相應的使用者:

如果想要修改某個角色的優先順序,可以選擇重新分配一次這個角色,同時給它指定另外一個優先順序即可:

注意:使用者所擁有的角色列表,是按照優先順序大小倒序排列的,即優先順序最高的排前面。

【使用者授權】- 給使用者單獨授權

在主介面上點選“使用者授權”,開啟的授權介面跟角色授權類似:

但是,使用者授權多了一個“不繼承”選擇框,只有在選擇了這個框的前提下,給使用者的單獨授權設定才是有效的,否則它將使用其擁有的角色的許可權!

除此之外附加一個,所屬使用者組連線,給使用者指定其使用者組,那麼他就具備了其使用者組下的所有許可權。