




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、信息系統(tǒng)通用權限模塊設計說明書信息系統(tǒng)通用權限模塊設計方案上海智領普華科技有限公司正文目錄1引言31.1開發(fā)背景31.2編寫目的31.3運行環(huán)境32總體設計42.1設計目標42.2設計思路42.3主要功能和數(shù)據(jù)表52.3.1主要數(shù)據(jù)表52.3.2功能結構53詳細設計73.1主界面73.2第一步:定義登記應用系統(tǒng)菜單83.3第二步:角色管理93.4人員管理114外部系統(tǒng)集成方法144.1集成方法144.2權限控制方法一:對頁面元素進行控制164.3權限控制方法二:對訪問路徑進行控制161 引言1.1 開發(fā)背景在我們開發(fā)軟件過程中,經常會需要開發(fā)一個后臺管理程序,用于管理我們開發(fā)的前臺軟件,當你開
2、發(fā)的軟件越來越多的時候,你的管理后臺也會越來越多,這時如果有一個統(tǒng)一的管理后臺來進來管理,尤其用統(tǒng)一的授權來分配設置系統(tǒng)的操作權限是保障系統(tǒng)安全操作和代碼復用快速實施的基礎內容。權限是應用系統(tǒng)不可缺少的部分,每個系統(tǒng)都有自己的權限管理,有的系統(tǒng)權限設計的比較細,有的設計的比較“粗糙”。每個系統(tǒng)對權限的要求也不同,基于這些情形我們把權限做成一個公用的模塊,采用角色來進行權限的授權,每個用戶可以屬于多個角色,該模塊將能和各類具體的業(yè)務應用系統(tǒng)進行集成,以達到系統(tǒng)權限統(tǒng)一配置和快速實施的目的。1.2 編寫目的對系統(tǒng)整體設計、系統(tǒng)功能描述及集成方法進行描述。1.3 運行環(huán)境開發(fā)環(huán)境:J2EE下的web
3、系統(tǒng)操作系統(tǒng):Windows數(shù)據(jù)庫:oracle和sql server2 總體設計2.1 設計目標權限系統(tǒng)一直以來是我們應用系統(tǒng)不可缺少的一個部分,若每個應用系統(tǒng)都重新對系統(tǒng)的權限進行設計,以滿足不同系統(tǒng)用戶的需求,將會浪費我們不少寶貴時間,所以花時間來設計一個相對通用的權限系統(tǒng)是很有意義的。本系統(tǒng)的設計目標是對應用系統(tǒng)的所有資源進行權限控制,比如應用系統(tǒng)的功能菜單、各個界面的按鈕控件等進行權限的操控;也可以對資源位置進行控制,比如某個頁面的路徑。2.2 設計思路權限系統(tǒng)的設計主要解決兩個問題:權限定義和權限分配;權限定義是指系統(tǒng)用戶和操作的定義,即建立用戶信息和操作信息。權限分配是指建立用戶
4、信息和操作信息之間的關系,只有建立了這種關系才能確定該用戶是否有該操作的權限。給操作用戶賦予一種角色,再給每個角色分配具體的訪問資源;定義以人和操作(例如按鈕或者菜單)為管理單位,人即系統(tǒng)登錄用戶,操作即每一個界面元素,如按鈕、菜單,我們?yōu)檫@些操作分配一個唯一的權限碼。權限分配好后如何使用權限呢,方法一、登錄系統(tǒng)后,首先進行權限驗證,如果他的權限擁有與界面元素相同的權限編號,則界面元素顯示,反之,則隱藏。方法二、通過過濾器實現(xiàn),對資源的訪問路徑進行比較,有則進入,否則跳轉到提示頁面告知用戶不能操作此功能。權限系統(tǒng)的邏輯結構如下圖:圖表 1權限模塊的邏輯結構2.3 主要功能和數(shù)據(jù)表2.3.1 主
5、要數(shù)據(jù)表2.3.2 功能結構以下為權限模塊的功能結構圖表 2功能結構3 詳細設計根據(jù)上面的設計原理,在對系統(tǒng)進行權限設計的時候,遵循以下步驟:第一步:定義操作,實際應用系統(tǒng)中可能會有很多菜單、按鈕或者頁面,因此要先把需通過權限控制的功能對象定義出來。為了管理操作,我們首先對系統(tǒng)劃分模塊,然后為模塊劃分功能,最后為功能定義操作。也許這個過程在系統(tǒng)設計時候已經完成,但我們是要提供一個完全可定義的權限系統(tǒng),權限設計與具體業(yè)務無關,實際業(yè)務系統(tǒng)可按照自己的規(guī)劃進行各模塊的設計開發(fā)。而在應用權限系統(tǒng)時,權限系統(tǒng)只要登記實際應用系統(tǒng)的功能模塊名稱和操作動作(增加記錄、刪除記錄等)即可,從而對這些資源實現(xiàn)控
6、制。第二步:定義角色,角色具體到實際業(yè)務工作中實際就是崗位職務或工種,角色建立好后,再往角色里添加可以訪問的系統(tǒng)模塊資源。這些系統(tǒng)資源就組成了在系統(tǒng)中可訪問的資源,一個系統(tǒng)可以有很多角色,不同的角色有不同的訪問資源。第三步:為人員分配角色,在第二步定義角色時已定義好了它可以訪問的系統(tǒng)資源,從而具有某個角色的人員就繼承了該角色的操作權限。3.1 主界面圖表 3系統(tǒng)主界面3.2 第一步:定義登記應用系統(tǒng)菜單圖表 4定義登記具體業(yè)務應用系統(tǒng)功能結構樹型菜單加上表格數(shù)據(jù)展示,讓人對系統(tǒng)菜單一目了然,更方便管理;圖表 5添加一個功能菜單增加菜單,新增菜單自動編號,在模塊url列登記實際業(yè)務模塊的功能名稱
7、。逐個登記業(yè)務系統(tǒng)所有的功能模塊名稱。 圖表 6修改菜單3.3 第二步:角色管理圖表 7角色管理主頁面圖表 8添加角色圖表 9給角色賦予可訪問的資源左邊為系統(tǒng)菜單展示及選擇區(qū),右邊為已選菜單項展示區(qū),這樣讓用戶看著更直觀,方便操作。圖表 10修改角色3.4 人員管理圖表 11人員管理主界面圖表 12添加人員信息圖表 13修改人員信息由于使用系統(tǒng)的單位多數(shù)都有電子表格的人員名錄,我們提供了將其導入本權限系統(tǒng)的功能。圖表 14人員資料導入導出人員信息導入導出,方便數(shù)據(jù)管理,避免系統(tǒng)更換時重新數(shù)據(jù)錄入,從而減輕工作負擔。4 外部系統(tǒng)集成方法4.1 集成方法本模塊與其他系統(tǒng)集成非常簡單,只需要引入本模
8、塊根目錄的perm包及WebRoot下的perm文件夾,然后將后面的色perm下的Springxml文件夾里的配置文件遷移到需要集成的配置文件里(struts相關配置文件及spring的相關bean配置),最后移入WEB-INF下的drw.xml,還需要在web.xml加入以下內容<!- Ajax的dwr框架配置 -><servlet><servlet-name>dwr</servlet-name><servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-c
9、lass><init-param><param-name>debug</param-name><param-value>true</param-value></init-param></servlet><servlet-mapping><servlet-name>dwr</servlet-name><url-pattern>/dwr/*</url-pattern></servlet-mapping><!- 編碼過濾 ->&
10、lt;filter><filter-name>encodingFilter</filter-name><filter-class>com.perm.util.EncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param></filter><filter-mapping>&l
11、t;filter-name>encodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>注:本模塊使用了Ajax的DWR框架,在系統(tǒng)集成時必須引入dwr.jar。否則,很多功能無法正常使用。本模塊采用的是oracle數(shù)據(jù)庫,如要使用sqlserver,需要修改兩個地方:a、實體類映射文件。Oracle 映射文件class書寫方式Sql server映射文件class書寫方式b、控制層分頁方法的實現(xiàn)(com.perm.server.impl包下的文件,里面
12、方法已寫好,只需取消注釋,然后注釋掉oracle的分頁即可);4.2 權限控制方法一:對頁面元素進行控制用戶登錄后,獲得他的角色的所有可以訪問的系統(tǒng)資源,然后對頁面元素進行判斷<logic:iterate id="module" offset="1" length="1" name="moduleList<logic:equal value="2003" property="moduleId" name="module">菜單三 /表示如果用戶的權
13、限里有2003,則菜單三顯示</logic:equal></logic:iterate>4.3 權限控制方法二:對訪問路徑進行控制用戶登錄后,獲得他的角色的所有可以訪問的系統(tǒng)資源,然后用戶在訪問系統(tǒng)資源時,對請求路徑進行過濾.:在web.xml里進行配置:<filter> <filter-name>moduleFilter</filter-name> <filter-class>com.perm.util.ModuleFilter</filter-class> <init-param> <param-name>noModule</param-name> <param-value>./msg.jsp</param-value> </init-param> <
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐飲百萬店長培訓課件
- 幼兒園家長保健知識培訓
- 內部控制財務培訓
- 肩頸項目培訓課件
- 幕墻安全培訓課件
- 化工安全生產培訓資料
- 醬酒工藝培訓課件
- 績效培訓總結
- 高中地理教學反思案例
- 員工培訓結業(yè)答辯
- 2022年臨夏回族自治州中醫(yī)院醫(yī)護人員招聘筆試試題及答案解析
- T-CIATCM 011-2019 中醫(yī)脈象診斷信息分類與代碼
- 山東師范大學附屬小學教師公開招聘32名模擬試卷【共500題附答案解析】
- 輸電線路巡視工作課件
- 思想政治教育畢業(yè)論文開題報告一覽
- 毒蛇咬傷應急演練方案
- 渣土倒運土票
- 劍橋少兒英語一級試題及答案
- 303093 池國華 《內部控制與風險管理(第3版)》思考題和案例分析答案
- 連續(xù)壓機生產刨花板熱壓質量控制初探.pdf
- C語言程序設計-實驗第一次上機實驗報告
評論
0/150
提交評論