王 劍,吳定峰,闞 京,趙 華,劉建平
(1.中國農(nóng)業(yè)科學(xué)院 農(nóng)業(yè)信息研究所,北京 100081;2.北京工業(yè)大學(xué) 計算機(jī)學(xué)院,北京 100022)
面向農(nóng)業(yè)信息服務(wù)的單點登錄技術(shù)研究與改進(jìn)
王 劍1,吳定峰1,闞 京2,趙 華1,劉建平1
(1.中國農(nóng)業(yè)科學(xué)院 農(nóng)業(yè)信息研究所,北京 100081;2.北京工業(yè)大學(xué) 計算機(jī)學(xué)院,北京 100022)
針對農(nóng)業(yè)信息服務(wù)平臺中多個應(yīng)用系統(tǒng)在資源整合和聯(lián)合服務(wù)過程中統(tǒng)一認(rèn)證、統(tǒng)一授權(quán)和單點登錄的需求,文中提出了一種基于OAuth2.0和OpenID的單點登錄技術(shù)。該技術(shù)主體的框架能夠與現(xiàn)有的CAS框架相結(jié)合,并采用一種非侵入的方式整合多個農(nóng)業(yè)信息服務(wù)應(yīng)用平臺中的登錄功能模塊,最大限度地減少了對原有應(yīng)用平臺代碼的修改。同時,這種單點登錄技術(shù)框架還通過對細(xì)粒度控制框架和APR技術(shù)方案的應(yīng)用,對現(xiàn)有的基于CAS框架下的用戶權(quán)限管理及其HTTPS訪問方式進(jìn)行了改進(jìn)。測試結(jié)果表明,該單點登錄技術(shù)所構(gòu)建的服務(wù)系統(tǒng)總體性能穩(wěn)定,整體框架設(shè)計合理,能夠滿足農(nóng)業(yè)信息服務(wù)平臺的應(yīng)用需求。
單點登錄;權(quán)限管理;訪問控制;CAS;農(nóng)業(yè)數(shù)據(jù)服務(wù);OAuth2.0;OpenID
全球性的經(jīng)濟(jì)增長并沒有解決人類所面臨的貧窮與饑餓的問題,相反脆弱的農(nóng)業(yè)生產(chǎn)體系在人口不斷膨脹中越發(fā)顯得不堪重負(fù),由此催生了對以信息技術(shù)、生物技術(shù)為代表的現(xiàn)代農(nóng)業(yè)科技的巨大需求?,F(xiàn)代農(nóng)業(yè)科技的發(fā)展離不開農(nóng)業(yè)科技信息的支撐,離不開農(nóng)業(yè)信息服務(wù)與數(shù)據(jù)共享系統(tǒng)的支持。然而盡管目前我國擁有大量的農(nóng)業(yè)信息以及規(guī)模龐大的信息和數(shù)據(jù)管理系統(tǒng),但是不同農(nóng)業(yè)信息服務(wù)部門的應(yīng)用系統(tǒng)之間,乃至同一部門的不同系統(tǒng)之間,由于技術(shù)策略、安全標(biāo)準(zhǔn)以及軟硬件平臺的差異,導(dǎo)致這些系統(tǒng)中的農(nóng)業(yè)信息資源不能有效地共享和整合,且這些信息和數(shù)據(jù)管理系統(tǒng)由于開發(fā)環(huán)境不規(guī)范、技術(shù)文檔缺失等原因,基本上不能通過統(tǒng)一和標(biāo)準(zhǔn)化的改進(jìn)與升級來滿足信息資源共享和整合的需求。這樣就造成各個涉農(nóng)信息和數(shù)據(jù)管理系統(tǒng)間信息整合受限的瓶頸,嚴(yán)重影響了農(nóng)業(yè)信息服務(wù)的效果,造成農(nóng)業(yè)信息資源分布不均衡、信息配置效率低下等一系列問題[1],無法滿足現(xiàn)代農(nóng)業(yè)科技發(fā)展所必須的海量和標(biāo)準(zhǔn)統(tǒng)一的信息和數(shù)據(jù)共享的需求。
單點登錄技術(shù)(Single Sign-On,SSO)是一種目前最為流行的對用戶進(jìn)行統(tǒng)一登錄、管理的解決方案[2]。該技術(shù)能夠支持多系統(tǒng)用戶的集中管理,實現(xiàn)多個系統(tǒng)之間的整合與跳轉(zhuǎn)[3]。隨著信息技術(shù)與網(wǎng)絡(luò)技術(shù)的不斷進(jìn)步,以單點登錄技術(shù)為基礎(chǔ)的異構(gòu)信息系統(tǒng)整合不斷發(fā)展和完善,陸續(xù)出現(xiàn)了多種較為成熟的實現(xiàn)方案[4]。
耶魯大學(xué)的CAS(Central Authentication Server)系統(tǒng)是其中最有代表性的系統(tǒng)之一[5]。其技術(shù)實質(zhì)是在一個安全區(qū)域內(nèi)驗證多個服務(wù)或資源,并形成統(tǒng)一和規(guī)格化的驗證證書以供多個系統(tǒng)之間的驗證[6]。這一技術(shù)的應(yīng)用早期主要是針對圖書館等公益性服務(wù)部門[2],逐漸擴(kuò)展到工業(yè)[7]、醫(yī)療[8]、電子商務(wù)[6]、社交媒體[9]、農(nóng)業(yè)技術(shù)推廣[1]、農(nóng)業(yè)信息服務(wù)[10]等諸多國民經(jīng)濟(jì)和科學(xué)研究和應(yīng)用領(lǐng)域。每一領(lǐng)域都根據(jù)其不同的應(yīng)用需求,提出了各自的解決方案。駱嘉偉等[8]應(yīng)用中央認(rèn)證服務(wù)和MyBatis技術(shù)在區(qū)域衛(wèi)生服務(wù)信息平臺上實現(xiàn)了面向多個應(yīng)用系統(tǒng)的單點登錄服務(wù),并在服務(wù)器端引用了MyBatis技術(shù)來展示各個子系統(tǒng)的運(yùn)行信息,同時還采用了Axis2技術(shù)對多個子系統(tǒng)中的數(shù)據(jù)進(jìn)行信息同步,最終在技術(shù)層面上實現(xiàn)了整個系統(tǒng)中統(tǒng)一權(quán)限分配,統(tǒng)一平臺樣式風(fēng)格以及統(tǒng)一的會員用戶管理等一系列功能,且運(yùn)行穩(wěn)定,整體框架設(shè)計合理,取得了較好的應(yīng)用效果。徐識溥等[1]針對上海都市農(nóng)業(yè)和社會主義新農(nóng)村建設(shè)的實際需求,在現(xiàn)有農(nóng)業(yè)技術(shù)綜合知識庫的基礎(chǔ)上,以MVC框架為技術(shù)支撐,結(jié)合HTTPS協(xié)議,設(shè)計并開發(fā)了一套基于HTTPS的單點登錄系統(tǒng)。該系統(tǒng)充分利用SSL技術(shù)中相關(guān)握手的原理,獲取并解析用戶表單信息,將耦合相對較低的多個已有知識系統(tǒng)進(jìn)行整合,且整合過程中對原有系統(tǒng)的代碼不做或少做修改,實現(xiàn)了多個系統(tǒng)之間的無縫鏈接,取得了很好的應(yīng)用效果。
然而目前已有的單點登錄系統(tǒng)盡管均有一定的應(yīng)用背景,所用技術(shù)與其應(yīng)用對象也較為切合,但各系統(tǒng)中的內(nèi)容和表現(xiàn)形式上各有不同,技術(shù)各異,并沒有一個通用的組織架構(gòu)?,F(xiàn)有方案都無法適用于農(nóng)業(yè)信息服務(wù)平臺這種信息學(xué)科跨度大、使用人數(shù)眾多的應(yīng)用系統(tǒng)。因此,對于農(nóng)業(yè)信息服務(wù)平臺來說,應(yīng)用CAS系統(tǒng)實現(xiàn)單點登錄所面臨的挑戰(zhàn)主要包含3個方面:
(1)不同用戶權(quán)限的管理問題,即對不同身份和跨系統(tǒng)注冊的用戶賦予或更改權(quán)限過程中所面臨的系統(tǒng)管理方面的問題;
(2)CAS應(yīng)用過程中的HTTPS訪問方式性能不高的問題,即HTTPS安全性與實際用戶對于系統(tǒng)響應(yīng)時間不斷提升的需求之間不匹配的問題;
(3)舊有系統(tǒng)升級更新困難的問題,即原有老舊系統(tǒng)由于設(shè)計和代碼說明文件缺失或不規(guī)范所造成的系統(tǒng)改造困難的問題。
文中針對農(nóng)業(yè)信息服務(wù)系統(tǒng)間信息交流和共享途徑不暢,服務(wù)整合性差等問題,應(yīng)用基于OAuth2.0及OpenID技術(shù)的CAS框架構(gòu)建了面向農(nóng)業(yè)信息服務(wù)的單點登錄系統(tǒng),并根據(jù)當(dāng)前服務(wù)所面臨的問題,應(yīng)用細(xì)粒度控制框架和APR技術(shù)方案,對單點登錄系統(tǒng)中用戶權(quán)限管理和HTTPS訪問方式進(jìn)行了改進(jìn)。同時,OpenID技術(shù)的應(yīng)用能夠以一種非侵入式的方式實現(xiàn)單點登錄,避免了對原有系統(tǒng)的改造和更新。該系統(tǒng)的應(yīng)用能夠有效地提高農(nóng)業(yè)信息服務(wù)用戶的使用體驗,降低信息服務(wù)的操作復(fù)雜度,減少系統(tǒng)管理和維護(hù)費用,促進(jìn)農(nóng)業(yè)信息資源的整合和共享。
文中的設(shè)計目標(biāo)是基于國家農(nóng)業(yè)科學(xué)數(shù)據(jù)共享平臺中6個已經(jīng)正式運(yùn)營的服務(wù)系統(tǒng),包括熱帶作物科學(xué)數(shù)據(jù)服務(wù)系統(tǒng)、作物科學(xué)數(shù)據(jù)服務(wù)系統(tǒng)、草業(yè)科學(xué)數(shù)據(jù)服務(wù)系統(tǒng)、漁業(yè)科學(xué)數(shù)據(jù)服務(wù)系統(tǒng)、動物科學(xué)數(shù)據(jù)服務(wù)系統(tǒng)、區(qū)劃科學(xué)數(shù)據(jù)服務(wù)系統(tǒng)。在這些服務(wù)系統(tǒng)的基礎(chǔ)上,應(yīng)用基于OAuth2.0及OpenID技術(shù)CAS中央認(rèn)證服務(wù)框架,并結(jié)合細(xì)粒度控制模型和ARP技術(shù)來實現(xiàn)數(shù)據(jù)共享平臺的單點登錄服務(wù)。系統(tǒng)內(nèi)部模塊可劃分為用戶管理、權(quán)限管理、身份管理、登錄管理、注冊管理和系統(tǒng)管理共6個模塊。系統(tǒng)的整體架構(gòu)如圖1所示。
圖1 系統(tǒng)整體架構(gòu)
在系統(tǒng)搭建過程中,所有需要支持單點登錄的網(wǎng)站均需要在入口程序加入基于OAuth2.0的驗證代碼,且在后臺的數(shù)據(jù)庫中需要增加對OpenID的綁定選項。當(dāng)用戶進(jìn)行登錄操作時,系統(tǒng)通過OAuth2.0截取并分析訪問服務(wù)的請求,根據(jù)請求的類型授予相應(yīng)的OpenID憑證,并以此調(diào)用相應(yīng)的服務(wù)模塊進(jìn)行處理,引導(dǎo)登錄組件與系統(tǒng)服務(wù)模塊之間的協(xié)作,進(jìn)而傳遞OpenID憑證來構(gòu)造登錄請求,最終實現(xiàn)了用戶的登錄。
整個系統(tǒng)的基本操作流程如下:
(1)網(wǎng)站訪問者進(jìn)入其中的一個數(shù)據(jù)共享服務(wù)系統(tǒng)A.Domain.com時,他將以訪客身份向A.Domain.com提交注冊請求;
(2)A.Domain.com將注冊請求發(fā)送到用戶中心User.Domain.com;
(3)注冊完成后在User.Domain.com產(chǎn)生Domain.com域下的Cookies和與其對應(yīng)的服務(wù)器Session,隨后跳轉(zhuǎn)回A.Domain.com的授權(quán)頁面,讓用戶將在User.Domain.com注冊的用戶授權(quán)給A.Domain.com,A.Domain.com將該賬戶寫入到服務(wù)器數(shù)據(jù)表中的舊用戶表的相關(guān)項中;
(4)跳轉(zhuǎn)回A.Domain.com之后依據(jù)存在的Cookies,用戶已經(jīng)登錄;
(5)用戶以未授權(quán)用戶的身份訪問另一數(shù)據(jù)共享服務(wù)系統(tǒng)B.Domain.com時,將用戶導(dǎo)向至B.Domain.com的OAuth授權(quán)頁面進(jìn)行授權(quán),授權(quán)完成后即為登錄狀態(tài);
(6)在用戶訪問已授權(quán)的第三個服務(wù)系統(tǒng)C.Domain.com時,依據(jù)已經(jīng)存在的Cookies,用戶無需再次登錄。
由此,用戶從一個數(shù)據(jù)共享服務(wù)系統(tǒng)進(jìn)行注冊或登錄操作后,即可獲取所有的系統(tǒng)的會員授權(quán)資格。
這種面向農(nóng)業(yè)信息服務(wù)中的單點登錄系統(tǒng)的主要特點如下:
(1)實現(xiàn)了用戶信息的統(tǒng)一管理和集中存儲,且原有農(nóng)業(yè)信息服務(wù)平臺中的老用戶也能通過系統(tǒng)所提供的接口,將其身份進(jìn)行登記和無縫升級,獲得所有平臺訪問權(quán)限,減少了多次注冊所帶來的操作成本和安全隱患,保證了用戶信息的安全性和唯一性,提高了用戶訪問效率。
(2)OpenID技術(shù)的使用能夠提供更加安全穩(wěn)定的身份認(rèn)證方法和憑證傳輸路徑,極大地增強(qiáng)了系統(tǒng)資源的安全性,并保障了用戶個人信息不被篡改和泄露。
(3)細(xì)粒度控制框架的應(yīng)用能夠提供權(quán)限管理的接口,系統(tǒng)的管理人員能夠統(tǒng)一地對用戶權(quán)限進(jìn)行配置,在方便了管理的同時,也確保了用戶在各個服務(wù)平臺中所擁有權(quán)限的準(zhǔn)確性。
(4)針對APR技術(shù)的應(yīng)用能夠極大地提高系統(tǒng)訪問的效率,降低服務(wù)延時和系統(tǒng)復(fù)雜度,增強(qiáng)使用的體驗水平。
(5)通過對數(shù)據(jù)進(jìn)行ASE-128的加密,能夠更好地降低安全隱患,保證數(shù)據(jù)的安全性和可靠性。
(6)能夠更好地適應(yīng)農(nóng)業(yè)信息服務(wù)的需求,提高多個數(shù)據(jù)共享平臺間的協(xié)作水平,增強(qiáng)農(nóng)業(yè)數(shù)據(jù)資源的整合力度,避免了繁瑣的用戶操作過程,增強(qiáng)了信息服務(wù)品質(zhì)。
(7)能夠提供大量的標(biāo)準(zhǔn)接口,確保了系統(tǒng)的可擴(kuò)展性,使整個信息服務(wù)平臺與農(nóng)業(yè)信息化水平保持同步發(fā)展。
5.80%的EGR率時文丘里管流動狀態(tài)見圖4,由圖4可知:管道內(nèi)壓力分布總體梯度明顯,過渡平和,空氣從文丘里管進(jìn)口流入喉口段時,壓力由0.135 6 MPa降至0.125 MPa,降低了0.010 6 MPa,廢氣壓力是0.125 7 MPa,使得其與進(jìn)氣兩者之間存在壓力梯度,保證廢氣的流入。由圖4b)可知:氣流由壓縮段向喉口段流動時,壓力減小,流速慢慢加大,當(dāng)流至喉口部位時達(dá)到最大,而后氣流流向擴(kuò)壓段,流速慢慢減小,壓力逐漸增加。
對于農(nóng)業(yè)數(shù)據(jù)服務(wù)來說,用戶的授權(quán)是保障系統(tǒng)和資源安全的重要組成部分,其基本任務(wù)是判斷用戶是否具有操作訪問當(dāng)前系統(tǒng)的權(quán)限。傳統(tǒng)的基于CAS技術(shù)的單點登錄模型中,CAS技術(shù)只提供針對用戶身份識別的功能,即判斷用戶能否訪問系統(tǒng),而對用戶針對不同子系統(tǒng)的訪問權(quán)限控制方面則沒有提供相應(yīng)的支持[11]。在農(nóng)業(yè)信息服務(wù)過程中,由于各個服務(wù)系統(tǒng)的安全等級存在一定差異,不同用戶所具有的權(quán)限,其能夠訪問的資源也是不同的。這種情況下,如果單點登錄系統(tǒng)不具有權(quán)限控制管理的功能,那么信息服務(wù)系統(tǒng)中的所有資源就會無差別地向所有進(jìn)行單點登錄的用戶開放,這樣會使系統(tǒng)資源的安全性遭到極大的損害。因此,對于面向農(nóng)業(yè)信息服務(wù)的單點登錄系統(tǒng)來說,用戶的權(quán)限管理是一個必須解決的問題。
針對CAS框架下的單點登錄系統(tǒng)的用戶權(quán)限管理問題,目前應(yīng)用比較廣泛的解決方案是一種基于粗粒度控制的用戶權(quán)限管理技術(shù),其基本原理是在CAS服務(wù)器中添加權(quán)限管理模塊(CAS-AM)來實現(xiàn)對用戶的訪問權(quán)限的控制[9]。這種權(quán)限管理模塊將不同的用戶角色映射到不同的權(quán)限中去,當(dāng)用戶進(jìn)行單點登錄時,CAS服務(wù)器不但要校驗用戶的身份,而且還會將用戶的身份標(biāo)識發(fā)送到CAS-AM進(jìn)行進(jìn)一步驗證來判斷其具有的權(quán)限,只有身份標(biāo)識合法、權(quán)限驗證通過的用戶才能進(jìn)入系統(tǒng)。然而這種基于粗粒度技術(shù)的解決方案,由于權(quán)限管理模塊內(nèi)置于CAS服務(wù)器端,因此權(quán)限控制僅限于系統(tǒng)級別,即CAS僅控制用戶能夠進(jìn)入哪些服務(wù)系統(tǒng),而對于系統(tǒng)內(nèi)部資源的訪問權(quán)限控制則無能為力。這樣就造成了用戶的權(quán)限管理過于粗糙,無法適應(yīng)農(nóng)業(yè)信息服務(wù)的需求。
針對上述解決方案的缺陷,文中系統(tǒng)采用基于細(xì)粒度技術(shù)的權(quán)限管理的解決方案。該方案通過在CAS客戶端集成Spring Security框架,并應(yīng)用Spring Security框架中的認(rèn)證管理器、訪問權(quán)限管理器,實現(xiàn)CAS對用戶訪問權(quán)限的控制的細(xì)化。
用戶權(quán)限驗證流程如圖2所示。
(1)當(dāng)用戶在客戶端訪問一個受保護(hù)的數(shù)據(jù)資源時,CAS客戶端將會攔截對用戶的請求;
(2)Spring Security框架將會調(diào)用認(rèn)證管理器判斷用戶身份是否已經(jīng)通過驗證;
圖2 系統(tǒng)權(quán)限驗證流程圖
(3)如果身份驗證沒有通過,認(rèn)證管理器將會把請求發(fā)送到CAS服務(wù)器端進(jìn)行處理;
(4)通過身份驗證的用戶,該請求將會發(fā)送給訪問權(quán)限管理器進(jìn)行權(quán)限驗證;
(5)當(dāng)權(quán)限驗證沒有通過時,則系統(tǒng)顯示訪問拒絕的頁面;
(6)如果權(quán)限驗證通過,認(rèn)證管理器則將請求發(fā)送給后臺數(shù)據(jù)庫調(diào)取相應(yīng)的數(shù)據(jù)資源。
文中這種基于細(xì)粒度技術(shù)的權(quán)限管理方案,能夠有效地解決基于粗粒度技術(shù)的權(quán)限管理方案的缺陷,使權(quán)限的管理更加靈活、方便,增強(qiáng)了信息服務(wù)系統(tǒng)中數(shù)據(jù)資源的安全性。
在傳統(tǒng)的基于CAS框架的單點登錄系統(tǒng)中,為了保障用戶賬號密碼的安全性,CAS系統(tǒng)提供了基于HTTPS(互聯(lián)網(wǎng)安全傳輸協(xié)議)訪問方式。相比HTTP訪問協(xié)議,這種訪問方式通過添加SSL安全套接層的方式,對客戶端的請求進(jìn)行加密,這樣有效地避免了用戶信息以明文方式進(jìn)行傳輸所帶來的風(fēng)險,確保了傳輸過程的安全性。然而在實際應(yīng)用過程中,由于HTTPS訪問方式需要在SSL安全套接層上進(jìn)行SLL握手協(xié)議和傳輸數(shù)據(jù)的加密和解密[12-13],這樣就導(dǎo)致數(shù)據(jù)傳輸效率的下降。文獻(xiàn)[9]所做的實驗證明,相比HTTP,HTTPS傳輸所消耗的時間要多出30%~40%。由此可見,這種傳輸效率的低效,極大地影響了單點登錄系統(tǒng)服務(wù)器的并發(fā)性,降低了用戶的使用體驗。
針對上述問題,文中的單點登錄系統(tǒng)采用了基于APR技術(shù)的解決方案來改進(jìn)CAS服務(wù)器在傳輸系統(tǒng)上的缺陷。APR(Apache Portable Runtime)技術(shù)是Tomcat所提供的一種組件技術(shù),其本質(zhì)是一個高可移植庫[14]。APR技術(shù)具有多種用途,包括本地進(jìn)程管理(如NT管道管理、設(shè)置共享內(nèi)存等)、IO訪問功能(如針對OpenSSL、sendfile等協(xié)議的支持)、隨機(jī)數(shù)生成以及狀態(tài)監(jiān)控等。APR技術(shù)所具有的這些功能能夠有效地使CAS服務(wù)器集成本地的其他Web技術(shù),提高Java的運(yùn)行效率,進(jìn)而提升CAS服務(wù)器的性能。一般來說,APR技術(shù)對HTTPS訪問方式的優(yōu)化是從SSL會話協(xié)商、對稱加密算法和證書長度三個方面來開展的[15]。這種方案在保持了HTTPS協(xié)議安全性的同時,提高了CAS服務(wù)器端對HTTPS并發(fā)出的性能,從而滿足了農(nóng)業(yè)科學(xué)數(shù)據(jù)共享網(wǎng)站的服務(wù)需求。在實際應(yīng)用過程中,這種解決方案通過在CAS服務(wù)器端的Tomcat中加載APR、JNI、OPENSSL等附件,并集成Tomcat-Native應(yīng)用來開展Web服務(wù),即服務(wù)器端的Tomcat工作模式從默認(rèn)方式切換為APR方式。這種切換和安裝步驟如圖3所示。
圖3 APR方式的配置流程
性能測試是一種面向軟件級別的系統(tǒng)測試,其本質(zhì)是通過技術(shù)手段來模擬系統(tǒng)在正常、峰值以及異常情況下各種性能指標(biāo)的變化趨勢和狀態(tài)[8]。通常來說,系統(tǒng)性能測試的目的在于驗證系統(tǒng)所包含的各種解決方案是否能夠滿足用戶使用的需求。具體到文中系統(tǒng)所應(yīng)用的性能測試需要解決的問題主要有以下2點:
(1)按照文中方法所搭建的單點登錄系統(tǒng)是否對原有系統(tǒng)改動最小,具有權(quán)限管理的能力;
(2)文中所搭建的單點登錄系統(tǒng)所用的訪問方式(改進(jìn)的HTTPS訪問方式)是否高效。
按照性能測試的需求,在所搭建的測試環(huán)境中,單點登錄系統(tǒng)的硬件條件為Intel Xeon CPU E31220,120 G硬盤,4 G內(nèi)存和100 Mbps網(wǎng)絡(luò);軟件環(huán)境為Linux操作系統(tǒng),Tomcat6.0服務(wù)器。
5.1 系統(tǒng)搭建和權(quán)限管理的測試
在測試過程中,針對單點登錄系統(tǒng)搭建和權(quán)限管理的性能測試,通過采用傳統(tǒng)的CAS服務(wù)器和文中所提供的解決方案這兩種方法對客戶端網(wǎng)站—國家農(nóng)業(yè)科學(xué)數(shù)據(jù)共享中心的網(wǎng)站群(http://www.agridata.cn)進(jìn)行單點登錄系統(tǒng)的搭建和權(quán)限管理的比較測試,比較測試結(jié)果如表1所示。
表1 系統(tǒng)搭建與權(quán)限管理測試結(jié)果
測試結(jié)果表明,相比傳統(tǒng)的以CAS架構(gòu)為主要技術(shù)手段的系統(tǒng)解決方案,文中所提供的解決方案在應(yīng)用和布置過程中,針對原有客戶網(wǎng)站的改動較少,且具備很好的權(quán)限和用戶管理功能,能夠很好地滿足農(nóng)業(yè)科學(xué)數(shù)據(jù)共享工作的需要。
5.2 系統(tǒng)訪問性能的測試
此次測試采用LoadRunner8.0測試工具,通過模擬200個虛擬用戶,通過逐步加壓的模式,連續(xù)發(fā)出2 000個連接請求來測試傳統(tǒng)的HTTPS訪問方式和文中所給出的優(yōu)化方案在響應(yīng)性能上的差異。測試結(jié)果如表2所示。
表2 訪問性能測試結(jié)果
從測試結(jié)果可以看出,優(yōu)化后的訪問方式所采用的AES-128加密算法比傳統(tǒng)的DES算法安全性更高,且參照相關(guān)文獻(xiàn)[9]中的實驗和數(shù)據(jù)能夠證明,AES-128的性能優(yōu)于DES,其性能優(yōu)化系數(shù)為7,其優(yōu)化效果非常明顯。另一方面,針對服務(wù)器并發(fā)能力的主要衡量指標(biāo)的單次請求響應(yīng)時間和失效請求數(shù)的相關(guān)測試結(jié)果也表明,應(yīng)用文中技術(shù)進(jìn)行優(yōu)化的系統(tǒng),其訪問方式的性能比傳統(tǒng)的HTTPS訪問方式提高了9.3倍,而失敗請求的次數(shù)也從146次降低到2次,優(yōu)化效果非常明顯,能夠取得很好的用戶體驗,在應(yīng)用過程中已經(jīng)完全能夠滿足農(nóng)業(yè)信息服務(wù)的需求。
作為信息與數(shù)據(jù)服務(wù)載體的農(nóng)業(yè)信息服務(wù)平臺是農(nóng)業(yè)生產(chǎn)和科研工作者探索未知世界、發(fā)現(xiàn)自然規(guī)律、實現(xiàn)技術(shù)變革的有效工具,是突破科學(xué)前沿、解決經(jīng)濟(jì)社會發(fā)展和國家農(nóng)業(yè)安全重大科技問題的技術(shù)基礎(chǔ)和有效手段。針對當(dāng)前農(nóng)業(yè)信息服務(wù)平臺系統(tǒng)異構(gòu)、資源分散、不易整合的現(xiàn)狀,文中探索了解決農(nóng)業(yè)數(shù)據(jù)服務(wù)平臺中多個網(wǎng)站服務(wù)系統(tǒng)的資源整合問題的方法,設(shè)計了一種基于OAuth2.0及OpenID技術(shù)與CAS框架相結(jié)合的單點登錄系統(tǒng),并應(yīng)用細(xì)粒度和APR的相關(guān)技術(shù),實現(xiàn)了客戶端系統(tǒng)權(quán)限的統(tǒng)一管理和HTTPS訪問方式的優(yōu)化。測試結(jié)果表明,相比傳統(tǒng)的CAS系統(tǒng)框架,該解決方案在系統(tǒng)性能上有了相當(dāng)程度的優(yōu)化,能夠在一定程度上滿足當(dāng)前對農(nóng)業(yè)數(shù)據(jù)服務(wù)工作的需求,為今后國家統(tǒng)一化的農(nóng)業(yè)信息服務(wù)平臺建設(shè)規(guī)劃和制定相關(guān)的技術(shù)規(guī)范的設(shè)立提供技術(shù)層面上的有益探索。
然而,由于時間所限,文中的系統(tǒng)構(gòu)建未對用戶的層次結(jié)構(gòu)進(jìn)行分析,且在對HTTPS訪問方式進(jìn)行優(yōu)化時,未能考慮對SSL加速卡的優(yōu)化方案。這些研究將在以后進(jìn)行進(jìn)一步的研究和探討,以期能夠使這種面向農(nóng)業(yè)信息服務(wù)的單點登錄系統(tǒng)性能更加優(yōu)化。
[1] 徐識溥,陳建林,程彬彬,等.基于HTTPS協(xié)議的單點登錄系統(tǒng)在農(nóng)業(yè)技術(shù)綜合知識庫建設(shè)中的應(yīng)用[J].農(nóng)學(xué)學(xué)報,2014,4(1):94-98.
[2] 胡雅琴.單點登錄技術(shù)現(xiàn)狀調(diào)查與分析[J].軟件產(chǎn)業(yè)與工程,2014(1):53-56.
[3] 施正曄.SSO單點登錄模型的優(yōu)化研究[J].計算機(jī)光盤軟件與應(yīng)用,2012(7):191-191.
[4] 王 娟,鄭淑麗,方元康.無證書隱式認(rèn)證改進(jìn)的Kerberos單點登錄協(xié)議[J].計算機(jī)工程與應(yīng)用,2013,49(10):105-108.
[5] 朱 青.基于CAS的單點登錄系統(tǒng)的設(shè)計與實現(xiàn)[D].北京:北京工業(yè)大學(xué),2014.
[6] 龍毅宏,唐志紅,王亞龍,等.面向HTTP身份鑒別協(xié)議的單點登錄透明集成技術(shù)研究[J].計算機(jī)應(yīng)用研究,2013,30(9):2813-2818.
[7] 吳賢平.基于指紋識別和CAS的單點登錄模型技術(shù)研究[J].計算機(jī)應(yīng)用研究,2012,29(4):1381-1383.
[8] 駱嘉偉,唐國英.區(qū)域衛(wèi)生信息化中單點登錄系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機(jī)應(yīng)用,2012,32(6):1782-1786.
[9] 蘇悅洪.基于CAS協(xié)議的單點登錄系統(tǒng)的研究與改進(jìn)[D].廣州:華南理工大學(xué),2014.
[10] 李芳芳,王 帥,許舒人,等.一種基于過濾器的遺留系統(tǒng)安全單點登錄方案[J].計算機(jī)應(yīng)用與軟件,2014,31(10):300-304.
[11] 金偉祖,李平新.基于CAS集群的單點失效問題解決方案[J].計算機(jī)工程,2010,36(1):51-54.
[12] Ordan Sissel.SSL handshake latency and HTTPS optimizations[EB/OL].2010.http://www.semicomplete.com/blog/geekery/ssl-latency.html.
[13] Lewis K D,James E,Lewis J E.Web single sign-on authentication using SAML[J].International Journal of Computer Science Issues,2009,2:41-48.
[14] Parker T A.Single sign-on systems the technologies and the products[C]//Proc of European convention on security and detection.[s.l.]:[s.n.],1995:151-155.
[15] Zhang Lei,Zhang Futai,Wu Qianhong,et al.Simulatable certificateless two-party authenticated key agreement protocol[J].Information Sciences,2010,180(2):1020-1030.
Design and Improvement of Single Sign-on Technology for Agriculture Information Services
WANG Jian1,WU Ding-feng1,KAN Jing2,ZHAO Hua1,LIU Jian-ping1
(1.Agricultural Information Institute of CAAS,Beijing 100081,China;2.College of Computer Science and Technology,Beijing University of Technology,Beijing 100022,China)
To address the requirements of unified authentication and authorization,and the original Single Sign-On (SSO) in the processing of resource integration and joint services in information service of agriculture,a SSO technology is proposed in this paper based on OAuth2.0 and OpenID.This system could integrate current CAS,utilization of a non-invasive manner to integrate log function modules of multiple application platforms,which can minimize the modification of code for original platform.Besides,user rights management and HTTPS access in this system that based on CAS framework are improved with technologies of fine-grained control and APR.The test results show the performance of the system is stable and the design of the platform is reasonable.It is believed that the demand for agricultural information service platform should be met.
single sign;rights management;access control;CAS;agricultural data services;OAuth2.0;OpenID
2015-07-03
2015-10-14
時間:2016-03-22
國家“863”高技術(shù)發(fā)展計劃項目(2013AA102405);中央級公益性科研院所基本科研業(yè)務(wù)費專項課題(2015-J-03);中國農(nóng)業(yè)科學(xué)院創(chuàng)新工程(CAAS-ASTIP-2015-AII-03)
王 劍(1976-),男,副研究員,研究方向為農(nóng)業(yè)信息技術(shù)。
http://www.cnki.net/kcms/detail/61.1450.TP.20160322.1519.046.html
TP311
A
1673-629X(2016)05-0191-06
10.3969/j.issn.1673-629X.2016.05.042