監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設計管理系統(tǒng) | 簽約案例 | 購買價格 | 在線試用 | 手機APP | 產(chǎn)品資料
X 關閉

SOA統(tǒng)一身份認證服務架構(gòu)的設計與實現(xiàn)

申請免費試用、咨詢電話:400-8352-114

文章來源:泛普軟件

建設數(shù)字化校園的目標是消除校園網(wǎng)中的信息孤島,整合校園網(wǎng)中的各種應用系統(tǒng)并實現(xiàn)統(tǒng)一的身份認證服務機制。運用SOA構(gòu)建統(tǒng)一身份認證服務架構(gòu),一方面它實現(xiàn)了平臺無關性,另一方面實現(xiàn)了分布式部署、組合和使用的服務。

隨著近幾年高校對校園網(wǎng)絡基礎硬件設施擴建的完成,很多高校已開始建設數(shù)字化校園,而統(tǒng)一身份認證服務作為數(shù)字化校園建設的基礎部分,它是每個高校建設數(shù)字化校園所面臨的一個問題。筆者以在數(shù)字化校園建設方面具有特色的部分高校為例,研究其校園網(wǎng)的統(tǒng)一身份認證服務后,發(fā)現(xiàn)它們都別具一格,各有所長,但在總體架構(gòu)上沒有一套統(tǒng)一、完善的理論與方法。本文運用SOA(Service—Oriented Architecture)模型,設計并實現(xiàn)了一個基于SOA的統(tǒng)一身份認證服務架構(gòu)的方案。

1 統(tǒng)一身份認證服務架構(gòu)

1.1面向服務的架構(gòu)SOA

SOA(Service—Oriented Architecture)是一種軟件架構(gòu)模型,它可以根據(jù)需要對松耦合的粗粒度應用組件進行分布式部署、組合和使用。服務之間采用松耦合有兩大好處,第一是各種服務能夠靈活組合,第二是每個服務的內(nèi)部結(jié)構(gòu)和實現(xiàn)發(fā)生改變時,其構(gòu)成的整個應用程序無需改變。反之,緊耦合意味著應用程序的不同組件之間的接口與其功能和結(jié)構(gòu)是緊密相連的,因而當需要對部分或整個應用程序進行某種形式的更改時,不易對其進行重構(gòu)。SOA的關鍵是“服務”的概念,在該架構(gòu)中,定義了兩個角色,服務提供者和服務使用者。

目前支持SOA架構(gòu)概念的軟件體系有好幾種。使用基于SOAP協(xié)議的Web服務技術來構(gòu)建統(tǒng)一身份認證服務架構(gòu),這種技術正快速發(fā)展。是未來的發(fā)展方向,它提供了一個系統(tǒng)架構(gòu)以及一系列的技術標準與規(guī)范。

1.2基于SOA的統(tǒng)一身份認證架構(gòu)

統(tǒng)一身份認證服務主要實現(xiàn)用戶管理、身份認證、分級權(quán)限管理和單點登錄等功能。以解決校園數(shù)字化建設過程中用戶定義模糊、用戶身份組織零亂、交叉權(quán)限管理定義和應用系統(tǒng)入口多樣性等棘手的問題。

本系統(tǒng)架構(gòu)以北京大學和重慶大學等已建設或正在建設的統(tǒng)一身份認證服務為研究基礎,結(jié)合SOA等技術對統(tǒng)一身份認證服務進行了進一步定義。在基于SOA的統(tǒng)一身份認證服務架構(gòu)中,依據(jù)SOA定義的服務提供者和服務使用者角色,將統(tǒng)一身份認證服務所要實現(xiàn)的功能封裝成為服務提供者,作為服務使用者的各應用系統(tǒng)必須依據(jù)統(tǒng)一服務接口所定義的調(diào)用方法才能調(diào)用服務。服務提供者按三層結(jié)構(gòu)來設計,分別為統(tǒng)一認證中心數(shù)據(jù)庫、統(tǒng)一信息管理和統(tǒng)一服務接口。對統(tǒng)一認證中心數(shù)據(jù)庫的訪問操作經(jīng)過封裝后。只有經(jīng)過統(tǒng)一服務接口才能進行訪問,同時在統(tǒng)一服務接口處設置相應的安全性檢查和訪問控制的策略匹配來提高對中心數(shù)據(jù)庫的訪問安全。

服務使用者調(diào)用一次服務的過程為:1)服務使用者依據(jù)認證語言及語法構(gòu)造認證指令。21使用與服務提供者約定的加密算法對認證指令進行加密。3)將加密后的密文封裝成SOAP消息,并將消息發(fā)送到服務提供者。4)服務提供者收到SOAP消息后拆封并提取消息。5)使用與服務使用者約定的加密算法解密密文。 6)對明文進行語法、語義進行有效性驗證,通過驗證后執(zhí)行認證指令。71將執(zhí)行的結(jié)果加密、封裝為SOAP消息并再發(fā)送給服務使用者。8)服務使用者收到 SOAP消息后拆封、解密并提取執(zhí)行的結(jié)果。在上面所提到的認證指令是基于XML格式的,所以構(gòu)造與解析認證指令實際上是對XML的序列化與反序列化的過程,同時執(zhí)行結(jié)果也是XML格式的,所以提取執(zhí)行結(jié)果實際上也是對XML的處理,認證指令的描述見下節(jié)。對認證指令及執(zhí)行結(jié)果的加密與否在這里是可選的。當返回的執(zhí)行結(jié)果的信息量很大而對安全性要求不高的內(nèi)容可以不進行加密而直接返回明文,從而減少加密與解密所花的時間。

2 關鍵技術的設計與實現(xiàn)

2.1 SOAP消息

2.1.1消息的流程

基于SOAP協(xié)議的消息的請求/響應過程經(jīng)過4個階段:服務使用者構(gòu)造SOAP消息、服務提供者接收并解析SOAP消息、服務提供者響應并構(gòu)造SOAP消息、服務使用者接收并解析SOAP消息。

2.1.2消息的定義

在這里,服務使用者與服務提供者之間是通過SOAP消息的方式相互通信,并根據(jù)需要對SOAP消息進行了一些自定義。

其中,元素中的bSecurityFlag屬性是加密標志,它的數(shù)據(jù)類型為值布爾性,取值可以是True和False,分別對應密文和明文兩種類型,加密的對象是元素中的內(nèi)容。元素包含認證指令。

2)SOAP HTTP響應消息格式如下:

2.2認證指令系統(tǒng)

2.2.1認證指令系統(tǒng)模型

為了定義規(guī)范的接口,通過模擬命令行系統(tǒng)中的指令系統(tǒng),構(gòu)造一個基于XML的指令系統(tǒng),此模型總體結(jié)構(gòu)由以下幾個部分組成:

1)認證指令控制器

認證指令控制器的主要功能是解析用戶提交的認證指令。即驗證用戶的合法性;檢查認證指令語法的正確性;對認證指令和返回值進行解密和加密:對系統(tǒng)接口的訪問進行日志記錄。

2)認證指令執(zhí)行器

認證指令執(zhí)行器的目的在于實現(xiàn)有指令語法控制器轉(zhuǎn)交的具體任務。指令執(zhí)行器接收指令,根據(jù)指令進行相應的操作,然后將執(zhí)行結(jié)果以XML格式返回給指令控制器。

3)XML認證語言

XML語言是被多種開發(fā)語言良好支持的擴展標記語言,建立在XML基礎上的認證語言將很好被其他開發(fā)語言解析利用。

2.2.2認證指令格式的定義

通過將指令序列化為XML格式是為了提高它的可讀性和跨平臺性。當前使用的任何平臺,任何語言都能夠正確處理與理解XML格式的文件。當使用XML格式的認證語言后它就不再局限于一種平臺或一種高級語言的處理,它可以使用于任何平臺、任何語言。

1)認證指令格式

其中,元素用于通知認證指令控制器服務請求者提交的指令,認證指令控制器根據(jù)元素所包含的內(nèi)容決定調(diào)用何種指令執(zhí)行器。由于一個指令可能包括多于一個的參數(shù),所以元素的每一個子元素都為一個參數(shù),并且都帶有參數(shù)類型param Type屬性及參數(shù)的名稱paramName屬性。

由于執(zhí)行結(jié)果返回的值不一定只有一個值,例如返回一條記錄,而一條記錄中又包括了諸多字段,所以使用元素的子元素來返回一條記錄中的一個字段,并且還包括字段名稱returnName及字段類型retumType.同時又有可能返回多于一條的記錄。所以使用元素。服務提供者將不同的執(zhí)行結(jié)果序列化為標準XML格式的內(nèi)容,而返回給服務使用者后它可以通過將XML反序列化為自己需要的格式并進行相應的處理。

3 結(jié)束語

統(tǒng)一身份認證服務作為數(shù)字化校園建設的基礎,它的架構(gòu)與建設將直接影響一個學校數(shù)字化校園建設的水平及使用周期。構(gòu)建一個具有可擴展性、跨平臺、高可靠性的統(tǒng)一身份認證服務是每個學校都所期望的。本文通過分析、研究國內(nèi)個別在數(shù)字化校園建設方面具有特色的學校的統(tǒng)一身份認證服務,并通過實際設計與構(gòu)建統(tǒng)一身份認證服務后提出了統(tǒng)一身份認證服務的架構(gòu)。

發(fā)布:2007-04-21 11:21    編輯:泛普軟件 · xiaona    [打印此頁]    [關閉]
相關文章:
南昌OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢

泛普南昌OA行業(yè)資訊其他應用

南昌OA軟件 南昌OA新聞動態(tài) 南昌OA信息化 南昌OA快博 南昌OA行業(yè)資訊 南昌軟件開發(fā)公司 南昌門禁系統(tǒng) 南昌物業(yè)管理軟件 南昌倉庫管理軟件 南昌餐飲管理軟件 南昌網(wǎng)站建設公司