當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 泛普各地 > 江西OA系統(tǒng) > 南昌OA系統(tǒng) > 南昌OA行業(yè)資訊
SOA統(tǒng)一身份認(rèn)證服務(wù)架構(gòu)的設(shè)計(jì)與實(shí)現(xiàn)
申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114
文章來(lái)源:泛普軟件建設(shè)數(shù)字化校園的目標(biāo)是消除校園網(wǎng)中的信息孤島,整合校園網(wǎng)中的各種應(yīng)用系統(tǒng)并實(shí)現(xiàn)統(tǒng)一的身份認(rèn)證服務(wù)機(jī)制。運(yùn)用SOA構(gòu)建統(tǒng)一身份認(rèn)證服務(wù)架構(gòu),一方面它實(shí)現(xiàn)了平臺(tái)無(wú)關(guān)性,另一方面實(shí)現(xiàn)了分布式部署、組合和使用的服務(wù)。
隨著近幾年高校對(duì)校園網(wǎng)絡(luò)基礎(chǔ)硬件設(shè)施擴(kuò)建的完成,很多高校已開始建設(shè)數(shù)字化校園,而統(tǒng)一身份認(rèn)證服務(wù)作為數(shù)字化校園建設(shè)的基礎(chǔ)部分,它是每個(gè)高校建設(shè)數(shù)字化校園所面臨的一個(gè)問(wèn)題。筆者以在數(shù)字化校園建設(shè)方面具有特色的部分高校為例,研究其校園網(wǎng)的統(tǒng)一身份認(rèn)證服務(wù)后,發(fā)現(xiàn)它們都別具一格,各有所長(zhǎng),但在總體架構(gòu)上沒(méi)有一套統(tǒng)一、完善的理論與方法。本文運(yùn)用SOA(Service—Oriented Architecture)模型,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于SOA的統(tǒng)一身份認(rèn)證服務(wù)架構(gòu)的方案。
1 統(tǒng)一身份認(rèn)證服務(wù)架構(gòu)
1.1面向服務(wù)的架構(gòu)SOA
SOA(Service—Oriented Architecture)是一種軟件架構(gòu)模型,它可以根據(jù)需要對(duì)松耦合的粗粒度應(yīng)用組件進(jìn)行分布式部署、組合和使用。服務(wù)之間采用松耦合有兩大好處,第一是各種服務(wù)能夠靈活組合,第二是每個(gè)服務(wù)的內(nèi)部結(jié)構(gòu)和實(shí)現(xiàn)發(fā)生改變時(shí),其構(gòu)成的整個(gè)應(yīng)用程序無(wú)需改變。反之,緊耦合意味著應(yīng)用程序的不同組件之間的接口與其功能和結(jié)構(gòu)是緊密相連的,因而當(dāng)需要對(duì)部分或整個(gè)應(yīng)用程序進(jìn)行某種形式的更改時(shí),不易對(duì)其進(jìn)行重構(gòu)。SOA的關(guān)鍵是“服務(wù)”的概念,在該架構(gòu)中,定義了兩個(gè)角色,服務(wù)提供者和服務(wù)使用者。
目前支持SOA架構(gòu)概念的軟件體系有好幾種。使用基于SOAP協(xié)議的Web服務(wù)技術(shù)來(lái)構(gòu)建統(tǒng)一身份認(rèn)證服務(wù)架構(gòu),這種技術(shù)正快速發(fā)展。是未來(lái)的發(fā)展方向,它提供了一個(gè)系統(tǒng)架構(gòu)以及一系列的技術(shù)標(biāo)準(zhǔn)與規(guī)范。
1.2基于SOA的統(tǒng)一身份認(rèn)證架構(gòu)
統(tǒng)一身份認(rèn)證服務(wù)主要實(shí)現(xiàn)用戶管理、身份認(rèn)證、分級(jí)權(quán)限管理和單點(diǎn)登錄等功能。以解決校園數(shù)字化建設(shè)過(guò)程中用戶定義模糊、用戶身份組織零亂、交叉權(quán)限管理定義和應(yīng)用系統(tǒng)入口多樣性等棘手的問(wèn)題。
本系統(tǒng)架構(gòu)以北京大學(xué)和重慶大學(xué)等已建設(shè)或正在建設(shè)的統(tǒng)一身份認(rèn)證服務(wù)為研究基礎(chǔ),結(jié)合SOA等技術(shù)對(duì)統(tǒng)一身份認(rèn)證服務(wù)進(jìn)行了進(jìn)一步定義。在基于SOA的統(tǒng)一身份認(rèn)證服務(wù)架構(gòu)中,依據(jù)SOA定義的服務(wù)提供者和服務(wù)使用者角色,將統(tǒng)一身份認(rèn)證服務(wù)所要實(shí)現(xiàn)的功能封裝成為服務(wù)提供者,作為服務(wù)使用者的各應(yīng)用系統(tǒng)必須依據(jù)統(tǒng)一服務(wù)接口所定義的調(diào)用方法才能調(diào)用服務(wù)。服務(wù)提供者按三層結(jié)構(gòu)來(lái)設(shè)計(jì),分別為統(tǒng)一認(rèn)證中心數(shù)據(jù)庫(kù)、統(tǒng)一信息管理和統(tǒng)一服務(wù)接口。對(duì)統(tǒng)一認(rèn)證中心數(shù)據(jù)庫(kù)的訪問(wèn)操作經(jīng)過(guò)封裝后。只有經(jīng)過(guò)統(tǒng)一服務(wù)接口才能進(jìn)行訪問(wèn),同時(shí)在統(tǒng)一服務(wù)接口處設(shè)置相應(yīng)的安全性檢查和訪問(wèn)控制的策略匹配來(lái)提高對(duì)中心數(shù)據(jù)庫(kù)的訪問(wèn)安全。
服務(wù)使用者調(diào)用一次服務(wù)的過(guò)程為:1)服務(wù)使用者依據(jù)認(rèn)證語(yǔ)言及語(yǔ)法構(gòu)造認(rèn)證指令。21使用與服務(wù)提供者約定的加密算法對(duì)認(rèn)證指令進(jìn)行加密。3)將加密后的密文封裝成SOAP消息,并將消息發(fā)送到服務(wù)提供者。4)服務(wù)提供者收到SOAP消息后拆封并提取消息。5)使用與服務(wù)使用者約定的加密算法解密密文。 6)對(duì)明文進(jìn)行語(yǔ)法、語(yǔ)義進(jìn)行有效性驗(yàn)證,通過(guò)驗(yàn)證后執(zhí)行認(rèn)證指令。71將執(zhí)行的結(jié)果加密、封裝為SOAP消息并再發(fā)送給服務(wù)使用者。8)服務(wù)使用者收到 SOAP消息后拆封、解密并提取執(zhí)行的結(jié)果。在上面所提到的認(rèn)證指令是基于XML格式的,所以構(gòu)造與解析認(rèn)證指令實(shí)際上是對(duì)XML的序列化與反序列化的過(guò)程,同時(shí)執(zhí)行結(jié)果也是XML格式的,所以提取執(zhí)行結(jié)果實(shí)際上也是對(duì)XML的處理,認(rèn)證指令的描述見(jiàn)下節(jié)。對(duì)認(rèn)證指令及執(zhí)行結(jié)果的加密與否在這里是可選的。當(dāng)返回的執(zhí)行結(jié)果的信息量很大而對(duì)安全性要求不高的內(nèi)容可以不進(jìn)行加密而直接返回明文,從而減少加密與解密所花的時(shí)間。
2 關(guān)鍵技術(shù)的設(shè)計(jì)與實(shí)現(xiàn)
2.1 SOAP消息
2.1.1消息的流程
基于SOAP協(xié)議的消息的請(qǐng)求/響應(yīng)過(guò)程經(jīng)過(guò)4個(gè)階段:服務(wù)使用者構(gòu)造SOAP消息、服務(wù)提供者接收并解析SOAP消息、服務(wù)提供者響應(yīng)并構(gòu)造SOAP消息、服務(wù)使用者接收并解析SOAP消息。
2.1.2消息的定義
在這里,服務(wù)使用者與服務(wù)提供者之間是通過(guò)SOAP消息的方式相互通信,并根據(jù)需要對(duì)SOAP消息進(jìn)行了一些自定義。
其中,元素中的bSecurityFlag屬性是加密標(biāo)志,它的數(shù)據(jù)類型為值布爾性,取值可以是True和False,分別對(duì)應(yīng)密文和明文兩種類型,加密的對(duì)象是元素中的內(nèi)容。元素包含認(rèn)證指令。
2)SOAP HTTP響應(yīng)消息格式如下:
2.2認(rèn)證指令系統(tǒng)
2.2.1認(rèn)證指令系統(tǒng)模型
為了定義規(guī)范的接口,通過(guò)模擬命令行系統(tǒng)中的指令系統(tǒng),構(gòu)造一個(gè)基于XML的指令系統(tǒng),此模型總體結(jié)構(gòu)由以下幾個(gè)部分組成:
1)認(rèn)證指令控制器
認(rèn)證指令控制器的主要功能是解析用戶提交的認(rèn)證指令。即驗(yàn)證用戶的合法性;檢查認(rèn)證指令語(yǔ)法的正確性;對(duì)認(rèn)證指令和返回值進(jìn)行解密和加密:對(duì)系統(tǒng)接口的訪問(wèn)進(jìn)行日志記錄。
2)認(rèn)證指令執(zhí)行器
認(rèn)證指令執(zhí)行器的目的在于實(shí)現(xiàn)有指令語(yǔ)法控制器轉(zhuǎn)交的具體任務(wù)。指令執(zhí)行器接收指令,根據(jù)指令進(jìn)行相應(yīng)的操作,然后將執(zhí)行結(jié)果以XML格式返回給指令控制器。
3)XML認(rèn)證語(yǔ)言
XML語(yǔ)言是被多種開發(fā)語(yǔ)言良好支持的擴(kuò)展標(biāo)記語(yǔ)言,建立在XML基礎(chǔ)上的認(rèn)證語(yǔ)言將很好被其他開發(fā)語(yǔ)言解析利用。
2.2.2認(rèn)證指令格式的定義
通過(guò)將指令序列化為XML格式是為了提高它的可讀性和跨平臺(tái)性。當(dāng)前使用的任何平臺(tái),任何語(yǔ)言都能夠正確處理與理解XML格式的文件。當(dāng)使用XML格式的認(rèn)證語(yǔ)言后它就不再局限于一種平臺(tái)或一種高級(jí)語(yǔ)言的處理,它可以使用于任何平臺(tái)、任何語(yǔ)言。
1)認(rèn)證指令格式
其中,元素用于通知認(rèn)證指令控制器服務(wù)請(qǐng)求者提交的指令,認(rèn)證指令控制器根據(jù)元素所包含的內(nèi)容決定調(diào)用何種指令執(zhí)行器。由于一個(gè)指令可能包括多于一個(gè)的參數(shù),所以元素的每一個(gè)子元素都為一個(gè)參數(shù),并且都帶有參數(shù)類型param Type屬性及參數(shù)的名稱paramName屬性。
由于執(zhí)行結(jié)果返回的值不一定只有一個(gè)值,例如返回一條記錄,而一條記錄中又包括了諸多字段,所以使用元素的子元素來(lái)返回一條記錄中的一個(gè)字段,并且還包括字段名稱returnName及字段類型retumType.同時(shí)又有可能返回多于一條的記錄。所以使用元素。服務(wù)提供者將不同的執(zhí)行結(jié)果序列化為標(biāo)準(zhǔn)XML格式的內(nèi)容,而返回給服務(wù)使用者后它可以通過(guò)將XML反序列化為自己需要的格式并進(jìn)行相應(yīng)的處理。
3 結(jié)束語(yǔ)
統(tǒng)一身份認(rèn)證服務(wù)作為數(shù)字化校園建設(shè)的基礎(chǔ),它的架構(gòu)與建設(shè)將直接影響一個(gè)學(xué)校數(shù)字化校園建設(shè)的水平及使用周期。構(gòu)建一個(gè)具有可擴(kuò)展性、跨平臺(tái)、高可靠性的統(tǒng)一身份認(rèn)證服務(wù)是每個(gè)學(xué)校都所期望的。本文通過(guò)分析、研究國(guó)內(nèi)個(gè)別在數(shù)字化校園建設(shè)方面具有特色的學(xué)校的統(tǒng)一身份認(rèn)證服務(wù),并通過(guò)實(shí)際設(shè)計(jì)與構(gòu)建統(tǒng)一身份認(rèn)證服務(wù)后提出了統(tǒng)一身份認(rèn)證服務(wù)的架構(gòu)。
- 1網(wǎng)絡(luò)附加存儲(chǔ)(NAS)備份技術(shù)大比拼
- 2“隱私權(quán)”挑戰(zhàn)CIO:云計(jì)算利弊并存
- 3云存儲(chǔ):技術(shù)、平臺(tái)還是服務(wù)?
- 4虛擬化成功部署必須突破的5大難關(guān)
- 5SOA如何提升中國(guó)管理軟件產(chǎn)業(yè)?
- 6警惕細(xì)節(jié) Web架構(gòu)配置無(wú)小事
- 7企業(yè)服務(wù)器安全防護(hù)的七個(gè)切入點(diǎn)
- 8存儲(chǔ)和以太網(wǎng)融合正成為大勢(shì)所趨
- 9解讀國(guó)內(nèi)安全廠商“云安全”技術(shù)發(fā)展
- 10部署B(yǎng)SM的三個(gè)建議
- 11移動(dòng)應(yīng)用繁華背后的隱憂
- 12低碳經(jīng)濟(jì),從服務(wù)器開始
- 13即時(shí)通信監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 14智能電網(wǎng)能推動(dòng)IPv6發(fā)展嗎?
- 15解決統(tǒng)一通信系統(tǒng)中安全的五個(gè)法門
- 16UPS電源效能最大化十大必殺技
- 17服務(wù)器虛擬化成數(shù)據(jù)存儲(chǔ)行業(yè)關(guān)鍵技術(shù)
- 18平民與專業(yè) GIS應(yīng)用“兩極分化”
- 19"移勱辦公"已經(jīng)成為企業(yè)管理者癿主流辦公方式之一
- 20虛擬化、刀片、節(jié)能 跨越數(shù)據(jù)中心的三道坎
- 21數(shù)據(jù)中心電力需求激增的根本原因
- 22OA辦公系統(tǒng)協(xié)同軟件為企業(yè)搭建高效的組織企業(yè)文化
- 23私有云計(jì)算與公共云計(jì)算的九大區(qū)別
- 24物聯(lián)網(wǎng):萬(wàn)物智慧運(yùn)轉(zhuǎn)
- 25利用緩存服務(wù)器實(shí)現(xiàn)負(fù)載均衡
- 26IT技術(shù)成為組織的核心戰(zhàn)略能力
- 27物聯(lián)網(wǎng)三大應(yīng)用架構(gòu)
- 28軟件架構(gòu)設(shè)計(jì)面臨新挑戰(zhàn)
- 29后OA時(shí)代即將到來(lái)了
- 30云計(jì)算是技術(shù)的集成
成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓