資源描述:
《基于SOAP安全代理的Web Service設(shè)計(jì)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、ISSN1009-3044E—mail:info@CCCC.net.cnCompu~rKnowledgeandTechnology電腦知識(shí)與技術(shù)http://www.dnzs.net.enYo1.7,No.28,October2011.Teh+86—551—569o9635690964基于SOAP安全代理的WebService設(shè)計(jì)王婷(信息網(wǎng)絡(luò)安全公安部重點(diǎn)實(shí)驗(yàn)室公安部第三研究所.上海201000)摘要:該文闡述了WebServices基礎(chǔ)和SOAP規(guī)范,分析了WebServices的安全問題,基于WS—Security實(shí)現(xiàn)SOAP簽名和加
2、密,保證了web服務(wù)中數(shù)據(jù)交換安全,確保消息的機(jī)密性、完整性和不可否認(rèn)性。提出采用安全代理的方式處理SOAP安全,使安全與業(yè)務(wù)處理分開,對(duì)用戶和開發(fā)者透明,易于集成和維護(hù)。‘關(guān)鍵詞:WebServices;SOAP;簽名;加密;代理中圖分類號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009—3044(2011)28—鰓50.03大多數(shù)應(yīng)用系統(tǒng)需要在不同組織機(jī)構(gòu)的異構(gòu)平臺(tái)間完成數(shù)據(jù)收集、傳遞和處理。面向服務(wù)的架構(gòu)是現(xiàn)代應(yīng)用系統(tǒng)的基礎(chǔ),WebServices作為面向服務(wù)的核心,具有跨平臺(tái)、松耦合、與實(shí)現(xiàn)語言無關(guān)等特點(diǎn),是一種分布式模型技術(shù),被廣泛應(yīng)
3、用于現(xiàn)代應(yīng)用系統(tǒng)中。不同組織采用WebSeivices技術(shù)對(duì)外提供服務(wù)。這樣,應(yīng)用系統(tǒng)的安全邊界由Intranet擴(kuò)大到Intemet,給各組織機(jī)構(gòu)平臺(tái)的安全性和消息傳遞的安全帶來了挑戰(zhàn)。1WebServices基礎(chǔ)和SoAP規(guī)范1.1WebServices基礎(chǔ)WebServices是一組通過標(biāo)準(zhǔn)的Web協(xié)議可編程訪問的Web組件。其涉及的相關(guān)技術(shù)主要包括可擴(kuò)展標(biāo)記語言XML,簡(jiǎn)單對(duì)象訪問協(xié)議SOAP,Web服務(wù)描述語言WSDL,通用描述、發(fā)現(xiàn)與集成UDDI。其中XML是WebServices平臺(tái)中表示數(shù)據(jù)的基本格式;SOAP是輕量級(jí)的協(xié)議
4、,它通過XML文檔形式發(fā)送和接收消息實(shí)現(xiàn)異構(gòu)平臺(tái)上的不同系統(tǒng)的相互通信和共享數(shù)據(jù);WSDL用來描述WebServices所完成的功能和WebServices所提供的服務(wù);UDDI用來注冊(cè)、發(fā)布已建立的WebServicesll。一個(gè)典型的WebServices調(diào)用和返回的消息傳遞模型如圖1圜,服務(wù)提供方對(duì)外提供接口,隱藏內(nèi)部實(shí)現(xiàn),服務(wù)請(qǐng)求方通過調(diào)用接口請(qǐng)求WebServices服務(wù)。WebServices中的消息基于XML格式,以SOAP協(xié)議封裝,可以通過任意支持字節(jié)流的協(xié)議傳送,而由于H1TrP協(xié)議的通用性,目前大多都將SOAP與HrIT
5、p綁定。1.2SOAP規(guī)范【3卅腿勢(shì)請(qǐng)求宵Jjfi務(wù)提供方圖1消息傳遞模型圖簡(jiǎn)單對(duì)象訪問協(xié)議(SOAP,全稱SimpleObjectAccessProtoco1)是一種標(biāo)準(zhǔn)化的通訊規(guī)范,以XML形式提供了一個(gè)簡(jiǎn)單、輕量的用于在分散或分布環(huán)境中交換結(jié)構(gòu)化和類型信息的機(jī)制。SOAP消息分為四部分:1)SOAP信封(Envelope):定義了一個(gè)SOAP消息表示框架,包括消息頭Header和消息體Body,消息頭中定義消息發(fā)送和接收者信息以及附加的特性.消息體中包含發(fā)送的數(shù)據(jù)信息。2)SOAP編碼規(guī)則:定義了一組數(shù)據(jù)序列化的編碼規(guī)則,定義數(shù)據(jù)類型
6、。3)SOAPRPC:表示遠(yuǎn)程過程調(diào)用和響應(yīng)的約定。在SOAPRPC請(qǐng)求和相應(yīng)中,方法調(diào)用被串行化為SOAP編碼規(guī)則定義的,基于XML的數(shù)據(jù)類型。4)SOAP綁定:定義SOAP在傳輸過程中使用特定底層通信協(xié)議的約定。WebServices使用SOAP進(jìn)行消息傳遞,是將每個(gè)遠(yuǎn)程請(qǐng)求串行化為基于XML數(shù)據(jù)類型,把請(qǐng)求數(shù)據(jù)和應(yīng)答數(shù)據(jù)序列化,附加上消息發(fā)送和請(qǐng)求者等信息,以HTI'P等協(xié)議為底層傳輸協(xié)議。2WebServices安全2.1webServices安全問題WebServices的數(shù)據(jù)交換是在異構(gòu)平臺(tái)間進(jìn)行,需要跨越不同平臺(tái)的網(wǎng)絡(luò)安全邊界
7、,在互聯(lián)網(wǎng)上進(jìn)行消息傳送,易受到數(shù)據(jù)截取、篡改、非授權(quán)訪問等威脅。所以,安全問題一直是WebServices亟需解決的,WebServices安全必須是覆蓋消息傳輸?shù)乃械膮f(xié)議層,不能僅考慮孤立的單個(gè)協(xié)議層。消息傳遞的安全主要包括四個(gè)方面:機(jī)密性、完整性、不可抵賴以及授權(quán)訪問。WebServices服務(wù)提供方一般使用邊界防火墻處理WebServices的消息驗(yàn)證,對(duì)訪問接口的數(shù)據(jù)包源地址進(jìn)行驗(yàn)證,但數(shù)據(jù)包的源地址是易于偽裝,而且由于WebServices在傳輸層采用H1TrP作為傳輸協(xié)議,其內(nèi)容大多數(shù)的防火墻并不檢查或者過濾,防火墻的有效性
8、大大降低。消息傳輸層一般采用SSL來對(duì)HTI'P進(jìn)行加密,但是通過SSL只能是實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的安全,端對(duì)端的安全無法保證圈。SOAP是輕量級(jí)的基于XML的協(xié)議,本身并不處理安全,并且