基于Web Services的數(shù)字化校園的構(gòu)建研究_第1頁
基于Web Services的數(shù)字化校園的構(gòu)建研究_第2頁
基于Web Services的數(shù)字化校園的構(gòu)建研究_第3頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

基于WebServices的數(shù)字化校園的構(gòu)建研究

這些businessService的信息集合可以再次加以分類,使Web應(yīng)用服務(wù)的描述可以按不同的行業(yè)、產(chǎn)品、服務(wù)類型或是地域劃分來進行。分類的方法的機制與businessEntity是類似的。

(3)技術(shù)綁定信息:bindingTemplate元素

對于每一個businessService,存在一個或多個Web服務(wù)的技術(shù)描述bindingTemplate。這些技術(shù)描述包括應(yīng)用程序連接遠程Web服務(wù)并與之通訊所必須的信息。這些信息包括Web應(yīng)用服務(wù)的地址、應(yīng)用服務(wù)宿主和調(diào)用服務(wù)前必須調(diào)用的附加應(yīng)用服務(wù)等。另外,通過附加的特性還可以實現(xiàn)一些復(fù)雜的路由選擇,諸如負載平衡等。

(4)元技術(shù)信息:tModel元素

調(diào)用一個服務(wù)所需要的信息是在bindingTemplate的結(jié)構(gòu)中定義的。不過一般來說,僅知道Web服務(wù)所在的地址是不夠的。例如,如果知道合作伙伴提供一個Web服務(wù)來讓我下訂單,同時也知道這個服務(wù)的URL,不過如果不知道一些具體的信息,如訂單的具體格式,應(yīng)該使用的協(xié)議,需要采用的安全機制,調(diào)用返回的響應(yīng)格式等,那樣的話,通過Web服務(wù)將兩個系統(tǒng)集成起來仍然是非常困難的。

當一個程序需要調(diào)用某個特定的Web服務(wù)時,必須根據(jù)應(yīng)用要求得到了足夠充分的調(diào)用規(guī)范等相關(guān)信息,以使調(diào)用被正確地執(zhí)行。因此,每一個bindingTemplate元素都包含一個特殊的元素,該元素包含了一個列表,列表的每個子元素分別是一個調(diào)用規(guī)范的引用。這些引用作為一個標識符的雜湊集合,組成了類似指紋的技術(shù)標識,用來查找、識別實現(xiàn)了給定行為或編程接口的Web服務(wù)。

4.3單點登錄

4.3.1單點登錄概述

單點登錄(SingleSignOn),簡稱為SSO,是目前比較流行的企業(yè)業(yè)務(wù)整合的解決方案之一。SSO的定義是用戶只需進行一次登錄注冊,就可以訪問多個相互聯(lián)系的應(yīng)用系統(tǒng),而不必反復(fù)進行身份認證[4]。

4.3.2單點登錄設(shè)計

通過Web服務(wù)實現(xiàn)用戶身份驗證,驗證通過后將自動隨機生成ticket,并傳給用戶,當用戶訪問其他應(yīng)用系統(tǒng)時,僅需對ticket進行合法性驗證。在這里,Web服務(wù)只需實現(xiàn)用戶登錄基本信息驗證、ticket生成、ticket合法性驗證這三個功能,就可以進行統(tǒng)一身份認證。單點登錄模型的體系結(jié)構(gòu)如圖4所示[5]。

4.3.3單點登錄實現(xiàn)

服務(wù)器端在開發(fā)時所使用的操作系統(tǒng)為WindowsServer2003,數(shù)據(jù)庫為SQLServer2000,在Eclipse開發(fā)環(huán)境下進行開發(fā)調(diào)試,使用Tomcat5作為服務(wù)器,axis2作為SOAP搜索引擎。當環(huán)境部署完成之后,進行應(yīng)用程序的開發(fā),將單點登錄系統(tǒng)以定制方式發(fā)布為Web服務(wù),成為服務(wù)提供者,為校園不同部門機構(gòu)門戶提供服務(wù)。

4.4CA認證中心

4.4.1CA簡介

CA(CertificateAuthority)[6]是數(shù)字證書認證中心的簡稱,是指發(fā)放、管理、廢除數(shù)字證書的機構(gòu)。CA的作用是檢查證書持有者身份的合法性,并簽發(fā)證書(在證書上簽字),以防證書被偽造或篡改,以及對證書和密鑰進行管理[7]。

4.4.2公鑰體系結(jié)構(gòu)中的一些基本概念與結(jié)構(gòu)組成

(1)密鑰對

在基于公鑰體系的安全系統(tǒng)中,密鑰是成對生成的,每對密鑰由一個公鑰和一個私鑰組成。在實際應(yīng)用中,私鑰由擁有者自己保存,而公鑰則需要公布于眾。為了使基于公鑰體系的業(yè)務(wù)能夠廣泛應(yīng)用,一個基礎(chǔ)性關(guān)鍵的問題就是公鑰的分發(fā)與管理。

公鑰本身并沒有什么標記,僅從公鑰本身不能判別公鑰的主人是誰。

在很小的范圍內(nèi),比如A和B這樣的兩個小集體,他們之間相互信任,交換公鑰,在互聯(lián)網(wǎng)上通訊,沒有什么問題。這個集體再稍大一點,也許彼此信任也不成問題,但從法律角度講這種信任也是有問題的。如再大一點,信任問題就成了一個大問題。

(2)證書

互聯(lián)網(wǎng)絡(luò)的用戶群絕不是幾個人互相信任的小集體,在這個用戶群中,從法律角度講用戶彼此之間都不能輕易信任。所以公鑰加密體系采取了另一個辦法,將公鑰和公鑰的主人名字聯(lián)系在一起,再請一個大家都信得過有信譽的公正、權(quán)威機構(gòu)確認,并加上這個權(quán)威機構(gòu)的簽名,這就形成了證書。

由于證書上有權(quán)威機構(gòu)的簽字,所以大家都認為證書上的內(nèi)容是可信任的;又由于證書上有主人的名字等身份信息,別人就很容易地知道公鑰的主人是誰。

(3)CA

CA也擁有一個證書(內(nèi)含公鑰),當然,它也有自己的私鑰,所以它有簽字的能力。網(wǎng)上的公眾用戶通過驗證CA的簽字從而信任CA,任何人都應(yīng)該可以得到CA的證書(含公鑰),用以驗證它所簽發(fā)的證書。

如果用戶想得到一份屬于自己的證書,他應(yīng)先向CA提出申請。在CA判明申請者的身份后,便為他分配一個公鑰,并且CA將該公鑰與申請者的身份信息綁在一起,并為之簽字后,便形成證書發(fā)給那個用戶(申請者)。

如果一個用戶想鑒別另一個證書的真?zhèn)危陀肅A的公鑰對那個證書上的簽字進行驗證(如前所述,CA簽字實際上是經(jīng)過CA私鑰加密的信息,簽字驗證的過程還伴隨使用CA公鑰解密的過程),一經(jīng)驗證通過,該證書就被認為是有效的。

CA除了簽發(fā)證書之外,它的另一個重要作用是證書和密鑰的管理。

由此可見,證書就是用戶在網(wǎng)上的電子個人身份證,同日常生活中使用的個人身份證作用一樣。CA相當于網(wǎng)上公安局,專門發(fā)放、驗證身份證。

4.4.3認證模塊的實現(xiàn)

(1)訪問控制的設(shè)計思想

用戶登錄系統(tǒng)時,客戶端和服務(wù)器端利用數(shù)字證書進行雙向認證,建立SSL連接,然后查詢數(shù)據(jù)庫,對用戶進行授權(quán),并將權(quán)限集合保存在會話中。之后的交互中,用戶每次發(fā)出請求,系統(tǒng)都先進行權(quán)限判定的過濾,以實現(xiàn)對靜態(tài)資源(靜態(tài)HTML頁面、圖片資源等)與動態(tài)資源(JSP頁面、Servlet和Bean等)的細粒度的訪問控制,為系統(tǒng)的安全訪問提供有效保障。

(2)數(shù)字證書簽發(fā)工具

通過SWING技術(shù)開發(fā)簡易的證書制作工具生成根證書、簽署證書和導(dǎo)出公鑰證書等。

生成根證書的關(guān)鍵代碼如下:

//根據(jù)所給算法實例化密鑰對產(chǎn)生器

CertAndKeyGenkeyPair=new

CertAndKeyGen(keyAlg,sigAlg);

//產(chǎn)生長度為keySize的密鑰對

keyPair.generate(keySize);

PrivateKeypriKey=keyPair.getPrivateKey();

//根據(jù)所填信息,創(chuàng)建X500Name實例

X500Namex500Name:ereateX500Name();

//生成自簽名證書

X509Certificateeert=keyPair.getSelfCertifieate

(x500Name,validity木24木60術(shù)60);

//設(shè)置證書鏈

X509Certifleate[]chain={cert};

ks.setKeyEntry(alias,priKey,keyPass,chain);

4.4.4配置SSL

修改IBMHttpServer/conf/httpd.conf文件,在最下面增加:

LoadModuleibm_ssl_module

modules/IBMModuleSSL128.dll

Listen80

Listen443

KeyfileF:/NEW/key.kdb

SSLDisable

SSLV2Timeout100

SSLV3Timeout1000

ServerNamenetsoft-4d52657

ServerNamenetsoft-4d52657

SSLEnable

SSLClientAuthoptional

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論