數字化校園應用系統架構的研究
文章出處:http://psychicreadingswithdeb.com 作者:盛昀 方明 人氣: 發(fā)表時(shí)間:2011年11月23日
數字化校園已經(jīng)成為目前高等院校發(fā)展信息化建設的一個(gè)重要目標。作為數字化校園的基礎,各個(gè)學(xué)校紛紛對校園的硬件和網(wǎng)絡(luò )進(jìn)行建設,一些學(xué)校已引入或者自行開(kāi)發(fā)了很多業(yè)務(wù)管理系統,實(shí)現了部分管理的自動(dòng)化,使得校園網(wǎng)得到充分的利用。但是這種發(fā)展也帶來(lái)了一些新的問(wèn)題,如由于應用系統在不同時(shí)間由不同人群研發(fā)完成,缺乏全局的系統規劃,容易造成各應用系統彼此分割、各自分散,出現眾多分散的、異構的、相互封閉的信息資源系統。每個(gè)應用系統有自己的數據庫,自編的一套應用軟件,系統內部缺乏合理的通道,系統之間信息無(wú)法共享、無(wú)法交換,導致資源浪費,并對數字化校園的信息通、教學(xué)通、資源通和管理通等需求造成嚴重的障礙。針對這一現象,本文通過(guò)比較當前數字化校園應用系統的技術(shù)路線(xiàn),提出了一個(gè)數字化校園應用系統整體的邏輯架構以及技術(shù)實(shí)現的手段。
一、數字化校園總體架構
數字化校園的建設目標可借用下面的一幅場(chǎng)景來(lái)描述。如某個(gè)學(xué)生選擇一門(mén)課程之后,當他再次登錄或返回自己的個(gè)性化頁(yè)面時(shí),他應該可以看到:①這門(mén)課程的授課老師、課程安排和教學(xué)計劃等;② 這門(mén)課程在圖書(shū)館內的參考書(shū)籍的鏈接;③ 這門(mén)課程的學(xué)分是多少,自己已經(jīng)完成了多少學(xué)分,本學(xué)期還需要幾個(gè)學(xué)分;④ 這門(mén)課程需要繳納的費用是多少,同時(shí)在此頁(yè)面提供付費確認鏈接。
在上述4 個(gè)步驟中,用戶(hù)對一個(gè)應用系統的動(dòng)作,觸動(dòng)其他3個(gè)不同的應用系統進(jìn)行工作,最終將結果通過(guò)個(gè)性化頁(yè)面反饋給用戶(hù),從而實(shí)現一站式服務(wù)。從以上描述可以知道一個(gè)數字化校園的應用系統必須是一個(gè)總的校園信息系統的集成,它從全局的高度分析校園內部的關(guān)系,并通過(guò)建立統一的信息標準,提供平臺與接口規范,將各種信息系統以松散耦合的方式集成起來(lái),以統一的形象為用戶(hù)提供個(gè)性化的服務(wù)。為了解決當前校園信息化建設過(guò)程中缺乏發(fā)展規劃、資源不能共享、應用難以集成及用戶(hù)使用繁雜等問(wèn)題,本文提出以下數字化校園總體架構模型(圖1)。
從圖1可以看出整個(gè)系統與操作系統無(wú)關(guān),遵循J2EE 規范。統一身份認證與授權平臺為各業(yè)務(wù)應用系統提供數據加密、數字簽名、身份認證和授權管理等安全服務(wù),應用集成平臺通過(guò)異構數據接口平臺協(xié)同多個(gè)其他業(yè)務(wù)系統進(jìn)行計算。網(wǎng)上校園通過(guò)業(yè)務(wù)工作流等中間件實(shí)現數字化校園的應用互動(dòng)。整個(gè)系統按照這種一體化的思想設計,即一體化的安全平臺、一體化的接口技術(shù)及一體化的業(yè)務(wù)平臺。一體化的安全平臺指各業(yè)務(wù)系統都可以建立在統一身份認證與授權服務(wù)平臺之上,這樣解決了一個(gè)用戶(hù)進(jìn)入校園網(wǎng)的不同應用系統可能需要不同的密碼,甚至不同的身份標識的問(wèn)題;一體化的接口技術(shù)指各個(gè)應用系統通過(guò)統一的Web Service 技術(shù)實(shí)現與統一身份認證/授權平臺、異構數據庫接口平臺、校園內部各業(yè)務(wù)系統的接口,解決了各應用系統之間無(wú)法直接訪(fǎng)問(wèn)相互間的數據和功能,可能需要人為的處理,如數據交換的問(wèn)題。一體化的業(yè)務(wù)平臺指公網(wǎng)和內網(wǎng)在確保安全的前提下合二為一、實(shí)現了信息無(wú)縫共享,公網(wǎng)和內網(wǎng)使用同一個(gè)數據庫管理系統。這樣一個(gè)數字化校園網(wǎng)體系可以實(shí)現一體化的安全、一體化的業(yè)務(wù)和一體化的訪(fǎng)問(wèn)控制。
圖1 數字化校園總體架構
二、技術(shù)路線(xiàn)選型
就目前的技術(shù)而言,實(shí)現數字化校園有兩條技術(shù)路線(xiàn):EAI(企業(yè)應用集成)解決方案和Web 服務(wù)。EAI 可以說(shuō)是建立一個(gè)靈活的、標準化的企業(yè)應用底層架構,可以允許新的基于IT 的應用能夠更容易更有效地被部署。新的底層架構允許企業(yè)中的應用能夠實(shí)時(shí)地、無(wú)縫地互相通信。從技術(shù)角度來(lái)說(shuō),EAI 可以看作許多不同集成方法的集合,例如數據適配器、消息代理和其他類(lèi)型的中間件等,來(lái)實(shí)現對不同應用的合并與協(xié)調,從而實(shí)現企業(yè)信息系統的集成。Web服務(wù)則是一種通過(guò)URI 識別的模塊化軟件應用,它通過(guò)標準的 XML 格式接口來(lái)訪(fǎng)問(wèn)網(wǎng)絡(luò )(包括Internet,Intranet,Extranet),通過(guò)Internet 的基本協(xié)議和其他軟件代理交換XML 信息。傳統的EAI 是一種緊耦合集成模式,比較適用于那些對性能要求較高的、需要多種層次集成的應用集成系統。Web 服務(wù)是一種標準化的松耦合集成模式,比較適用于那些需要更大的靈活性,改動(dòng)頻繁的應用集成系統。結合了Web 服務(wù)的EAI 系統則實(shí)現了一種面向服務(wù)層的松耦合的企業(yè)應用集成系統,可以最大限度地同時(shí)滿(mǎn)足性能和靈活性的要求。
所以在數字化校園的建設進(jìn)程中,不能單靠某一技術(shù)或某一廠(chǎng)商的產(chǎn)品一蹴而就。從諸多成功和失敗的案例可以看出:跨多個(gè)操作系統、編程語(yǔ)言和硬件平臺集成軟件應用程序不可能由任何一個(gè)專(zhuān)門(mén)的環(huán)境來(lái)解決。這個(gè)問(wèn)題一直是一個(gè)緊耦合問(wèn)題,即調用遠程網(wǎng)絡(luò )的應用程序通過(guò)自己發(fā)出的函數調用和請求的參數與遠程網(wǎng)絡(luò )緊密地聯(lián)系在一起。如果采用固定接口,當環(huán)境或需要改變時(shí),就會(huì )顯得缺乏靈活性或適用性。
為了數字化校園進(jìn)程的順利推動(dòng),采用以技術(shù)標準結合廠(chǎng)商產(chǎn)品的方法為主線(xiàn),兩種技術(shù)相結合,以EAI 的技術(shù)框架結構實(shí)現面向多種層次的集成,如數據層、應用層、商業(yè)邏輯層、用戶(hù)(界面)接口層、服務(wù)層的集成。其中服務(wù)層的集成,通過(guò)引入 Web服務(wù)的相關(guān)技術(shù)標準實(shí)現。這樣可以做到讓任何平臺上的用任何語(yǔ)言編寫(xiě)的服務(wù)進(jìn)行交互;可以將應用程序功能概念化成任務(wù),從而形成面向任務(wù)的開(kāi)發(fā)和工作流;允許松耦合,每當其中某個(gè)或多個(gè)服務(wù)在設計或實(shí)現中發(fā)生變更時(shí),服務(wù)應用程序之間的交互作用不會(huì )因此而中斷,使現有的應用程序能適應變化中的業(yè)務(wù)條件和客戶(hù)需要;向現有或原有的軟件應用程序提供服務(wù)接口,而無(wú)需改變原來(lái)的應用程序,從而使這些應用程序完全可以運行在這種服務(wù)環(huán)境下。
三、實(shí)現手段
(一)應用系統的邏輯結構
根據上節的設計思想,系統可設計成一個(gè)基于J2EE 的Web 應用系統,從構架結構上來(lái)講,采用三層或多層構架的組件化設計思想,這樣做可以滿(mǎn)足系統的性能、縮放性、安全性、可訪(fǎng)性、重用性及可維護性的要求。這一架構遵循統一數據出口和統一數據入口的原則,通過(guò)統一的一站式服務(wù)門(mén)戶(hù)對外給用戶(hù)提供閉環(huán)式服務(wù)和共享機制,對內整合各業(yè)務(wù)應用系統。通過(guò)對上層應用服務(wù)的請求,調度下層業(yè)務(wù)邏輯及其相關(guān)業(yè)務(wù)系統的資源,完成以事件為驅動(dòng)的工作流和數據流的運行。
系統整體的邏輯架構以及技術(shù)實(shí)現的手段如圖2所示。
圖2 信息系統邏輯框架示意圖
系統從邏輯上可劃分為用戶(hù)表現層、應用層、數據訪(fǎng)問(wèn)層和數據庫層。用戶(hù)表現層采用MVC(模塊-示圖-控制)構架結構設計,它是由Weblogic 或WebSphere 等主流應用服務(wù)器所支持的JavaServlet,JSP 和JavaBean 去實(shí)現的。應用層采用EJB(Enterprise JavaBean)去執行業(yè)務(wù)規則和形成業(yè)務(wù)對象。由于應用程序集中放置在這一層上,由所有用戶(hù)共享,使得系統的維護和更新變得簡(jiǎn)單。當業(yè)務(wù)邏輯發(fā)生變化時(shí),只需更新服務(wù)器上相應的應用組件,之后所有的用戶(hù)就可以使用新的業(yè)務(wù)處理邏輯,避免了用戶(hù)端應用程序版本控制和更新的困難。而且這些組件可以鏡像到多臺機器上同時(shí)運行,從而分擔多用戶(hù)的負載。
數據訪(fǎng)問(wèn)層使用JDBC的應用層可以訪(fǎng)問(wèn)多種數據資源而不會(huì )影響業(yè)務(wù)本身的邏輯。應用程序組件可以共享與數據庫的連接,數據庫服務(wù)器不再是為每個(gè)活動(dòng)的用戶(hù)保持一個(gè)連接,從而降低了數據庫服務(wù)器的負擔,提高了性能。
數據庫層可以分為三類(lèi):信息數據庫,業(yè)務(wù)管理綜合數據庫以及決策支持使用的數據倉庫。這些數據庫將存貯所有業(yè)務(wù)信息和管理信息以及一些系統應用參數。
這樣的體系結構適合大規模配置的應用系統,而在中間層的業(yè)務(wù)邏輯不必信任客戶(hù)機,極大地提高了系統的效率,而這些業(yè)務(wù)邏輯共享數據庫連接,就可以使大量的用戶(hù)有機會(huì )使用系統,這樣增加的是用戶(hù)數量而不是數據庫的連接數量,不會(huì )影響服務(wù)器的工作效率和增加系統的負擔。
(二)統一認證和授權系統的具體實(shí)現
從圖1 可以看出統一認證和授權是實(shí)現數字化校園的前提,統一身份認證與授權屬于安全管理的范疇。通過(guò)認證與授權的集中統一,實(shí)現授權主體對客體的安全訪(fǎng)問(wèn)。由于多應用涉及到異構系統的互聯(lián)與互操作問(wèn)題,除應用本身考慮跨平臺設計外,安全設計要求考慮通用安全服務(wù)機制。技術(shù)發(fā)展趨勢包括Intel CDSA,Microsoft Crypto API 和Sun JCA/JCE等規范。信息系統的通用安全服務(wù)可以通過(guò)建設應用安全服務(wù)平臺來(lái)實(shí)現,通過(guò)安全平臺向各應用提供統一的安全服務(wù)如信息加密/解密、數字簽名/驗證、數據完整性校驗及密鑰管理等功能。安全服務(wù)平臺可以基于統一的身份鑒別(如認證中心)和統一授權管理(如訪(fǎng)問(wèn)控制中心)實(shí)現。
安全服務(wù)平臺采用安全層次體系和模塊化設計,并通過(guò)標準通用接口向信息系統提供信息安全服務(wù)。通過(guò)安全服務(wù)平臺實(shí)現:
(1)一次登錄,全網(wǎng)通行。對整個(gè)學(xué)校的信息系統平臺主體(如老師和學(xué)生)的身份標識與鑒別,即用戶(hù)只需在網(wǎng)絡(luò )的任一臺計算機上登錄一次,經(jīng)過(guò)身份驗證后,便可訪(fǎng)問(wèn)各應用系統中其有權訪(fǎng)問(wèn)的功能。
(2)統一資源管理。對網(wǎng)絡(luò )中客體(如應用資源)的安全屬性定義和級別劃分,即對整個(gè)系統范圍內的所有用戶(hù)、各種應用系統及各種資源進(jìn)行統一管理。系統管理員對整個(gè)網(wǎng)絡(luò )資源有一個(gè)清晰的了解。用戶(hù)基于一種樹(shù)型層次化規則對資源和應用系統進(jìn)行管理和訪(fǎng)問(wèn)。
(3)統一組織、權限管理。主體對客體的訪(fǎng)問(wèn)控制與授權管理。同時(shí),通過(guò)應用安全服務(wù)平臺提供系統安全審計和統一管理的能力。即將人員按自然的組織結構以樹(shù)狀形式組織。人員調動(dòng)的操作就好像在目錄間移動(dòng)一個(gè)文件。不同權限的用戶(hù)只能訪(fǎng)問(wèn)與自己權限一致的資源。角色權限改變時(shí),管理人員只需修改角色權限,該角色所有用戶(hù)自動(dòng)繼承相應的權限。
1.系統結構
系統設計的主要思想是應用目錄服務(wù)集中存儲用戶(hù)的信息和各個(gè)應用系統的信息,然后通過(guò)統一身份認證服務(wù)實(shí)現對用戶(hù)的集中管理、集中認證和統一授權。其結構如圖3 所示。
圖3 統一身份認證系統結構圖
系統主要包括三部分功能:
(1)用戶(hù)的認證。為了在校園網(wǎng)中實(shí)現基于用戶(hù)的網(wǎng)絡(luò )管理,要求所有用戶(hù)在使用網(wǎng)絡(luò )資源以前要先登錄認證服務(wù)器以確認身份,之后,將用戶(hù)的身份和他所使用的IP 地址綁定,以解決IP 地址盜用的問(wèn)題,同時(shí)實(shí)現基于用戶(hù)的計費等管理。用戶(hù)登錄應用系統申請服務(wù)時(shí),提供一個(gè)由統一身份認證系統發(fā)給的身份認證令牌,由應用系統將這個(gè)認證令牌交給統一身份認證服務(wù)進(jìn)行認證,確認用戶(hù)身份后應用系統根據用戶(hù)的組別授予用戶(hù)相應的訪(fǎng)問(wèn)權限。
(2)用戶(hù)的集中管理。在學(xué)校里,每個(gè)人都有自己的一個(gè)身份,它是由學(xué)校相應的管理部門(mén)負責維護和管理的,例如,學(xué)校的人事處管理所有教職工的資料。各個(gè)管理部門(mén)有自己的一套數據庫系統維護著(zhù)相應的資料。作為網(wǎng)絡(luò )管理部門(mén),進(jìn)行用戶(hù)的身份的集中管理,主要的任務(wù)就是實(shí)現用戶(hù)的真實(shí)身份到用戶(hù)的電子身份的一個(gè)映射,確保每個(gè)校園網(wǎng)的用戶(hù)得到一個(gè)和他的真實(shí)身份相對應的電子身份,并享有和他的身份相對應的網(wǎng)絡(luò )使用權限。因此,用戶(hù)集中管理部分的設計重點(diǎn)在于實(shí)現和現有用戶(hù)管理系統之間的信息交互,實(shí)現異構數據庫之間的數據交流。
(3)應用系統注冊。每個(gè)應用系統要使用統一身份認證模式,它必須先向統一身份認證系統進(jìn)行注冊,提供必要的信息,包括應用系統的身份信息、應用系統所有合法用戶(hù)的信息、應用系統的訪(fǎng)問(wèn)控制信息和應用資源的訪(fǎng)問(wèn)控制信息等。
2.授權策略實(shí)現
授權策略的具體實(shí)現是,應用系統根據用戶(hù)權限的不同將合法用戶(hù)分為若干組,根據用戶(hù)的身份信息決定用戶(hù)屬于哪個(gè)用戶(hù)組別。應用系統注冊后其用戶(hù)組信息存儲在目錄數據庫中,應用系統要求統一身份認證系統認證用戶(hù)身份信息時(shí),統一身份認證系統根據用戶(hù)身份查找該用戶(hù)在應用系統中所屬的用戶(hù)組,并將該信息返回給應用系統,應用系統再根據用戶(hù)所屬組別決定用戶(hù)權限。
用戶(hù)得到應用系統的授權經(jīng)過(guò)下面3個(gè)步驟:登錄統一身份認證系統確認身份;向應用系統提出服務(wù)申請,并提交身份證明;應用系統將用戶(hù)的身份證明交統一身份認證系統認證并得到用戶(hù)授權信息,然后根據用戶(hù)授權信息返回給用戶(hù)服務(wù)申請應答。
3.SSO(單點(diǎn)登錄)實(shí)現
有了統一認證和授權的基礎,便可進(jìn)行SSO 的實(shí)施。在用戶(hù)通過(guò)認證之后,可以通過(guò)反向代理服務(wù)器結合策略管理器產(chǎn)生授權憑證,或利用插件方式攔截會(huì )話(huà),從而達到一次登錄,全網(wǎng)通行的目的。如圖4 所示。
圖4 SSO 實(shí)現
四、結束語(yǔ)
數字化校園的基礎是解決應用系統集成的問(wèn)題,在進(jìn)行建設時(shí)要通盤(pán)考慮,其系統結構上要有可擴展性。本文通過(guò)分析討論與應用集成相關(guān)的技術(shù)發(fā)展趨勢,指出數字化校園并不能簡(jiǎn)單靠采用新技術(shù)而一蹴而就,它必須由清晰的目標和戰略進(jìn)行管理,關(guān)鍵在于提供方向、控制變更和提高整個(gè)系統運行的整體效能,本系統結構的設計已經(jīng)應用到一些校園網(wǎng)中并得到認可。
(文/西安工業(yè)學(xué)院計算機科學(xué)與工程學(xué)院西安:盛 昀,西安石油大學(xué)計算機學(xué)院西安:方明)