999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于SSME模型和J2EE平臺的權限管理系統設計與實現

2016-12-29 03:39:04劉曉天顧大明朱耀琴
東北師大學報(自然科學版) 2016年4期
關鍵詞:用戶功能服務

劉曉天,顧大明,,宋 巍,朱耀琴

(1.鹽城工業職業技術學院機電工程學院,江蘇 鹽城 224005;2.南京理工大學計算機科學與技術學院,江蘇 南京 210094)

基于SSME模型和J2EE平臺的權限管理系統設計與實現

劉曉天1,顧大明1,2,宋 巍2,朱耀琴2

(1.鹽城工業職業技術學院機電工程學院,江蘇 鹽城 224005;2.南京理工大學計算機科學與技術學院,江蘇 南京 210094)

針對在大型企業應用系統中權限控制由于通過存取控制列表(ACL)機制實現而導致用戶操作權限維護復雜的問題,設計了一個權限管理系統.以角色存取控制(RBAC)機制為基礎,以服務科學、管理與工程(SSME)理論做指導,采用J2EE領域Struts2-Guice-JPA集成框架實現權限管理系統設計及功能模塊.系統測試與應用效果表明:該權限管理系統較好地實現以角色為基礎完成權限控制,大幅度降低了維護成本.

權限管理;服務科學、管理與工程;J2EE;Struts2-Guice-JPA;角色存取控制

在一般企業應用系統中,權限控制往往是通過存取控制列表(ACL)機制實現的.由于大型企業中人員經常變動,需要將其可操作的資源或功能逐一取消或變更,用戶和操作權限的維護顯得紊亂且復雜,而以角色為基礎的存取控制(RBAC)機制是以角色來分配權限,并指定使用者為一種或多種角色,當員工變動時,只需修改用戶-角色或角色-權限之間的關系.[1-5]本文以J2EE[6-9]平臺內Struts2-Guice-JPA[10]集成框架為技術基礎,以服務科學、管理與工程(SSME)[11]理論為指導,實現權限管理系統,并取得了較好的應用效果.

1 系統需求分析

1.1 從RBAC角度理解系統功能要求

根據RBAC機制,權限管理系統一般包括用戶(User)、角色(Role)、模塊(Module)以及功能(Function)等4個權限元素.用戶可分為管理員和普通用戶,管理員經過登錄驗證后可以管理用戶信息、角色信息、功能信息、模塊信息以及角色和功能連接信息、用戶和角色連接信息,管理員可以為普通用戶分配、回收角色,并可以維護角色可執行的功能,普通用戶經過登錄驗證后可以在授權范圍內操作;模塊屬于企業應用系統組成部分,是由一系列功能構成;功能是指在系統中執行的動作,例如,對業務數據的修改或查詢,屬于權限元素中最基本單位.這里模塊與通常所說的企業應用系統中模塊是同一含義,在實際應用中,權限管理系統作為企業應用系統一部分,需結合具體的企業應用系統中模塊及模塊中功能進行權限管理.

1.2 從SSME角度理解系統生命周期

在權限管理系統開發與運行過程中,運用SSME理論進行指導,從服務整個生命周期的角度開展權限管理系統構建活動,進行系統測試與系統維護.

SSME由服務科學、服務管理、服務工程3個部分組成.服務管理的任務是應用計算機相關理論、模型和方法來提高權限管理服務質量;服務工程的任務是應用軟件技術構建權限管理系統,以解決企業應用中權限管理問題.從權限管理服務需求到一個可實際運行的權限管理系統,經過需求調研、系統分析、系統設計、運用技術框架實現4個環節.

2 系統設計

2.1 權限管理過程中SSME模型設計

2.1.1 SSME模型服務管理與服務工程的關系

根據SSME理論及權限管理需求分析,設計了權限管理系統SSME模型服務管理與服務工程關系(如圖1所示).

圖1 SSME模型服務管理與服務工程的關系

2.1.2 權限管理服務工程開發

(1) 工程的技術基礎

權限管理服務工程的技術基礎是服務計算.本文采用J2EE領域Struts2-Guice-JPA集成框架技術將“服務”與“計算”2個部分有機結合,將權限管理服務作為解決問題的出發點,構建權限管理系統,在JAVA虛擬機以及應用服務器中執行,以驅動權限管理系統高層業務邏輯的協同運行.

(2) 工程開發方法

權限管理服務工程開發方法包括權限管理系統需求分析、系統設計、運用J2EE技術構建權限管理系統、系統測試與驗證等內容.

(a) 權限管理系統分析與設計階段任務包括權限管理需求分析、權限管理過程中SSME模型設計、系統技術架構、系統數據表設計以及領域模型層設計.

(b) 運用J2EE技術構建權限管理系統主要包括模塊管理、功能管理、角色管理、用戶管理等系統核心模塊實現和關鍵技術應用.

(c) 權限管理系統測試與驗證主要包括權限管理系統測試和系統應用效果兩部分內容.系統測試包括單元測試、集成測試以及驗收測試,驗收測試和系統應用效果檢驗在系統運行前期及運行期間需要加強,以便對系統分析與設計、系統實現工作進行改進.

2.2 系統總體設計

2.2.1 系統技術架構

權限管理系統技術架構見圖2.權限管理系統分為表現層、業務層、持久層,采用Struts2-Guice-JPA集成框架設計.其中,表現層是JSP頁面,負責界面顯示,Struts2充當控制器,表現層中數據經過Struts2處理后,傳遞給業務層;業務層對控制器傳來的數據經過處理后,交給持久層執行持久化,或者將持久層從數據庫中提取的數據經控制器傳遞給表現層,這里業務層使用Guice框架進行業務組件的組裝關聯;持久層提供數據訪問方法,對數據庫進行查詢、插入、刪除和更新等操作,該層使用JPA框架.領域模型層將權限管理系統所有實體類劃分在同一層面,這部分實體對象與權限管理系統所有層都有交互.

圖2 權限管理系統技術架構

2.2.2 數據表設計

權限管理系統數據庫包括模塊信息表module、功能信息表function、角色信息表role、用戶信息表User以及角色信息表與功能信息表之間連接表role_function、用戶信息表與角色信息表之間連接表user_role.

2.2.3 權限領域模型層設計

針對權限管理系統數據表設計Module、Function、Role、User、RoleFuns、UserRole等實體類,在這部分實體類中,利用JPA標注方法將變量映射到對應數據表,設置數據表之間關聯屬性.在JPA配置文件中,定義這部分領域模型.

3 系統實現

3.1 系統功能模塊實現

3.1.1 模塊管理實現

企業應用系統是由一系列模塊組成,權限管理系統中模塊管理是指對模塊(已開發或正在開發的企業應用系統功能模塊)的創建、更新、刪除、查詢等操作.普通用戶可以查看自己所能操作的模塊,管理員可以對模塊增刪改查.模塊管理實現過程分為持久層、業務層、表現層、業務控制器等4個部分.

(1) 持久層

模塊管理的持久層接口類聲明新增模塊信息、刪除模塊信息、修改模塊信息、通過模塊id查詢模塊信息、查詢所有模塊信息等,對應的實現類實現了這些方法.

在對模塊信息表操作過程中,利用JPA實現持久層,通過注解方法描述模塊Module類對象與模塊信息表module之間映射關系,并將模塊類對象持久化到模塊信息表中.JPA使用配置文件定義需要的數據庫內容,通過實體管理器對模塊信息表中數據進行增刪改查,并進行事務管理.

(2) 業務層

模塊管理的業務層接口類聲明瀏覽指定角色所能操作的模塊、瀏覽全部模塊信息、新增模塊信息、根據模塊id查詢模塊信息、修改模塊信息、刪除模塊信息等,在對應的實現類中完成這些方法.

(3) 表現層

模塊管理的表現層主要包括顯示當前登錄用戶所處角色的模塊頁面、查看全部模塊信息頁面、新增模塊信息頁面、修改模塊信息頁面等.

(4) 業務控制器

對于模塊的所有操作請求都通過Struts2的核心控制器FilterDispatcher轉交給業務控制器ModuleAction類處理,該業務控制器根據傳過來的操作參數處理模塊管理請求.

3.1.2 功能管理實現

功能管理包括對功能的查詢、創建、更新、刪除,普通用戶可以查看自己所能操作的功能,管理員可以對功能增刪改查.功能管理實現過程與模塊管理實現過程類似,其中刪除功能的方法需要強調一下,在刪除功能的同時需要將角色和功能連接表中與該功能相關的信息一并刪除.

3.1.3 角色管理實現

角色管理是指管理員對角色的查詢、創建、更新、刪除等操作,并對角色進行功能分配,也就是維護角色與功能之間的映射.

(1) 持久層

實現角色管理的持久層對角色信息表、角色和功能連接表進行操作.操作角色信息表的持久層接口類聲明對角色信息的增刪改查方法,對應的實現類實現了這些方法.由于角色和功能之間存在關聯關系,因此需對角色和功能連接表進行管理,操作該連接表的接口類聲明對角色和功能映射信息的增刪改查方法,并在對應實現類中完成這些方法.

(2) 業務層

用于管理角色的業務層接口類聲明包括對角色信息業務處理方法、分配功能方法及對應的實現類完成接口類中方法,這里側重對角色分配可執行功能和刪除角色實現過程做出說明.

對角色分配或回收可執行功能的方法:判斷是否設置角色可執行功能為空,如果值為“真”,也就是在管理員將該角色可執行功能的復選框全部取消時,將當前角色的所有功能權限刪除.如果值為“假”,通過角色id在角色和功能連接表中查找功能id,并對其依次判斷,如果在角色分配功能頁面上該角色可執行功能未被管理員選定,則在角色和功能連接表中將查出的這條記錄刪除;否則,將管理員在角色分配功能頁面上針對該角色選定的可執行功能,增加到角色和功能連接表中.

刪除角色的方法:在角色信息表中刪除角色信息時,需將角色和功能連接表中roleId列的值等于該角色id的記錄數據刪除,同時將用戶和角色連接表中roleId列的值等于該角色id的記錄數據刪除.

3.1.4 用戶管理實現

用戶管理包括用戶創建、更新、刪除、改變用戶角色以及用戶的登錄和注冊.限于篇幅,這里僅針對業務層進行闡述.

用戶管理的業務層接口類聲明包括用戶信息處理、用戶登錄驗證、查看用戶所屬角色、對用戶分配角色等一系列方法,并由對應實現類完成.對用戶分配或回收角色的方法:如果用戶可分配角色被管理員取消,則從用戶和角色連接表中刪除.通過用戶id在用戶和角色連接表中查找角色id,并對其依次判斷,如果查找出來的角色id不在業務控制器UserAction類傳遞過來的角色id列表中,說明在用戶分配角色頁面上用戶當前角色的權限被管理員取消,則在該連接表中將查出的用戶和角色映射記錄刪除.如果用戶可分配角色被管理員選定,則在用戶和角色連接表中增加用戶當前角色.對業務控制器UserAction類傳遞過來的角色id依次判斷,如果該id和用戶id組成的數據在用戶和角色連接表中不存在,就將該角色id和用戶id組成的數據存儲到該連接表中.

3.1.5 關鍵技術應用

(1) JPA技術應用

在權限管理系統DAO實現類中,JPA的實體管理器EntityManager是應用程序訪問User、Role、Function、Module、UserRole、RoleFuns等實體的接口,用來查詢、創建、刪除、修改這部分實體Bean.JPA操作的是實體對象,不關注系統數據庫類型,這樣簡化了系統開發的難度,增加了系統的可移植性.

(2) Guice框架應用

在權限管理系統中,Guice作為控制層和持久層的中間紐帶,并負責將接口類和實現類綁定.由于Guice內部已經提供一個與Struts2框架配置的文件,Guice框架和Struts2框架集成,不再另外編寫配置文件,這一點是其他IoC(控制反轉)容器不具備的.

權限管理系統業務組件接口類與其實現類之間關系,通過Bound類綁定,不需要編寫配置文件,其他框架(譬如Spring)在裝載配置文件時,需要解析XML文件,運行效率降低,而Guice則沒有這方面缺陷.權限管理系統綁定類部分代碼為:

binder.bind(RoleDao.class).toProvider(RoleDaoImpl.class);

binder.bind(RoleService.class).toProvider(RoleServiceImpl.class).

利用這部分代碼,將權限管理系統角色管理接口類與其實現類進行綁定.如果需增加或減少其綁定,只需在綁定類中修改相應代碼,而其他類不需改變,增加了系統的可維護性.

3.2 系統測試

根據SSME理論,權限管理服務工程開發過程包括一系列測試.在權限管理系統服務管理階段,服務創新管理內容包括權限管理方式的改進、Struts2-Guice-JPA集成框架的應用及測試服務.權限管理系統測試過程包括單元測試、集成測試以及驗收測試,測試人員構成包括設計人員、開發人員、用戶以及第三方專業機構測試人員.

測試結果顯示,管理員可以對模塊及其功能進行查詢、創建、修改、刪除等操作,可以對角色進行查詢與維護,并可對角色進行功能分配,可以對用戶進行創建、更新、刪除等操作,改變用戶角色;普通用戶可以查看自己所能操作的模塊以及所能操作的功能,可以在分配的權限內操作,但不能越權操作.

4 結論

經過結合具體的企業應用系統運行驗證,該權限管理系統功能實用,管理員可以進行模塊管理、功能管理,可以方便地定義角色,設置角色的權限,為普通用戶分配角色,普通用戶可以根據分配的權限進行操作,系統運行性能良好,較好地實現以角色為基礎完成權限分離.當人員變動時,只需調整使用者的角色,避免了管理混亂,有效降低了管理成本.而且,該權限管理系統采用的J2EE機制內Struts2-Guice-JPA集成框架,提高了系統的可擴展性和可維護性.根據權限管理過程中SSME模型設計,該系統功能在運行期需要進一步完善,可引入角色繼承機制,加強權限校驗,將作為以后研究的方向.

[1] 熊厚仁,陳性元,張斌,等.基于RBAC的授權管理安全準則分析與研究[J].計算機科學,2015,42(3):117-123.

[2] 盧淹平,蘇守寶,郁書好.一種層次信任的RBAC擴展模型[J].東北師大學報(自然科學版),2014,46(1):60-65.

[3] 王桂超,王彥,李永珍.基于RBAC的RFID安全認證協議[J].計算機工程與科學,2014,36(5):874-878.

[4] 劉慶云,沙泓州,李世明,等.一種基于量化用戶和服務的大規模網絡訪問控制方法[J].計算機學報,2014,37(5):1195-1205.

[5] 蘇铓,李鳳華,史國振.基于行為的多級訪問控制模型[J].計算機研究與發展,2014,51(7):1604-1613.

[6] 杜長霄,李曉紅,石紅,等.J2EE應用軟件的架構安全評估方法[J].計算機科學與探索,2014,8(5):572-581.

[7] 曾祥飛,郭帆,涂風濤.基于對象跟蹤的J2EE程序動態污點分析方法[J].計算機應用,2015,35(8):2386-2391.

[8] 呂雪,凌捷.基于J2EE架構的信息安全應急預案管理系統研究與實現[J].計算機工程與設計,2013,34(4):1197-1201.

[9] 王延翔,楊金民.基于分層分類的J2EE應用系統異常處理方法[J].計算機應用研究,2015,32(3):776-780.

[10] 甘文麗,劉為超.基于Struts2和Ajax的企業級Web應用開發[J].工礦自動化,2013,39(2):23-26.

[11] 劉尚亮,沈惠璋,李峰,等.服務科學研究綜述[J].科學學與科學技術管理,2010,31(6):85-89.

(責任編輯:石紹慶)

Design and implementation of authority management system based on SSME model and J2EE platform

LIU Xiao-tian1,GU Da-ming1,2,SONG Wei2,ZHU Yao-qin2

(1.Department of Mechanical and Electrical Engineering,Yancheng Institute of Industry Technology,Yancheng 224005,China;2.College of Computer Science and Technology,Nanjing University of Science and Technology,Nanjing 210094,China)

In large enterprise application systems,access control is often achieved by access control list (ACL) mechanism,causing user operation authority maintenance complex.Aiming at this problem,an authority management system is designed.Under the guide of SSME (Service Science,Management and Engineering) theory,design and functional modules of the authority management system is realized adopting Struts2-Guice-JPA integration framework of J2EE field,on the basis of role-based access control (RBAC) mechanisms.System testing and application results show that access control is completed preferably based on the role by this authority management system,and the cost of maintenance is reduced greatly.

authority management;SSME;J2EE;Struts2-Guice-JPA;RBAC

1000-1832(2016)04-0068-05

10.16163/j.cnki.22-1123/n.2016.04.015

2016-02-28

國家自然科學基金資助項目(61202003).

劉曉天(1981—),女,碩士,講師,主要從事計算機應用、模糊識別等研究;通信作者:顧大明(1979—),男,碩士,副教授,主要從事計算機應用、云計算研究.

TP 315 [學科代碼] 520·4070

A

猜你喜歡
用戶功能服務
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
關于非首都功能疏解的幾點思考
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 欧美第一页在线| 国产高清免费午夜在线视频| 亚洲视频免费在线看| 蝴蝶伊人久久中文娱乐网| 日韩无码一二三区| 综合色区亚洲熟妇在线| 亚欧成人无码AV在线播放| 国产69精品久久久久妇女| 欧美视频在线不卡| 国产精品亚洲欧美日韩久久| 国产一区二区三区在线无码| 真实国产精品vr专区| 久久这里只有精品免费| 免费无遮挡AV| 欧美成人一区午夜福利在线| 免费看的一级毛片| 99国产在线视频| 麻豆AV网站免费进入| 亚洲资源站av无码网址| 国产成人久久综合777777麻豆 | 亚洲无码日韩一区| 欧美中文字幕在线视频| 操操操综合网| 亚洲综合在线最大成人| 狠狠操夜夜爽| 亚洲色图在线观看| 凹凸国产分类在线观看| 国产精品自拍合集| 欧美翘臀一区二区三区 | 免费三A级毛片视频| 国产极品美女在线播放| 亚洲视频三级| 亚洲第一福利视频导航| 日本高清成本人视频一区| 精品人妻无码区在线视频| 欧美激情视频二区三区| 波多野结衣一区二区三视频| 色欲色欲久久综合网| 日韩小视频在线播放| 国产精品第三页在线看| 欧美人与性动交a欧美精品| 国内精品九九久久久精品| 日本精品一在线观看视频| 久久五月天国产自| 精品国产黑色丝袜高跟鞋| 亚洲无码高清一区二区| 精品一区国产精品| 欧美三级自拍| 日韩成人在线一区二区| 无码人中文字幕| 欧美三級片黃色三級片黃色1| 91福利免费| 日本一区高清| 中国国产A一级毛片| 久久人人97超碰人人澡爱香蕉 | 99久久无色码中文字幕| 午夜性刺激在线观看免费| 欧美不卡在线视频| 香蕉视频在线观看www| 久久久久青草线综合超碰| 亚洲大尺码专区影院| 又猛又黄又爽无遮挡的视频网站| 毛片在线播放a| 中文字幕在线日本| 91小视频在线观看| 国产综合另类小说色区色噜噜| 国产精品不卡永久免费| 色婷婷电影网| 国产va欧美va在线观看| 女同久久精品国产99国| 免费高清a毛片| 少妇精品网站| 69综合网| 制服丝袜国产精品| 亚洲精品中文字幕无乱码| 国产真实乱子伦视频播放| 伊人久久大线影院首页| 色亚洲成人| 伊在人亚洲香蕉精品播放| av午夜福利一片免费看| 成人福利在线视频| 九九久久99精品|