李莉
?
基于數據集成的統一身份管理中心設計
李莉
(中國石油大學(華東)網絡及教育技術中心,青島266580)
隨著高校信息化的推進,高校內部的信息系統越來越多。而這些系統的用戶均為本校的教工和學生。如果各個系統分別維護自己的用戶信息,勢必導致數據冗余,不一致等問題。此外,這些系統是不同時期不同廠商建立的,因而數據異構問題突出。通過ODI數據集成工具,解決了數據異構的問題。在此基礎上設計了統一身份管理中心,在統一身份管理中心對人員、權限、接口進行控制,確保特定的人員在特定的接口下以特定的權限來訪問資源,從而大大的降低了人員管理的復雜度和維護成本。
異構數據; 數據集成; 統一身份管理
隨著《教育信息化十年發展規劃(2010-2020)》的提出,各個高校都積極建立和完善信息系統,推進信息化建設。在此過程中各種信息系統不斷的遞增和堆積。與此同時,各個應用系統如OA系統的用戶越來越多,推廣越來越普遍,無紙化辦公等信息化的工作方式越來越深入人心[1]。
在各個信息系統的建設過程中人員用戶信息是各個系統都必須使用和維護的。而高校的人員信息又呈現通用性和復雜性兩個方面。一方面,由于高校組織的特點,人員信息不外乎教工和學生。如果各個應用系統各自維護一套人員信息勢必造成信息冗余。
另一方面高校的人員信息管理又有其復雜的一面。以學生為例,學生分為本科生,研究生,博士生,留學生,成人教育的學生等,此外,研究生還能細分為在職研究生和全日制研究生。這些學生人員信息分別由不同的機構來維護,如本科生由教務處維護,研究生歸研究生院維護等。從而使得人員身份和權限管理非常的復雜。如果不進行統一的管理又會造成人員數據的不一致,各個系統有如信息孤島,難以互通。
因此需要建立統一的身份管理中心,將人員信息由各個權威系統抽取到身份管理中心,并根據身份類型進行權限管理,最后根據各個信息系統的需要分發出去。信息的更新修改都需要在統一的身份管理中心中完成。這樣就能夠保證人員信息的一致性和準確性,降低維護成本,實現人員信息的精細化管理。但由于人員系統來自不同的系統,而各個單位信息系統的建設時期也不同,因而采用了不同的數據庫,數據異構等問題普遍存在[2]。所以通過數據集成處理異構的數據,對人員信息進行統一的管理,就成為了一個非常關鍵的問題。
1.1 數據集成簡介與數據集成工具
數據集成即將來自不同系統,具有不同結構和編碼格式的數據在邏輯上和物理上進行集中,并為組織提供數據共享[3]。
1.2 數據集成工具
ODI(Oracle Data Integrator)是oracle公司的數據集成工具,上文中提到,因為各個信息系統建設所采用的數據庫都是不同的,從而產生了異構的數據,ODI的作用就是將這些異構的數據通過ELT(Extract、Load & Transform,即抽取、裝載、轉換)轉化為結構相同的數據[4]。
ODI把一些應用場景如將數據從sqlServer數據庫抽取到oracle數據庫的詳細步驟以知識模塊的形式封裝起來,這樣就形成了ODI的100多個知識模塊,幾乎囊括了主流數據庫相互轉換的所有場景。用戶可以直接根據所需要的場景個性化的定制集成過程[5]。
2.1 統一身份管理中心架構設計
如圖1所示。

圖1 統一身份管理中心架構圖
2.2 用戶層
統一身份管理中心設計的分層示意圖,如圖2所示。

圖2 高校人員類型
其中第一層為用戶層,如上文所述,高校人員信息錯綜復雜。
圖2中所示的人員類型都來自不同的系統的數據源。例如本科生來自教務系統,留學生來自國際教育學院人員管理系統,研究生來自研究生院管理系統等等。但這些人員信息又需要被各個系統共享來完成不同的工作,例如,對于高校來說,無論什么樣的人員類型都需要上網賬號,但不同身份類型的人員上網收費策略又不相同。
如果不同的人員類型由不同的系統來維護的話,勢必形成信息孤島,導致數據的冗余和不一致。例如在教務系統中有學生已經辦理了退學手續,但是在網絡計費系統中還是有這個學生的賬號,該生還是可以用賬號正常上網,發表言論。如果由學生分別到各個應用系統進行注銷,不僅麻煩而且還容易造成信息的混亂。因而為了保持數據的一致性,減少數據冗余,確保數據的準確性,需要由該數據的權威部門統一對這些數據進行維護和管理,再由權威的數據部門匯總到數據中心,通過數據中心分發到各個業務系統中。
因而在第一層的設計中,人員信息由各個數據產生的權威部門匯聚到數據中心,例如本科生數據來自教務系統,教工數據來自人事系統等。
2.3 人員信息管理層
第二層為人員信息管理層,即數據清洗層。這是身份信息管理中至關重要的一步。在這一層中將各個權威數據源的人員數據進行清洗,保證人員信息與權威數據源實時的同步,為下一步將人員信息提供給其它系統做準備。在這一層中使用的工具是上文中介紹的甲骨文公司提供的數據集成工具ODI。概括而言ODI的數據清洗的主要工作可以分為以下4個步驟:
(1)連接異構數據庫,對不同的編碼方式進行轉換
上文中提到了,由于各個業務系統建立的時間和廠家不同,因而采用的數據庫是不同的。
ODI采用jdbc驅動的方式來解決異構數據庫的連接問題,ODI提供了主流的數據庫連接驅動,例如mysqldb2oracleSqlserver等等,如圖3所示。

圖3 數據連接接口
建立數據庫連接時先選擇相應的數據庫驅動,再通過連接字符串就能連通各種異構的數據庫。
此外,因為各個數據庫的編碼方式不一致,有些是使用UTF-8,有些使用GBK等等。這就導致數據在轉化的過程中出現亂碼。如果修改整個數據庫的編碼方式,又會影響到數據庫與其它接口的交互。ODI在這里提供了一種非常方便的處理方式,只需要在連接字符串中配置相應的編碼方式value值,就可以在寫入該數據庫的時候采用相應的數據庫編碼方式。綜上所述,這一步解決了數據的讀出以及寫入的接口問題。
(2)建立字段之間一一對應的關系
根據上一步,ODI分別與源數據表和目標數據表建立連接,將數據讀入緩沖池。就形成了下圖所示的兩張表,這一步就是對這兩張表進行一一的關聯,建立對應關系。
通過ODI同步工具,將一些關鍵的字段與權威部門提供的源表建立一一對應的關系,如圖4所示。

圖4 字段對應關系示意圖
第二步解決了表的對應關系,以及關鍵字等問題。在這一步中,還可以對源數據表進行過濾,比如我們只同步當前狀態為激活的教工數據等。
(3)轉化底層數據結構
這一步來解決的是底層的數據轉化問題,在上文中,第二步已經將對應關系處理好了,
數據表也進行了連接,繼而需要解決的就是如何將底層不同的數據結構相互轉化的問題。ODI提供了這一過程的解決方案,簡要步驟,如圖5所示。

圖5 底層結構轉換過程
(4)定時對數據進行更新,保證數據的實時同步
數據是在實時的更新變化當中的,對于一些關鍵的信息例如教工的工號,單位,身份證件號碼,當前狀態等等。如果出現信息的更改,例如教工調離原來的單位、教工離職、退休或者是修改身份證件號碼等情況,此時由權威部門修改這些數據,再由ODI的相應接口,將這些變化的數據同步到數據中心。從而保證了數據中心人員數據的準確性與權威部門保持完全一致。而這個更新是由ODI的代理來實現,更新頻率可以根據系統的具體要求來定,從而保證定時同步最新的信息。
2.4 權限管理層
在確保人員信息準確的基礎上,統一身份管理中心的第三層設計為權限管理層,根據不同的系統的權限管理需求,大致將權限管理劃分為以下幾類:
最簡單的是粗略的權限劃分,例如科研系統、OA系統等只有教工有權限查看;
此外,有些系統則需要更加精細的權限劃分,如在教務系統中,只有任課教師才對自己所任課程的課程安排,成績等信息有編輯權限,其他人員如機關管理人員沒有課程信息的管理權限。
對于一些特殊的系統而言,只有特定的人員才具有管理權限,例如安防管理系統,檔案管理系統,只有公安處的管理員和各個單位指定的檔案管理員才具有相應系統的訪問權限。
最后還有針對角色的一些權限劃分,例如單位的領導角色能夠看到本單位的一些統計信息報表等。學院的教學秘書,根據工作需要可以看到全院教師的科研教學信息。系統管理員具有管理系統的權限,但不具備瀏覽某些信息的權限等等。
2.5 接口管理層
第四層為接口管理層,每個系統在信息集成的時候都有自己的接口,而我們的身份管理中心支持目前主流的多個接口,如圖所示的LDAP ,AD, CAS等等。通過這些接口,將人員信息與最終的資源層信息連接上,也就是讓具備某一些權限的人,通過某種接口到達資源層的目標系統。
2.6 資源層
最后一層為資源層,即學校的各個系統,如OA系統,一卡通系統,財務系統等等。通過用戶管理,權限管理,接口管理幾個層次,確保了特定的人員,通過特定的接口,來訪問特定的資源。
高校的人員信息具備其自身的復雜性,我校采用統一的身份管理中心以來,形成了人員信息的權威數據中心,在新系統建設的時候,只需要知道使用該系統的用戶身份類型就能準確的將相應的人員信息和權限信息同步過去,形成了標準的流程。一方面各個系統不需要再自己維護人員信息,這就大大降低了維護成本。另一方面,各個業務子系統的用戶信息均由身份管理中心來分發,打破了人員信息的信息孤島,不存在各個業務系統人員信息不一致的情況。此外我校在基礎上建立了統一的身份認證系統,用戶只需要一套用戶名和密碼就能自由的進入學校的各個業務子系統,從而避免了教工和學生記錄多套用戶名密碼的麻煩,取得了良好的效果。期望能給其它高校的信息化建設提供參考。
[1] 田生湖,趙學敏.我國高校信息化教學的現狀、趨勢與發展策略[J].當代教育科學. 2016,(11): 37-39.
[2] 梁艷,胡先智. 異構數據轉換系統設計與實現[J]. 信息與電腦(理論版). 2011,(8):14.
[3] 鐘秋燕. 數據集成技術綜述[J]. 電腦知識與技術. 2008(24):1120-1122.
[4] 高珺,張計龍,高峰,宓詠. 高校信息系統建設中的兼容性和可移植性策略研究[J]. 中山大學學報(自然科學版). 2009,(S1):104-107.
[5] 曹曉玲,劉海燕,張超英,王強. 基于Web服務的校園數據集成的安全模型設計與實現[J]. 計算機應用與軟件. 2010,06:274-276.
Unified Identity Manager Design Based on Data Integration
Li Li
(China University of Petroleum (East China), Qingdao, Shandong 266580, China)
By the promotion of infoemalization in colleges and universities, more and more information systems appear. And the users of these systems are the faculty members and students. If all systems maintain their own user then it separately, it will lead to data redundancy and inconsistency. Meanwhile, it has the heterogeneous data problem. In this paper, it uses ODI to solve the problem of heterogeneous data. A unified identity management center, is set up to carry out identification, We design user permission, interface control to ensure that a specific staff can access the specific resources under a particular interface in a specific permissions. Thus it greatly reduces the complexity of management and maintenance cost.
Heterogeneous data; Data integration; Unified Identity Manager
1007-757X(2016)12-0034-03
TP311
A
李 莉(1987-),女,河南葉縣人,中國石油大學(華東)網絡及教育技術中心,工程師,碩士,研究方向:高校信息化數據集成,青島,266580
(2016.08.04)