許可權管理系統準備
這節我們說下許可權系統的特點,本系統採用的是MVC4+EF5+IOC 介面編程的架構,其中的許可權樹用的是DWTree,功能上做到靈活,授權操控細緻,許可權可以細到按鈕層級
,為了部署簡單,導致設計和編碼上也是比較複雜
該系統主要功能如下:
自訂動作動作(如增加、刪除、修改、審核等,不再是以前見過的那種粗粒度的 按模組分配許可權,或者稍微先進點的規定死某幾個操作了)。
無限級功能模組管理,自訂模組排序,可以更好地對整個系統中所有模組進行 分類管理。
靈活地為各模組分配操作,即每個模組有哪些操作需要被控制(將步驟1中添加的 操作按需分配給各模組)。
對所有使用者基礎資訊進行管理,實行有效期間機制,到期自動失效,在有效期間亦 可強制停止使用者使用。
自訂角色,可以起個聽起來通俗易懂的名字。
任意角色可任意組合系統許可權功能點(比如某個模組裡他只能修改資料而不能添加 或刪除等其它操作)
一個使用者可有多個角色(多身份),一個角色也可以被多個使用者擁有(同身份)(多對多),靈活授權。
按角色給使用者授權,當授權對象數量龐大的時候就可大顯身手了(比如給公司全體 員工授權)。
按使用者指派角色,當某個使用者以多種身份出現在系統中的時候,希望分配多個角 色。
菜單的顯示根據許可權來顯示,如果一個使用者擁有模組的一個以上作業碼許可權,則菜單被顯示,否則不讀取
從資料庫結構來看,一共設計了七個表(table),表名及功能分別如下:
1.模組管理(SysModule)
系統功能表的管理,支援無限層級樹,表我們在之前的文章已經建好了
2.使用者表(SysUser)
系統會員,登入系統的唯一憑證
3.角色群組(SysRole)
對角色群組基本資料進行管理。使用者可以自訂成各種各樣的角色群組,然後對使用者授權
4.模組作業碼(SysModuleOperate)
作業碼表的父表是模組表,一下模組下面有多個作業碼,比如增加,刪除,審核,修改等.
5.授權表(SysRoleSysUser)
使用者和角色群組的對應表,一個角色擁有多個使用者,一個使用者可以擁有多個角色
6.角色許可權表(SysRight)
將角色與系統中的許可權點關聯起來,也就是完成授權的動作。
7.被付許可權作業碼表(SysRightOperate)
儲存有許可權的角色的作業碼,當有一個作業碼被賦予許可權時,將啟用對應的菜單
我們通過一張物理模型圖看出表與表之前的關係
查看本欄目更多精彩內容:http://www.bianceng.cnhttp://www.bianceng.cn/webkf/aspx/