雷海紅 張偉燕 孔思淇
中國工程物理研究院/計算機應用研究所 四川 綿陽 621900
隨著企業信息化建設的推進,已經建成和正在建設的信息系統越來越多。不同的應用系統基于不同的硬件與軟件操作平臺,所以不可避免地造成同一業務系統之間的信息無法共享,影響業務流轉,割裂業務流程。隨著企業各個業務系統的信息發量的逐漸增大,多個信息系統的業務辦理及查詢入口增多,增加了辦理業務的難度和復雜度。同時給領導的決策提出了巨大的挑戰。為實現企業信息化發展戰略目標,需要逐步建立工程信息門戶集中展現應用集成、數據中心、業務應用等業務,實現企業資源、信息、應用、流程等各種內容。
基于Portal 技術的企業門戶系統把各種數據資源信息和應用系統通過服務完美整合到一體的Web 站點[2]。Portal門戶平臺提供輕量級門戶框架、提供完善的安全管理、支持多應用系統的單點登錄。通過widget(小視窗)支持內容集成展現。提供可擴展的組織機構框架,可與已有框架集成,支持統一管理需求。支持擴展widget容器,可加載多種類型的widget,支持集成符合JSR168規范的portlet。支持快速發布門戶展現內容。提供事件總線,支持widget交互。從應用、主題頁、Widget等多個方面進行權限控制,保證集成信息的訪問安全。
門戶系統架構如下圖1所示:

圖1 系統總體架構圖
網絡層:網絡層是統一認證系統、門戶系統以及業務系統在網絡傳輸環節的承載體,本期項目所依賴的網絡環境是企業。
數據層:提供系統的基礎信息資源、業務信息資源。
邏輯層:邏輯層主要提供門戶管理、布局管理、桌面主題、搜索服務等與特定業務應用無關的共性服務功能。
門戶整合層:門戶整合層通過采用Portlet([1]portlet作為Portal容器的組成單元,也屬于Web組件之一,每個Portlet可以簡單地看成整幅Portal頁面中的組成小窗口,用來實現門戶系統獨立的功能應用)來接入整個的結構化、非結構化數據資源以及各種應用系統等。通過門戶整合后,用Portlet容器來封裝的所有應用都可以作為門戶頁面上的一個交互組件而接受門戶的管理,并可以組織成不同的視圖輸出給信息使用者。
門戶服務層:通過采用門戶服務器(Portal Server)技術為用戶提供個性化的信息資源定制與訪問服務。
認證層:主要實現統一身份認證服務,支持使用中科院自建CA發放的數字證書進行認證。
輸出層:輸出層實現面向用戶、管理人員的多層體系結構的界面。
門戶系統以多應用集成和內容管理為核心,提供了訪問企業信息資源的統一入口,是一個面向企業的內容管理、信息發布和集成展現平臺,提供了單點登錄、信息發布、應用集成、個性化等功能,以及可持續擴展的業務組件庫。能夠幫助企業快速搭建一個集成的、內容豐富的、可個性化的、隨需應變的協同工作場所。我們設計的門戶系統組成如下圖所示:

圖2 企業門戶架構圖
單點登錄(Single Sign On),簡稱SSO,指在多個不同的應用系統中,用戶只要一次登錄就能訪問全部互相信任的應用系統[3]。單點登錄使用統一的界面和邏輯對用戶信息進行集中管理,為信息化的各種網絡服務和應用系統提供統一的用戶管理平臺和身份認證服務。單點登錄系統是通過用戶登錄接口在系統中進行登錄注冊,為用戶創建一個臨時的身份證書SessionKey(系統同一時間內唯一)作為唯一的登錄標識,并且把用戶的這一次登錄的信息記錄到數據庫中。登錄接口產生的登陸標識是用戶身份的唯一認證標識,通過該標識實現用戶在不同系統之間的相互切換。

圖3 單點登錄集成
Portal作為前端門戶集成系統,供用戶在統一的界面上獲取各種來源的信息,而不會意識到信息的真正來源。Widget是門戶中提供特定服務或信息(例如:提供日歷、天氣預報、公司新聞、管理駕駛艙等)的窗口,可通過Portal提供的Widget容器處理請求、加載并生成動態內容。一個門戶主頁可以有多個Widget,通過不同的Widget可以在一個界面上分別顯示來自不同來源(網絡服務)的信息。
Portal提供了頁面集成的柔性框架,通過加載Widget支持內容集成,是一套解決多應用界面集成的解決方案。在不對原始應用程序進行任何修改的前提下,通過Apache代理對原始應用進行訪問,并通過Widget對外進行數據提供、發出事件、接收外部應用的數據、響應外部事件,實現交互需要。使多應用的程序在Portal中無界限的運行。通過定制和提供所需的Widget即可以實現不同應用系統的頁面整合和內容集成,內容集成模式如下圖所示:

圖4 內容集成模式
在進行內容集成過程中,Portal框架主要解決了跨域、資源注入、資源隔離和交互問題。
企業門戶提供了系統級的個性化定制功能和用戶級的個性化定制功能,提供主題定制、換膚和布局等個性化定制服務
Portal提供了系統級的個性化功能和用戶級的個性化功能,提供主題定制、首選項配置、換膚和布局等個性化服務。系統個性化功能幫助企業快速搭建一個統一的企業門戶,提供一致的風格、系統主題和系統Widget,為企業用戶提供一個默認的訪問門戶。系統級的個性化內容會自動同步到每一個客戶端,讓用戶在彰顯個性的同時擁有統一的風格和必須的內容。用戶個性化功能為每一個用戶提供了個性化的手段,配置個人關注的主題、內容和首選項,提供換膚功能,實現企業員工的個性化工作臺。
在企業日常管理過程中,可能涉及一些信息或服務需要發布給需要的企業用戶,如:其他部門希望查看某些庫存物資情況,需要庫管部門提供庫存物資查詢功能。這些需求一般是零散的、有目的性的和關聯的。下圖描述了利用Widget進行內容發布的過程。

圖5 內容發布過程
內容發布的實現手段是Widget,所有被發布的資源都采用Widget封裝,然后被授權給指定的用戶訪問,被授權的用戶將Widget加入到自己的門戶中,然后通過訪問該Widget來查看發布的內容。
內容發布的實施步驟主要包括4個步驟,如下所述:
3.4.1 確定發布的內容。內容提供者根據內容消費者的需求,確定需要發布哪些內容,以及內容的來源和獲取方式。
3.4.2 發布內容組件化。內容提供者開發展現這些內容的頁面(如果發布的內容是業務系統已有的,則無須另外開發),并使用門戶集成環境中的管理工具將這些頁面配置為Widget,這個Widget可被門戶服務器管理。
3.4.3 Widget發布授權。內容提供者通過門戶提供的授權管理界面,發布該Widget并將該Widget授權給合適的內容消費者。
3.4.4 發布內容訪問。內容消費者通過門戶提供的界面管理功能,將該Widget加入到自己的門戶中,通過訪問該Widget來實現對于發布內容的訪問。
Portal提供了多層次的安全機制,從登錄、應用入口、系統主題、Widget、內容訪問等多個層面提供了安全管理。在應用管理中提供了授權控制,使得用戶登錄Portal后,在系統菜單中只能看到自己有權限訪問的應用。同時,Primeton Portal提供了系統主題和Widget訪問權限控制,用以限制合法用戶可訪問系統主題和Widget的范圍。
整個部署架構包括門戶平臺和業務應用群兩部分。
portal、集中任務中心在邏輯上相互獨立,負責不同的功能,在物理上可以把它們部署在一臺服務器上,這樣有利于充分發揮硬件資源,節約成本。隨著用戶訪問量增大,在硬件上做橫向擴展,可以滿足不斷發展的業務需要。物理部署示意圖如下:
后端業務應用群包括新建的業務應用以及遺留的系統,按照統一的方式接入門戶平臺。
工程門戶系統實現了對現有多個WEB應用系統的集成,實現了各個系統的單點登陸,將各個系統的待展現信息集成到門戶系統中來,并將各個系統的待辦事項集成到門戶系統中來[2]。同時工程門戶系統通過提供給用戶個性化、高度集成信息、應用和服務的界面,簡化了用戶的日常操作,方便企業信息的展示和用戶對于信息的獲取,通過工程門戶系統的建設不僅能夠有效展示企業各方面的信息,也可以有效提高企業的辦公效率和管理水平。