許可權設計 系統登入使用者許可權設計

2021-08-30 02:16:38 字數 3352 閱讀 7954

需求分析—場景

假設需要為公司設計乙個人員管理系統,並為各級領導及全體員工分配系統登入賬號。有如下幾個要求:

1. 許可權等級不同:公司領導登入後可檢視所有員工資訊,部門領導登入後只可檢視本部門員工的資訊,員工登入後只可檢視自己的資訊;

2. 訪問許可權不同:如公司領導登入後,可檢視員工薪水分布介面,而員工則不能看到;

3. 操作許可權不同:如系統管理員可以在資訊發布介面進行增刪改查發布資訊,而普通員工只可以在資訊發布介面進行檢視,不能修改、刪除和新增。

功能分析

1. 登入乙個系統,基本都需要使用者輸入使用者名稱、密碼;

2. 每個使用者的角色不同,則其訪問許可權一般也不同,如:

系統管理員:可以檢視所有介面;

普通使用者:只能檢視部分介面。

3. 不同的使用者,即使可以檢視同樣的介面,但在該介面上可進行的操作許可權也不同,如:

使用者1:可以在介面1上進行增刪改查;

使用者2:只可以在介面1上檢視,不具備增刪改功能;

4. 不同使用者基本都對應不同角色,如:使用者1、使用者2分別對應管理員角色、操作員角色,角色之間也存在許可權等級的差異,如:

角色1:對應省級管理員;==>可以檢視該省下的所有學校資訊;

角色2:對應市級管理員;==>可以檢視該市下的所有學校資訊;

角色3:對應縣級管理員;==>可以檢視該縣下的所有學校資訊;

不管是省、市、縣哪個系統管理員,他們可訪問的介面都是相同的(即訪問許可權相同),且在每個介面上可進行的操作許可權也相同的,不同的是每個管理員角色可以訪問的學校個數和學校範圍不同,這裡稱這種不同為:許可權等級不同;

總結:從上面的分析中,主要涉及到以下幾個概念:

1.角色:

如系統管理員角色,系統操作員角色,普通使用者角色;

不同的角色,其訪問許可權是不同的,即可訪問的模組(介面)集合是不同的;

角色的許可權等級也不同,許可權等級如:公司領導、部分領導、普通員工;

2. 模組:(介面)

模組就是指具體的介面,每個模組上又有不同的操作,如增刪改查;

3. 訪問許可權:確定角色可以訪問的模組(介面)集合;

4. 操作許可權:確定可以在各模組(介面)上進行的操作集合,如增刪改查;

5. 許可權等級:即確定角色可以訪問的範圍,如:

角色1:許可權等級為公司領導,則可以檢視公司所有員工資訊;

角色2:許可權等級為部門領導,則只可以檢視該部門所有員工資訊。

資料庫設計

總體模型:

1.模組定義表:

模組是分層級的,如:資訊管理–>****管理;

每個模組都有上級模組。

2. 角色定義表:

含有角色許可權等級,用於為角色分配許可權等級;

角色許可權等級:是乙個選單選項,包括公司領導、部門領導、普通員工;

3.授權定義表:

用於給角色分配訪問許可權以及為每個模組分配操作許可權;

1個角色可以含有多個模組,同樣1個模組可以分配給多個角色,所以角色和模組是多對多的關係;這種多對多的關係可以使用關係表來實現,即通過聯合主鍵和實現關係表:

表中含有字段「操作許可權」,用於給每個介面分配操作許可權,見下圖:

若該模組有增刪改查功能,則操作許可權15,即二進位制的「1111」,若該模組只有檢視功能,則操作許可權為2,即二進位制的「0010」,同樣的,「0111」表示該模組有增、改、查功能;

4. 系統使用者表:

該表中「角色許可權等級」—>應與「所屬角色」中的許可權等級保持一致,之所以該表中重複該欄位,是為了方便查詢。

角色許可權等級取值:

1. 公司領導:company_id不能為空;

2. 部門領導:company_id、dept_id不能為空;

3. 普通員工:company_id、dept_id、staff_id不能為空;

登入執行過程

1. 系統登入時,首先輸入使用者名稱、密碼;

2. 確定訪問許可權

2.1 判斷該使用者的「角色編號」;

2.2 在「授權定義表」中根據該「角色編號」查詢相應的模組,找到的模組集合即是訪問許可權;

3. 確定操作許可權:

3.1 在2.2步驟中查詢到的每個模組都有相應的操作許可權,即構成了每個模組的操作許可權;

4. 確定許可權等級

4.1 結合該使用者的「角色許可權等級」+「公司標識」+「部門標識」+「員工標識」,到員工資訊表中去查詢相應員工,具體如下:

角色許可權等級取值:

1. 公司領導:查詢<員工資訊表.公司標識==該使用者.公司標識》的所有使用者;

2. 部門領導:查詢<員工資訊表.公司標識==該使用者.公司標識 &&

員工資訊表.部門標識==該使用者.部門標識>的所有使用者;

3. 普通員工:查詢<員工資訊表.公司標識==該使用者.公司標識 &&

員工資訊表.部門標識==該使用者.部門標識 &&

員工資訊表.員工標識==該使用者.公司標識>的所有使用者;

許可權系統設計

許可權系統 2 operation 許可權控制可以看作乙個filter模式的應用,這也符合aop思想的應用條件。在乙個簡化的圖象中,我們只需要將乙個判別函式 isallowed subject,operation,resource 插入到所有安全敏感的函式呼叫之前就可以了。雖然概念上很完美,具體實現...

使用者許可權系統設計方案

鍾峰 2004年10月 版本 1.0.0 本文介紹乙個應用於 企業應用通用的使用者許可權系統的設計框架,其設計思想與主要文件 自 sunwu software studio 的 isecuritymanager 產品。本指南適用於體系結構設計人員和開發人員。安全始終是可信賴的企業應用的基石。在企業應...

使用者許可權系統設計方案

鍾峰 2004年10月 版本 1.0.0 本文介紹乙個應用於 企業應用 通用的使用者許可權系統的設計框架,其設計思想與主要文件 自 sunwu software studio 的 isecuritymanager 產品。本指南適用於體系結構設計人員和開發人員。安全始終是可信賴的企業應用 的基石。在企...