楊振平,張學平,王偉全
(1.海南師范大學 信息科學技術學院,海南 海口571158;2.海南醫(yī)學院 網(wǎng)絡管理中心,海南 ???71101)
基于RBAC擴展模型的實驗室綜合管理系統(tǒng)設計與實現(xiàn)
楊振平1,張學平1,王偉全2
(1.海南師范大學 信息科學技術學院,海南 ???71158;2.海南醫(yī)學院 網(wǎng)絡管理中心,海南 ???71101)
為了設計和實現(xiàn)實驗室教學活動全過程的計算機信息化管理,基于RBAC擴展模型、Ajax技術、XML技術,采用了自創(chuàng)的EIM模型和LAORDTM模型進行數(shù)據(jù)處理的實驗室綜合信息管理系統(tǒng)的方法,研制開發(fā)了包含9個子系統(tǒng)的LGIMS系統(tǒng),其中動態(tài)可擴展系統(tǒng)管理子系統(tǒng)用于實現(xiàn)對整個系統(tǒng)進行擴展的基于角色的RBAC訪問控制.
RBAC擴展模型;Ajax技術;XML技術;EIM模型;LAORDTM模型
隨著高校計算機網(wǎng)絡的日益普及,使用計算機網(wǎng)絡進行實驗室管理已成了必然,特別是實驗室開放選課和普通實驗教學的結合對實驗室管理提出了新的要求.實驗室管理實現(xiàn)實驗教學全過程的計算機管理,可減輕實驗室管理人員的工作負擔,提高工作效率和服務水平.實驗室綜合管理系統(tǒng)還能為實驗室評估提供原始資料和基本數(shù)據(jù),成為實驗室評估的重要依據(jù)[1].
實現(xiàn)該軟件的計算中心或計算機網(wǎng)絡:采用功能強大的基于.NET平臺Visual Studio 2005+SQL Server 2000作為開發(fā)工具,采用基于RBAC(Role-Based Access Cortrol)擴展模型、Ajax、XML等技術.該軟件系統(tǒng)為建立在.NET框架之上的應用管理軟件,主要為實驗室提供管理、應用和評估等服務.LGIMS(Laboratory General Information Management System實驗室綜合信息管理系統(tǒng))的核心子系統(tǒng)是動態(tài)可擴展系統(tǒng)管理子系統(tǒng),該子系統(tǒng)用于實現(xiàn)對整個系統(tǒng)進行擴展的基于角色的RBAC訪問控制.其他8個子系統(tǒng)是建立在核心子系統(tǒng)上的擴展系統(tǒng),分別是儀器設備管理和維護子系統(tǒng)、易耗品管理子系統(tǒng)、實驗室管理子系統(tǒng)、實驗教學管理子系統(tǒng)、開放實驗教學管理子系統(tǒng)、實驗室建設子系統(tǒng)、實驗室評估子系統(tǒng)、日常辦公管理子系統(tǒng)[1].
本系統(tǒng)建立在.NET框架之上,是一種基于RBAC擴展模型、Ajax、XML的多種技術和自創(chuàng)的EIM模型和LAORDTM模型的高校實驗室綜合應用管理軟件,其研究技術路線和系統(tǒng)核心及其他技術和自創(chuàng)模型如下.
1.1 研究技術路線
本項目的研究方案以海南師范大學實驗室管理為背景,對高校實驗室管理過程進行調(diào)查研究,在此基礎上開發(fā)實驗室綜合管理系統(tǒng)軟件.
1)利用Visual Studio 2005+SQL Server 2000作為開發(fā)工具,應用了擴展的.NET三層模型、AJAX技術、擴展的RBAC角色權限控制等多種技術.
2)研究基于WEB模式的系統(tǒng)軟件架構,構造開放的、可動態(tài)擴展的軟件架構,方便以后軟件的功能擴展.
1.2 系統(tǒng)核心
21世紀初,很多科學家提出了有關RBAC的各種擴展模型,如Bertino E等人提出的一個臨時的基于角色的訪問控制模型是RBAC擴展模型的一種[2],而本系統(tǒng)的核心即RBAC擴展模型架構是采用如圖1所示的結構框架,通過實體用戶指派某些崗位,其中實體崗位由有角色層次的角色和有樹形層次的部門組合而成,崗位經(jīng)過權限指派指派多個權限,其中權限由客體資源和操作組成[3].由這種模型控制的權限可以將權限最細化和最小化,其控制細節(jié)相當精確,但這是建立在增大系統(tǒng)復雜度、增大數(shù)據(jù)量和消耗更多性能的基礎上進行實現(xiàn)的,當然可以進行適當?shù)膬?yōu)化[4].
實現(xiàn)該模型運用到我們系統(tǒng)中的RBAC擴展模型,其數(shù)據(jù)庫ER(Entity-Relationship)關系見圖2,該關系模型實現(xiàn)了上述圖1的RBAC擴展模型,是整個系統(tǒng)的核心.其中以人員頂崗和授權最為核心,前者是用戶身份的認證,后者是各種身份的權限分配,其安全性比傳統(tǒng)的權限分配更高,且粒度更小.
1.3 Ajax技術和XML技術
本系統(tǒng)采用Asp.net的Ajax框架,但是由于Microsoft自帶的UpdatePanel效率不高,通過創(chuàng)建Ajax請求,實現(xiàn)自定義的Ajax定義并聲明待調(diào)用的方法和參數(shù),再通過頁面調(diào)用請求Ajax頁面(需封裝JSON等方法處理);另外,也可以通過直接對jQuery的Ajax方法進行封裝進行Ajax處理[5].本系統(tǒng)首頁的友情鏈接模塊和投票模塊及動態(tài)圖片模塊的數(shù)據(jù)存儲采用XML技術進行管理.XML(Extensible Markup Language)即可擴展標記語言是一種用來創(chuàng)建標記的標記語言,使用XML標記語言可以做到數(shù)據(jù)或數(shù)據(jù)結構在任何編程語言環(huán)境下的共享.
1.4 自創(chuàng)模型
圖1 RBAC擴展模型Fig.1 RBAC extended model
我們在批量進行EXCEL導入數(shù)據(jù)時,采用了自創(chuàng)的EIM(EXCEL INSERT MODEL)電子表格導入模型.該模型的思想是根據(jù)電子表格EXCEL中的各列信息選擇性導入到數(shù)據(jù)庫中的對應字段,如果技術允許的話,加上智能匹配將更加完美.其原理和方法是由于數(shù)據(jù)庫中字段的名稱、類型和數(shù)量與電子表格EXCEL中的各列名稱、類型和數(shù)量的差異性.可以數(shù)據(jù)庫為參照對象,選擇性地將電子表格EXCEL中的各列對應數(shù)據(jù)庫中必須的信息按照一定的匹配算法選擇性地導入到數(shù)據(jù)庫中的相應字段,如果EXCEL表格中有些信息也是必要的,而在數(shù)據(jù)庫中沒有這些字段,則可對數(shù)據(jù)庫進行這些字段的增加.由于基礎數(shù)據(jù)和儀器設備管理子系統(tǒng)的數(shù)據(jù)量巨大,我們在導入的時候選擇了該模型進行大批量數(shù)據(jù)的導入.我們的另一個自創(chuàng)模型是LAORDTM(Large Amount Of RandoMData Testing Model)—構造大量隨機數(shù)據(jù)的測試模型,該模型用來模擬系統(tǒng)對大量數(shù)據(jù)量的性能和穩(wěn)定性,所有數(shù)據(jù)都是隨機的,可以構造出億量級數(shù)據(jù).當前由于時間等的限制,我們只測試到百萬級數(shù)據(jù),經(jīng)測試系統(tǒng)仍可以正常運行.其中實現(xiàn)模型數(shù)據(jù)的構造基本上是通過構造sql語句在數(shù)據(jù)庫平臺上執(zhí)行的,而系統(tǒng)之所以能經(jīng)受住千萬級數(shù)據(jù)的考驗是由于系統(tǒng)大量采用了存儲過程的原因.我們用sql語句在SQL Sever2000上先構造兩個臨時漢字字典表,然后根據(jù)臨時字典表構造學院表數(shù)據(jù),進而根據(jù)臨時字典表和學院表數(shù)據(jù)引進數(shù)據(jù)庫自帶的隨機函數(shù),構造隨機的實驗室表數(shù)據(jù)、實驗分室表數(shù)據(jù)以及專業(yè)表數(shù)據(jù)和班級表數(shù)據(jù),最后根據(jù)構造出的臨時字典表和已有的表數(shù)據(jù)構造出學生數(shù)據(jù)、教師數(shù)據(jù)、管理員和用戶表數(shù)據(jù),達到大量隨機數(shù)據(jù)科學合理的完整構造,最后對其進行測試.
圖2 RBAC擴展模型的ER關系圖Fig.2 Entity-Relationship diagraMof RBAC extended model
進過研究和論證,本系統(tǒng)分9個子系統(tǒng)設計,各個子系統(tǒng)設計與實現(xiàn)如下.
2.1 動態(tài)可擴展系統(tǒng)管理子系統(tǒng)
動態(tài)可擴展系統(tǒng)管理子系統(tǒng)是整個系統(tǒng)的核心,包括基礎數(shù)據(jù)和權限微調(diào)控制以及系統(tǒng)初始化與維護3個大的功能模塊.其中基礎數(shù)據(jù)具體包括院系數(shù)據(jù)、專業(yè)數(shù)據(jù)、班級數(shù)據(jù)、學生數(shù)據(jù)、教師數(shù)據(jù)、實驗室管理員數(shù)據(jù).權限微調(diào)控制具體包括人員管理、角色管理、人員定崗、權限管理、操作管理、模塊管理、崗位授權.系統(tǒng)初始化與維護具體包括系統(tǒng)數(shù)據(jù)初始化、系統(tǒng)備份與恢復、系統(tǒng)日志管理.由于本核心子系統(tǒng)的動態(tài)可擴展性,所有9個子系統(tǒng)的入口資源均是動態(tài)生成和可擴展的并且存放于數(shù)據(jù)庫中的模塊資源表Function中,各個子系統(tǒng)的每個模塊也是動態(tài)生成和可擴展的并且存放于數(shù)據(jù)庫中的模塊資源表Function中,每個模塊資源對于某個部門的某個用戶都有權限限制,粒度細化到增刪查改等7項操作的權限,并且有超時、錯誤、非法訪問等安全控制機制[6].其中學生數(shù)據(jù)的Excel批量導入用到了我們自創(chuàng)的EIM模型,節(jié)省了大量的人工錄入操作,提高了工作效率.
海南師范大學實驗室綜合管理系統(tǒng)RBAC權限控制核心子系統(tǒng)的表示層的實現(xiàn)效果見圖3.
2.2 儀器設備管理與維護子系統(tǒng)和易耗品管理子系統(tǒng)
儀器設備管理子系統(tǒng)主要實現(xiàn)實驗室管理人員對儀器設備的管理和維護,主要包括儀器設備入庫、出庫、借出、歸還、報修、修還和相關報表的打?。灰缀钠饭芾碜酉到y(tǒng)主要實現(xiàn)實驗室管理人員對易耗品的管理,主要包括易耗品入庫、出庫、采購、審批和相關報表的打印.其中的儀器設備Excel批量導入用到了我們自創(chuàng)的EIM模型,同樣節(jié)省了大量的人工錄入操作,提高了工作效率;另外易耗品管理也提供了批量導入功能.
圖3 RBAC子系統(tǒng)下的崗位授權分配界面圖Fig.3 Post authorizes assignment interface picture of RBAC subsystem
2.3 實驗教學管理子系統(tǒng)和開放實驗教學管理子系統(tǒng)
實驗教學管理子系統(tǒng)主要實現(xiàn)輔助實驗室管理人員實施實驗教學的全過程的管理,主要包括實驗教學研究、實驗教學管理、實驗教學課表和實驗教學過程;開放實驗教學子系統(tǒng)主要實現(xiàn)輔助實驗室管理員開放實驗教學的全過程的管理,教師的開放實驗申請以及學生的開放實驗預約.
2.4 實驗室管理子系統(tǒng)、實驗室建設子系統(tǒng)和實驗室評估子系統(tǒng)
實驗室管理子系統(tǒng)主要實現(xiàn)實驗室管理人員對實驗室的管理,主要包括管理機構、管理實驗室和管理實驗分室;實驗室建設子系統(tǒng)主要實現(xiàn)實驗室管理人員對實驗室建設的管理,建設項目的申請、任務書提交、項目申報和審批、儀器設備的購置計劃以及相關數(shù)據(jù)匯總;實驗室評估子系統(tǒng)主要實現(xiàn)實驗室管理人員對實驗室評估的管理,主要包括制定評估主題和標準、實驗室自評以及評估結果和評估資料.
2.5 日常辦公管理子系統(tǒng)
日常辦公管理子系統(tǒng)主要實現(xiàn)實驗室管理人員的日常辦公的管理,主要包括友情鏈接管理、投票管理、留言管理、消息管理、個人事務和通知管理.
用擴展的三層模型、AJAX技術、XML技術、擴展的RBAC角色權限控制,采用自創(chuàng)的EIM模型和LAORDTM模型進行數(shù)據(jù)處理,研制開放的、動態(tài)擴展的綜合實驗室管理系統(tǒng)不僅追求技術和性能的高效性,在設計之初就本著人性化、系統(tǒng)化和可持續(xù)發(fā)展的設計觀去架構我們的系統(tǒng),使設計出來的軟件能夠體現(xiàn)簡單易用、系統(tǒng)化的分析與綜合以及功能的可擴展性和長效適應性.
[1]湖南三唐信息科技有限公司.高校實驗室綜合管理系統(tǒng)解決方案[EB/OL].(2006-05-19)[2008-08-19]http://www.cbineWs.com/solution/show_solutionmore.jsp?id=1544.
[2]BERTINO E,BONATTI P A,F(xiàn)ERRARI E.TRBAC:A temporal role-based access control model[J].ACMTransaction on Information and SysteMSecurity,2001,4(3):191-223.
[3]李南妮,張瑗,李軍懷,等.一種基于樹型結構的B/S系統(tǒng)權限的控制方法[J].計算機應用研究,2005,20(6):128-130.
[4]楊柳,危韌勇,陳傳波,等.一種擴展型基于角色權限管理模型(E-RBAC)的研究[J].計算機工程與科學,2006,28(9):126-128.
[5]徐建.談談采用哪種Ajax處理:UpdatePanel、AjaxPro、JQuery ajax、XMlHttpRequest[EB/OL].(2008-07-12)[2008-08-19]http://blog.csdn.net/webwalker/archive/2008/ 07/12/2643511.aspx.
[6]周沈剛,趙嵩正.一種基于RBAC的WEB環(huán)境下信息系統(tǒng)權限控制方法[J].計算機應用研究,2005,6:204-206.
Design and IMp lementation of Laboratory General Management SysteMBased on RBAC Extended Model
YANG Zhenping1,ZHANG Xueping1,WANG Weiquan2
(1.College of Information Science and Technology,Hainan Normal University,Haikou 571158,China;2.Network Management Center of Hainan Medical College,Haikou 571101,China)
To design and implement the computer information of laboratory activities in the whole process of teaching,based on RBAC extension,Ajax technology,XML technology,the EIMmodel and LAORDTMmodel were created to process the laboratory data,and a systeMof LGIMS contains nine sub-systeMwas developed,in which dynamically extending management subsysteMwas used to implement the whole systeMto extend the RBAC role-based access control.
RBAC extended model;Ajax technology;XML technology;EIMmodel;LAORDTMmodel
TP 315
A
1674-4942(2010)01-0021-04
2009-10-03
國家大學生創(chuàng)新性實驗計劃(081165819)