專利名稱:用于非始發(fā)主機的控制訪問的小應(yīng)用程序重定向的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機系統(tǒng)以及操作以上與網(wǎng)絡(luò)相連的計算機系統(tǒng)的方法,以使計算機系統(tǒng)可以通過網(wǎng)絡(luò)訪問數(shù)據(jù)和編碼。具體而言,本發(fā)明涉及利用小應(yīng)用程序與并不是從該主機始發(fā)的主機進行通信。
1997年6月4日申請并轉(zhuǎn)讓給IBM公司的名稱為“利用分布式編程對象訪問主機信息”序號為08/852,257的申請是相關(guān)的申請。
在過去的兩年中,Internet(國際互聯(lián)網(wǎng)),特別是作為Internet頂層功能之一的萬維網(wǎng)(WWW或Web),呈爆炸性增長。WWW包括許多分布在眾多不同服務(wù)器上的信息頁或文件。利用統(tǒng)一資源定位符(URL)標(biāo)識各Web頁。URL同時代表服務(wù)器機與該服務(wù)器機上的特定文件或特定Web頁。一臺服務(wù)器上可以駐留許多Web頁或URL。
為了使用WWW,客戶需要運行稱為Web瀏覽器的軟件,如WebExplorer(作為IBM公司Operating System/2(OS/2)的一部分而提供)或Netscape通信公司的Navigator()程序??蛻襞c瀏覽器進行交互以便選擇特定URL,從而使瀏覽器向URL中標(biāo)識的服務(wù)器發(fā)送該URL或Web頁請求。通常,服務(wù)器通過檢索被請求Web頁,將該Web頁的數(shù)據(jù)傳回到請求客戶(客戶與服務(wù)器的交互遵守超文本傳輸協(xié)議(“HTTP”))來應(yīng)答請求。隨后,在客戶屏幕上向用戶顯示該Web頁??蛻粢部梢允狗?wù)器啟動應(yīng)用程序,例如,搜索與特定主題有關(guān)的WWW頁。在某些場合下,由于諸如防火墻之類的安全機制而不能到達(dá)服務(wù)器,其中防火墻過濾用戶訪問以便只允許特權(quán)用戶訪問信息。此時,可以使用代理服務(wù)器或代理應(yīng)用程序來幫助管理員實現(xiàn)以上訪問。可以將代理服務(wù)器看作一個實體,該實體橫跨于保護和非保護網(wǎng)絡(luò)區(qū)域之間,并根據(jù)所涉及的用戶以及為該用戶所配置的權(quán)限對以上網(wǎng)絡(luò)區(qū)域之間的傳輸通信提供方便。所采用的網(wǎng)絡(luò)連接被稱作套接,套接只不過是向網(wǎng)絡(luò)的何處發(fā)送或接收數(shù)據(jù)流??梢栽诜?wù)器上打開多個編號端口,以監(jiān)聽特定的套接數(shù)據(jù)流。
根據(jù)稱為HTML(超文本標(biāo)注語言)的語言來格式化大部分的WWW頁。因此,一典型Web頁包括文本與稱為標(biāo)識符的嵌入格式命令,利用嵌入格式命令來控制字體大小、字型(如斜體或黑體)、如何編排文本以及其他Web頁選項。Web瀏覽器對HTML程序進行語法分析,以根據(jù)特定格式顯示文本。此外,HTML頁也可以利用另一URL來包含對多媒體數(shù)據(jù)段的引用,如圖象、視頻片段或音頻文件。Web瀏覽器通過檢索,然后顯示或播放該數(shù)據(jù)來響應(yīng)該引用。換句話說,無需任何環(huán)繞HTML文本,這類多媒體數(shù)據(jù)可以組成其自身的WWW頁。
大部分WWW頁包含一個或多個對一個其他WWW頁的引用,后者無需與原始WWW頁在同一臺服務(wù)器上。用戶通過選擇屏幕上的特定位置,通常通過(雙擊)點擊鼠標(biāo)按鈕,就可以激活該引用。將以上引用或位置稱為超鏈接,并且瀏覽器通常采用特定方式標(biāo)識該引用或位置(例如,采用不同的顏色顯示與超鏈接有關(guān)的文本)。如果用戶選擇了超鏈接,就檢索被引用的WWW頁,并取代當(dāng)前顯示的WWW頁。
可以在“萬維網(wǎng)與HTML”(作者Douglas McArthur,p18-26,Dr Dobbs Journal,Dec1994),和“HTML參考資料”(作者Ian Graham,John Wiley,New York,1995)中找到有關(guān)HTML和WWW的其他信息。
如上所述,一般來講目前實現(xiàn)的WWW具有以下不便,即實際上從服務(wù)器下載到客戶的Web頁是被動的,換句話說,該Web頁并不包含在客戶機上執(zhí)行的代碼。其含義之一是服務(wù)器不能把與客戶和服務(wù)器之間交互有關(guān)的任何處理卸載到客戶。因此,假如客戶正在完成例如具有其電話號碼的表格,則必須在服務(wù)器進行諸如電話號碼位數(shù)之類的合法檢查。從而導(dǎo)致第一,加重了服務(wù)器的處理負(fù)擔(dān);第二,如果需要改正錯誤,則在服務(wù)器和客戶之間需要費時的額外通信。此外,服務(wù)器不能將執(zhí)行代碼下載到客戶,嚴(yán)重限制了被創(chuàng)建用來使用WWW的應(yīng)用程序的類型。
就目前的發(fā)展而言,特別是基于Sun微系統(tǒng)公司的Java(Sun微系統(tǒng)公司)技術(shù),試圖克服以上困難。Java技術(shù)主要包括(ⅰ)一種新的編程語言,類似C和C++,和(ⅱ)虛擬機。實際上,可以將采用Java編程語言書寫的程序編譯為字節(jié)代碼格式,隨后,當(dāng)運行時,在運行于客戶機上的Java虛擬機上進行解釋。Java虛擬機將字節(jié)代碼轉(zhuǎn)換為可由基礎(chǔ)物理機執(zhí)行的指令。
可以以字節(jié)代碼的形式經(jīng)WWW,下載采用Java書寫的程序,以便在客戶端的Java虛擬機上執(zhí)行。以上程序被稱為“小應(yīng)用程序”。采用Java技術(shù)經(jīng)WWW下載代碼具有兩個主要優(yōu)點。第一,如果我們假設(shè)各客戶均具有一份Java虛擬機拷貝(通常將位于客戶系統(tǒng)的虛擬機安裝在操作系統(tǒng)中,或者安裝在瀏覽器本身中),則小應(yīng)用程序可以是平臺無關(guān)的。換句話說,服務(wù)器無需具有需要根據(jù)不同操作系統(tǒng)和不同機器下載到客戶的不同版本的代碼,因此,只需書寫并維護有關(guān)代碼的一個版本,從而進一步簡化了軟件開發(fā)人員的工作。第二,由于以上小應(yīng)用程序運行在虛擬機而非物理機上,從而大大提高了安全性。因此,當(dāng)利用網(wǎng)絡(luò)下載代碼時,通常存在以下風(fēng)險,即代碼中可能含有某些能夠破壞客戶機上所存儲的數(shù)據(jù)或程序的惡意代碼(偶爾或常常)。然而,虛擬機能夠監(jiān)視小應(yīng)用程序的操作,從而能夠檢測并預(yù)防以上惡意操作。
請注意,客戶以在虛擬機上執(zhí)行的字節(jié)代碼的形式,從服務(wù)器下載軟件的概念獨立于Java技術(shù)也是眾所周知的,例如,參見US5,347,632。
為了調(diào)用Java小應(yīng)用程序,HTML文本的Web頁包含一個<APPLET>標(biāo)識符,該標(biāo)識符標(biāo)識包含有小應(yīng)用程序的URL。瀏覽器通過檢索并運行以上小應(yīng)用程序來應(yīng)答該標(biāo)識符。同時還定義一個<PARAM>標(biāo)識符,該標(biāo)識符夾在一對相應(yīng)的<APPLET>標(biāo)識符和</APPLET>標(biāo)識符之間,利用該標(biāo)識符確定運行時傳送給小應(yīng)用程序的參數(shù)。(請注意,APPLET和PARAM標(biāo)識符并未正式加入到HTML標(biāo)準(zhǔn),盡管如此,也能被大部分瀏覽器識別)??梢栽凇?1天自學(xué)Java”(作者Laura Lemay和Charles Perkins,Sams.net出版社,Indianapolis,USA,1996)中找到有關(guān)Java技術(shù)和小應(yīng)用程序的其他信息。
以上小應(yīng)用程序的主要限制在于標(biāo)準(zhǔn)Java模型僅允許小應(yīng)用程序與下載該程序的服務(wù)器通話。該限制被稱作Java“砂箱”安全限制。該限制提供了某些安全優(yōu)點,但是也嚴(yán)重限制了Java用于某些應(yīng)用程序。例如,對于其主要目的是連接,即其目標(biāo)是與網(wǎng)絡(luò)中的許多其他系統(tǒng)進行通信的小應(yīng)用程序(網(wǎng)絡(luò)小應(yīng)用程序)而言,該限制是不方便的。最近的Java版本,如1.1版的Java開發(fā)工具箱(JDK),提供了稱作信任小應(yīng)用程序的解決以上限制的方案,但是該方案并不能應(yīng)用于所有情況。第一,不能訪問諸如1.02版的現(xiàn)有JDK用戶。第二,主要Web瀏覽器還必須全面遵守JDK1.1。第三,也是最重要的,網(wǎng)絡(luò)管理員并不希望其用戶連接到其網(wǎng)絡(luò)中的所有任意主機。相反,他們在需要多主機小應(yīng)用程序通信的靈活性的同時也需要具有管理控制和安全性能優(yōu)點?,F(xiàn)在沒有能夠提供以上所有優(yōu)點的方案。
本發(fā)明提供一種方法和裝置,通過在具有利用過濾程序和附加管理程序管理重定向的能力的始發(fā)服務(wù)器上將小應(yīng)用程序通信重定向而允許小應(yīng)用程序與多臺主機通信。利用駐留在其中安裝有主體小應(yīng)用程序的Web服務(wù)器上的服務(wù)器應(yīng)用程序(稱作重定向程序)就能實現(xiàn)以上功能。盡管采用“Java”以及通常與Java有關(guān)的術(shù)語“小應(yīng)用程序”來說明本發(fā)明,以上用法無意將本發(fā)明限制在特定的編程環(huán)境和網(wǎng)絡(luò)環(huán)境中。
本發(fā)明定義了一種安裝在Web服務(wù)器上的應(yīng)用程序(重定向程序),Web服務(wù)器將駐留在該服務(wù)器上的網(wǎng)絡(luò)小應(yīng)用程序的通信重定向。當(dāng)從Web服務(wù)器上下載網(wǎng)絡(luò)小應(yīng)用程序以便與不同的主機建立會話時,該小應(yīng)用程序代碼就檢測Web服務(wù)器名,并打開到重定向程序端口號的套接連接。重定向程序確認(rèn)該連接,從而網(wǎng)絡(luò)小應(yīng)用程序可以用遠(yuǎn)程主機服務(wù)器名和重定向程序連接到的套接作為應(yīng)答。一旦重定向程序完成了與所請求主機的連接,兩個連接就在網(wǎng)絡(luò)小應(yīng)用程序和具有位于中部路由通信的重定向程序的主機之間形成通信管道。利用以上方法,無需對現(xiàn)有網(wǎng)絡(luò)環(huán)境作任何改進,就可以允許網(wǎng)絡(luò)小應(yīng)用程序發(fā)揮作用。這樣,網(wǎng)絡(luò)小應(yīng)用程序可以與遠(yuǎn)程主機以及Web服務(wù)器管理員進行通話,同時通過改進重定向程序的配置,網(wǎng)絡(luò)小應(yīng)用程序還能夠控制以上小應(yīng)用程序的重定向。
具體而言,本發(fā)明定義了一種管理以上小應(yīng)用程序重定向的方法。利用主機訪問過濾表配置重定向程序。該表包含所有被管理的主機地址以及允許訪問它們的用戶地址范圍。例如,如果下載網(wǎng)絡(luò)小應(yīng)用程序,并且請求與主機A連接,則可以檢查執(zhí)行以上小應(yīng)用程序的機器地址,以確定該地址是否位于主機A的允許訪問范圍內(nèi)。如果該地址不在其允許范圍內(nèi),就拒絕該連接請求,并可能登錄過濾程序拒絕的記錄管理。在最佳實施方式中討論的例子提供了對該交互的比較詳細(xì)的了解。
本發(fā)明還定義了一種靜態(tài)主機連接方法,該方法減輕了網(wǎng)絡(luò)小應(yīng)用程序去了解并請求某些主機地址的負(fù)擔(dān)?;蛘?,也可以采用上述的過濾表,利用用戶地址范圍來路由主機連接。如果為了以上性能而配制重定向程序,則網(wǎng)絡(luò)小應(yīng)用程序只需連接重定向程序就可以指派一個主機連接。當(dāng)利用網(wǎng)絡(luò)小應(yīng)用程序而并非利用特定的主機連接請求進行連接時,重定向程序可以查詢過濾表,以便確定以上小應(yīng)用程序地址范圍默認(rèn)的主機連接。
本發(fā)明還定義了一種利用附加模塊來增強重定向程序的方法。利用該方法,如果需要附加程序,Web服務(wù)器就無需重編程重定向程序或重新分布重定向程序?;蛘呖啥x該方法以便重定向程序與附加模塊相互配合,并且實現(xiàn)重定向程序無需了解的功能。在最佳實施方式中作為例子討論的附加功能為附加安全性,該附加安全性加密從客戶到服務(wù)器的會話數(shù)據(jù)。利用該功能,網(wǎng)絡(luò)小應(yīng)用程序無需改進重定向程序來實現(xiàn)加密,就能夠獲得加密會話的優(yōu)點。
圖1說明具有砂箱限制的基礎(chǔ)網(wǎng)絡(luò)環(huán)境(現(xiàn)有技術(shù))。
圖2說明能夠訪問非始發(fā)主機的本發(fā)明的網(wǎng)絡(luò)環(huán)境。
圖3說明當(dāng)使用本發(fā)明管理擴展訪問時,小應(yīng)用程序、重定向程序和主機服務(wù)器之間的流程。
圖4說明使用附加程序,例如利用本發(fā)明進行加密,所包含的流程。
采用Java編程類和Web客戶/服務(wù)器網(wǎng)絡(luò)環(huán)境實現(xiàn)本發(fā)明的最佳實施方式。它包括用戶書寫的客戶網(wǎng)絡(luò)小應(yīng)用程序,網(wǎng)絡(luò)上的目標(biāo)資源,以及本發(fā)明所定義的駐留在Web服務(wù)器上的重定向應(yīng)用程序。使用特定示例能更好地理解該框架的交互作用。
圖1所示的網(wǎng)絡(luò)范例表示具有Java砂箱安全限制的網(wǎng)絡(luò)小應(yīng)用程序的性能。利用Web客戶(101),如支持Java的Web瀏覽器或Java小應(yīng)用程序觀察器,用戶運行從Web服務(wù)器(103)動態(tài)下載的小應(yīng)用程序(102)。然而,由于砂箱限制,小應(yīng)用程序只能與始發(fā)服務(wù)器(103)進行通信。以上小應(yīng)用程序可以使用服務(wù)器(104)的應(yīng)用程序和資源,以便存儲信息或者幫助完成其任務(wù),但是不允許以上小應(yīng)用程序訪問網(wǎng)絡(luò)上可能存在的其他服務(wù)器。如前所述,有關(guān)Java標(biāo)準(zhǔn)的最新進展定義了能夠訪問其他資源的信任小應(yīng)用程序的框架,但是,現(xiàn)今的瀏覽器還不能廣泛支持該方法,更重要的是,該框架并未提供有關(guān)小應(yīng)用程序可以訪問的資源的管理控制。
圖2所示的網(wǎng)絡(luò)表示采用本發(fā)明可能訪問的范圍,以及為該訪問所提供的管理控制。利用Web客戶(201)上的支持Java的Web瀏覽器或小應(yīng)用程序觀察器,用戶運行從Web服務(wù)器(203)動態(tài)下載的小應(yīng)用程序(202)。借助Java的性能,小應(yīng)用程序(202)僅能直接訪問包括重定向程序代理(204)在內(nèi)的始發(fā)服務(wù)器(203)上的資源。然而,通過與重定向程序(204)交互,小應(yīng)用程序(202)還可以間接訪問網(wǎng)絡(luò)(205)上任何地方的應(yīng)用程序和資源。當(dāng)小應(yīng)用程序(202)與重定向程序(204)連接后,重定向程序就以小應(yīng)用程序的名義連接其他網(wǎng)絡(luò)資源(205),并在小應(yīng)用程序(202)與其他資源(205)之間轉(zhuǎn)發(fā)信息。這樣,通過利用本發(fā)明的重定向程序(204)擴展了小應(yīng)用程序(202)的可用通信范圍。但是,并不是不經(jīng)檢查就提供擴展訪問,由于重定向程序(204)位于中央,所以可以使用重定向程序來管理對其他網(wǎng)絡(luò)資源的訪問。在圖3和圖4中詳細(xì)說明如何提供和管理外部訪問。
圖3表示W(wǎng)eb客戶上的用戶A和用戶B(301&306),該用戶使用本發(fā)明的重定向程序(303)功能以訪問主機服務(wù)器(305)。為了清晰起見,在Java小應(yīng)用程序已經(jīng)從Web服務(wù)器(302)下載到Web客戶(301&306)之后,該流程開始時小應(yīng)用程序首先利用Web服務(wù)器(302)上的端口號請求打開重定向程序(303)開始通信(311),盡管該圖說明用戶(301&306)與Web服務(wù)器(302)分離,該用戶可以駐留在同一臺計算機上。重定向程序(303)識別來自客戶(301)的打開請求,并接受該請求(312)。隨后,客戶(301)請求與主機服務(wù)器(305)連接,其中主機服務(wù)器(305)與Web服務(wù)器(302)不同。重定向程序(303)檢查用戶及權(quán)限表,以確定是否允許用戶A與主機服務(wù)器(305)連接(314)。此時,假設(shè)允許連接用戶A,重定向程序就打開一個端口以便與主機服務(wù)器(305)通信(315)。主機服務(wù)器(305)成功應(yīng)答該請求(316),重定向程序(303)通知客戶現(xiàn)在它們可以與主機服務(wù)器(305)通信(317)。請注意,Java砂箱限制僅允許與Web服務(wù)器(302)進一步連接,由于本發(fā)明,才能與主機服務(wù)器(305)進行更多的連接。根據(jù)以上觀點,客戶(301)利用重定向程序(303)作為中間網(wǎng)絡(luò),與主機服務(wù)器(305)交換信息(318)。
圖3還說明Web客戶上的用戶B(306),我們假設(shè)該用戶不具有相應(yīng)的權(quán)限。客戶(306)打開重定向程序端口(319),重定向程序(303)成功應(yīng)答(320)。隨后,客戶(306)請求與遠(yuǎn)程主機服務(wù)器(305)連接(321),其中未授權(quán)遠(yuǎn)程主機服務(wù)器(305)進行連接。重定向程序(303)檢查該用戶的主機訪問表,從而明白用戶B不具備該連接的所需權(quán)限(314)。隨后,重定向程序(303)拒絕該連接請求,通知客戶(306)訪問被拒絕(322)??梢岳弥鳈C算法在服務(wù)器端或遠(yuǎn)程地位于主機上修改允許用戶A訪問、拒絕用戶B訪問的主機訪問表,或者修改主機訪問表以便動態(tài)重定向現(xiàn)有主機流程。利用以上過濾功能,管理員可以賦予Web客戶擴展訪問能力,同時也能維護用于安全目的的控制。
圖4表示安裝有本發(fā)明所定義的附加程序的示例流程。在最佳實施方式中采用的附加功能為允許在客戶和服務(wù)器之間進行加密/解密的功能。為了清晰起見,在Java小應(yīng)用程序已經(jīng)從Web服務(wù)器(402)下載到Web客戶(401)之后,該流程開始。小應(yīng)用程序首先利用Web服務(wù)器(402)上的端口號請求打開具有安全連接的重定向程序(403)開始通信(411)。由于請求安全連接,所以重定向程序(403)利用其安全端口程序(404)進行連接并且返回成功(412)。隨后,客戶(401)請求與主機服務(wù)器(407)連接(413),重定向程序(403)檢查主機訪問表(404)中的用戶權(quán)限。由于允許該用戶訪問主機服務(wù)器(407),所以重定向程序(403)打開主機服務(wù)器端口(415),接收成功確認(rèn)(416),并通知客戶連接成功(417)。既然已經(jīng)建立了安全連接,客戶(401)就可以向Web服務(wù)器(402)發(fā)送加密數(shù)據(jù)流(418)。由于知道要加密數(shù)據(jù)流,安全端口(405)程序就將該數(shù)據(jù)傳送到加密/解密附加程序(406)(419)。該加密附加程序可以為該系統(tǒng)所支持的任意形式。附加程序解密該數(shù)據(jù)并以標(biāo)準(zhǔn)數(shù)據(jù)流的形式傳回到重定向程序(403)(420)。重定向程序接收該數(shù)據(jù)流(421)并將其傳送到主機服務(wù)器(407)。當(dāng)主機(407)向重定向程序回送標(biāo)準(zhǔn)數(shù)據(jù)并且結(jié)束傳送以便加密時,就顛倒以上處理。這樣,無需修改服務(wù)器編碼或重定向程序編碼,小應(yīng)用程序就具備了進行安全會話的能力。盡管本發(fā)明說明了安全附加功能,但是附加功能的概念并不局限于特定的附加形式,可以采用不需要重定向程序的管理知識的其他附加功能。
權(quán)利要求
1.一種用于管理用戶工作站和主機的網(wǎng)絡(luò)中編程對象重定向的方法,利用獨特地址標(biāo)識每個所述主機和用戶工作站,所述方法其特征在于包括以下步驟創(chuàng)建主機訪問過濾表,所述過濾表包括所有被訪問主機的地址以及允許訪問各所述主機的用戶的地址范圍;和所述用戶有計劃地訪問所述過濾表以使所述用戶訪問允許訪問的主機。
2.一種允許小應(yīng)用程序與不同的并未從該主機下載所述小應(yīng)用程序的主機進行通信的方法,所述方法其特征在于包括以下步驟從Web服務(wù)器向用戶工作站下載小應(yīng)用程序,所述Web服務(wù)器具有獨特地址;檢測所述Web服務(wù)器的地址;打開從所述Web服務(wù)器到重定向程序端口號的套接連接;從所述重定向程序向所述用戶工作站發(fā)送目標(biāo)主機的地址;和打開所述目標(biāo)主機和執(zhí)行所述小應(yīng)用程序的所述用戶工作站之間的套接連接。
3.一種允許小應(yīng)用程序與另一個并未從該主機下載所述小應(yīng)用程序的主機進行通信的方法,所述方法其特征在于包括以下步驟從Web服務(wù)器向用戶工作站下載小應(yīng)用程序,所述Web服務(wù)器具有獨特地址;檢測所述Web服務(wù)器的地址;打開從所述用戶工作站到所述Web服務(wù)器上的重定向程序的套接連接;從所述用戶工作站向所述重定向程序發(fā)送目標(biāo)主機的地址;打開從所述Web服務(wù)器到所述目標(biāo)主機上的主機程序的套接連接;和將所述主機連接與所述用戶工作站連接關(guān)聯(lián),以便進行端到端的通信。
4.權(quán)利要求3所要求的方法,其特征在于所述用戶工作站通過所述重定向程序與所述目標(biāo)主機進行通信。
5.權(quán)利要求3或權(quán)利要求4所要求的方法,其特征在于利用一個或多個端口號與一個或多個地址的組合來連接所述重定向程序和目標(biāo)主機以便訪問所述重定向程序和主機程序。
6.權(quán)利要求3或權(quán)利要求4所要求的方法,其特征在于以可動態(tài)下載的應(yīng)用程序的方式實現(xiàn)所述小應(yīng)用程序。
7.權(quán)利要求3或權(quán)利要求4所要求的方法,其特征在于以Java小應(yīng)用程序的方式實現(xiàn)所述小應(yīng)用程序。
8.一種用于管理用戶工作站和主機的網(wǎng)絡(luò)中編程對象重定向的方法,利用獨特地址標(biāo)識每個所述主機和用戶工作站,所述方法其特征在于包括以下步驟創(chuàng)建主機訪問過濾表,所述過濾表包括所有被訪問主機的地址以及允許訪問各所述主機的用戶工作站的地址范圍;當(dāng)所述用戶工作站請求訪問目標(biāo)主機時,有計劃地訪問所述過濾表;和確定所述用戶工作站地址是否在允許訪問所述目標(biāo)主機的地址范圍內(nèi)。
9.權(quán)利要求8所要求的方法,其特征在于所述過濾表駐留在Web服務(wù)器上。
10.權(quán)利要求9所要求的方法,其特征在于所述重定向程序有計劃地管理所述過濾表,可通過所述Web服務(wù)器地址和端口號訪問網(wǎng)絡(luò)。
11.權(quán)利要求10所要求的方法,其特征在于所述用戶工作站上的用戶手工管理所述過濾表。
12.一種將附加程序安裝到重定向程序中以便實現(xiàn)用戶工作站與目標(biāo)主機的通信的方法,所述方法其特征在于包括以下步驟從Web服務(wù)器向用戶工作站下載小應(yīng)用程序,所述Web服務(wù)器具有獨特地址;檢測所述Web服務(wù)器的地址;打開從用戶工作站到所述Web服務(wù)器上的重定向程序的套接連接;當(dāng)服務(wù)小應(yīng)用程序時,向所述重定向程序使用的所述附加程序發(fā)送一個標(biāo)識符;從所述用戶工作站向所述重定向程序發(fā)送一個目標(biāo)主機地址;打開從所述Web服務(wù)器到所述目標(biāo)主機上的主機程序的套接連接;將所述主機連接與所述用戶工作站連接關(guān)聯(lián),以便提供端到端的通信;將所述用戶工作站連接與所述附加程序關(guān)聯(lián);有計劃地將所述端到端連接的輸入和輸出數(shù)據(jù)轉(zhuǎn)送到所述附加程序以便處理;和從所述附加程序接收結(jié)果數(shù)據(jù),并將所述數(shù)據(jù)轉(zhuǎn)送到其目的地。
13.權(quán)利要求12所要求的方法,其特征在于所述附加程序提供從所述用戶工作站到所述Web服務(wù)器的安全數(shù)據(jù)傳輸,所述方法還包括以下步驟從所述重定向程序接收請求以便初始化與所述用戶工作站的安全連接;從所述重定向程序接收加密數(shù)據(jù)并解密所述數(shù)據(jù);將所述解密數(shù)據(jù)返回到所述重定向程序;從所述重定向程序接收非加密數(shù)據(jù)并加密所述數(shù)據(jù);和將所述加密數(shù)據(jù)返回到所述重定向程序。
14.一種利用遠(yuǎn)程通信機制連接多臺計算機的計算機網(wǎng)絡(luò)中所包含的計算機系統(tǒng),其中小應(yīng)用程序可以訪問另一個并未從該主機下載所述小應(yīng)用程序的主機,其特征在于所述訪問包括用于從Web服務(wù)器向用戶工作站下載小應(yīng)用程序的裝置,所述Web服務(wù)器具有獨特地址;用于檢測所述Web服務(wù)器地址的裝置;用于打開從所述用戶工作站到所述Web服務(wù)器上的重定向程序的套接連接的裝置;用于從所述用戶工作站向所述重定向程序發(fā)送目標(biāo)主機地址的裝置;用于打開從所述Web服務(wù)器到所述目標(biāo)主機上的主機程序的套接連接的裝置;和用于將所述主機連接與所述用戶工作站連接關(guān)聯(lián)以便提供端到端通信的裝置。
15.權(quán)利要求14所要求的計算機系統(tǒng),其特征在于所述用戶工作站經(jīng)過所述重定向程序與所述目標(biāo)主機進行通信。
16.權(quán)利要求14或權(quán)利要求15所要求的計算機系統(tǒng),其特征在于利用一個或多個端口號與一個或多個地址的組合實現(xiàn)所述重定向程序與目標(biāo)主機的連接,以便訪問所述重定向程序和主機程序。
17.權(quán)利要求14或權(quán)利要求15所要求的計算機系統(tǒng),其特征在于以可動態(tài)下載的應(yīng)用程序的方式實現(xiàn)所述小應(yīng)角程序。
18.權(quán)利要求14或權(quán)利要求15所要求的計算機系統(tǒng),其特征在于以Java小應(yīng)用程序的方式實現(xiàn)所述小應(yīng)用程序。
19.一種計算機網(wǎng)絡(luò)中所包含的計算機系統(tǒng),所述計算機網(wǎng)絡(luò)利用遠(yuǎn)程通信機制連接多臺計算機,其中管理著用戶工作站和主機的網(wǎng)絡(luò)中編程對象的重定向,利用獨特地址標(biāo)識每臺所述主機和用戶工作站,其特征在于所述管理包括用于創(chuàng)建主機訪問過濾表的裝置,所述過濾表包含所有被訪問主機的地址以及允許訪問各所述主機的用戶工作站的地址范圍;當(dāng)所述用戶工作站請求訪問目標(biāo)主機時,用于有計劃地訪問所述過濾表的裝置;用于應(yīng)答所述裝置以確定所述用戶工作站地址是否在允許訪問所述目標(biāo)主機的所述地址范圍內(nèi)的裝置。
20.權(quán)利要求19所要求的計算機系統(tǒng),其特征在于所述過濾表駐留在Web服務(wù)器上。
21.權(quán)利要求20所要求的計算機系統(tǒng),其特征在于所述重定向程序有計劃地管理所述過濾表,可通過所述Web服務(wù)器地址和端口號訪問網(wǎng)絡(luò)。
22.權(quán)利要求21所要求的計算機系統(tǒng),其特征在于用戶在所述用戶工作站上手工管理所述過濾表。
23.一種計算機網(wǎng)絡(luò)中所包含的計算機系統(tǒng),所述計算機網(wǎng)絡(luò)利用遠(yuǎn)程通信機制連接多臺計算機,其中附加程序與重定向程序接口,所述重定向程序?qū)崿F(xiàn)用戶工作站與目標(biāo)主機的通信,所述系統(tǒng)其特征在于包括用于從Web服務(wù)器向用戶工作站下載小應(yīng)用程序的裝置,所述Web服務(wù)器具有獨特地址;用于檢測所述Web服務(wù)器地址的裝置;用于打開從所述用戶工作站到所述Web服務(wù)器上的重定向程序的套接連接的裝置;當(dāng)服務(wù)所述小應(yīng)用程序時,用于向?qū)⒂伤鲋囟ㄏ虺绦蚴褂玫母郊映绦虬l(fā)送一個標(biāo)識符的裝置;用于從所述用戶工作站向所述重定向程序發(fā)送目標(biāo)主機地址的裝置;用于打開從所述Web服務(wù)器到所述目標(biāo)主機上的主機程序的套接連接的裝置;用于將所述主機連接和所述用戶工作站連接關(guān)聯(lián)以提供端到端通信的裝置;用于將所述用戶工作站連接和所述附加程序關(guān)聯(lián)的裝置;用于將所述端到端連接的輸入和輸出數(shù)據(jù)有計劃地轉(zhuǎn)送到所述附加程序進行處理的裝置;和用于從所述附加程序接收結(jié)果數(shù)據(jù)并將所述數(shù)據(jù)轉(zhuǎn)送到其目的的裝置。
24.權(quán)利要求23所要求的計算機系統(tǒng),其特征在于所述附加程序提供從所述用戶工作站到所述Web服務(wù)器的安全數(shù)據(jù)傳輸,所述系統(tǒng)還包括用于接收來自所述重定向程序的請求以初始化與所述用戶工作站的安全連接的裝置;用于從所述重定向程序接收加密數(shù)據(jù)并解密所述數(shù)據(jù)的裝置;用于將所述解密數(shù)據(jù)返回到所述重定向程序的裝置;用于從所述重定向程序接收非加密數(shù)據(jù)并加密所述數(shù)據(jù)的裝置;和用于將所述加密數(shù)據(jù)返回到所述重定向程序的裝置。
25.一種計算機可讀介質(zhì)上的計算機程序產(chǎn)品,所述產(chǎn)品允許小應(yīng)用程序訪問另一個并未從該主機下載所述小應(yīng)用程序的主機,所述產(chǎn)品其特征在于包括用于從Web服務(wù)器向用戶工作站下載小應(yīng)用程序的計算機可讀程序代碼裝置,所述Web服務(wù)器具有獨特地址;用于檢測所述Web服務(wù)器地址的計算機可讀程序代碼裝置;用于打開從所述用戶工作站到所述Web服務(wù)器上的重定向程序的套接連接的計算機可讀程序代碼裝置;用于從所述用戶工作站向所述重定向程序發(fā)送目標(biāo)主機地址的計算機可讀程序代碼裝置;用于打開從所述Web服務(wù)器到所述目標(biāo)主機上的主機程序的套接連接的計算機可讀程序代碼裝置;和用于將所述主機連接與所述用戶工作站連接關(guān)聯(lián)以進行端到端通信的計算機可讀程序代碼裝置。
26.權(quán)利要求25所要求的計算機程序產(chǎn)品,其特征在于所述用戶工作站經(jīng)過所述重定向程序與所述目標(biāo)主機進行通信。
27.權(quán)利要求25或權(quán)利要求26所要求的計算機程序產(chǎn)品,其特征在于利用一個或多個端口號與一個或多個地址的組合實現(xiàn)所述重定向程序與目標(biāo)主機的連接,以便訪問所述重定向程序和主機程序。
28.權(quán)利要求25或權(quán)利要求26所要求的計算機程序產(chǎn)品,其特征在于以可動態(tài)下載的應(yīng)用程序的方式實現(xiàn)所述小應(yīng)用程序。
29.權(quán)利要求25或權(quán)利要求26所要求的計算機程序產(chǎn)品,其特征在于以Java小應(yīng)用程序的方式實現(xiàn)所述小應(yīng)用程序。
30.一種計算機可讀介質(zhì)上的計算機程序產(chǎn)品,所述產(chǎn)品用于管理用戶工作站和主機的網(wǎng)絡(luò)中的編程對象的重定向,利用獨特地址標(biāo)識各所述主機和用戶工作站,所述產(chǎn)品其特征在于包括用于創(chuàng)建主機訪問過濾表的計算機可讀程序代碼裝置,所述過濾表包含所有被訪問主機的地址以及允許訪問各所述主機的用戶工作站的地址范圍;當(dāng)所述用戶工作站請求訪問目標(biāo)主機時,用于有計劃地訪問所述過濾表的計算機可讀程序代碼裝置;用于確定所述用戶工作站地址是否在允許訪問所述目標(biāo)主機的地址范圍內(nèi)的計算機可讀程序代碼裝置。
31.權(quán)利要求30所要求的計算機程序產(chǎn)品,其特征在于所述過濾表駐留在Web服務(wù)器上。
32.權(quán)利要求31所要求的計算機程序產(chǎn)品,其特征在于所述重定向程序有計劃地管理所述過濾表,可通過所述Web服務(wù)器地址和端口號訪問網(wǎng)絡(luò)。
33.權(quán)利要求32所要求的計算機程序產(chǎn)品,其特征在于用戶在所述用戶工作站上手工管理所述過濾表。
34.一種計算機可讀介質(zhì)上的計算機程序產(chǎn)品,所述產(chǎn)品用于將附加程序安裝到重定向程序以實現(xiàn)用戶工作站與目標(biāo)主機的通信,所述產(chǎn)品其特征在于包括用于從Web服務(wù)器向用戶工作站下載小應(yīng)用程序的計算機可讀程序代碼裝置,所述Web服務(wù)器具有獨特地址;用于檢測所述Web服務(wù)器地址的計算機可讀程序代碼裝置;用于打開從所述用戶工作站到所述Web服務(wù)器上的重定向程序的套接連接的計算機可讀程序代碼裝置;當(dāng)服務(wù)所述小應(yīng)用程序時,用于向所述重定向程序使用的所述附加程序發(fā)送標(biāo)識符的計算機可讀程序編碼裝置;用于從所述用戶工作站向所述重定向程序發(fā)送目標(biāo)主機地址的計算機可讀程序代碼裝置;用于打開從所述Web服務(wù)器到所述目標(biāo)主機上的主機程序的套接連接的計算機可讀程序代碼裝置;用于將所述主機連接與所述用戶工作站連接關(guān)聯(lián)以進行端到端通信的計算機可讀程序代碼裝置;用于將所述用戶工作站連接和所述附加程序關(guān)聯(lián)的計算機可讀程序代碼裝置;用于將所述端到端連接的輸入和輸出數(shù)據(jù)有計劃地轉(zhuǎn)送到所述附加程序以便處理的計算機可讀程序代碼裝置;和用于從所述附加程序接收結(jié)果數(shù)據(jù)并將所述數(shù)據(jù)轉(zhuǎn)送到其目的地的計算機可讀程序代碼裝置。
35.權(quán)利要求34所要求的計算機程序產(chǎn)品,其特征在于所述附加程序提供從所述用戶工作站到Web服務(wù)器的安全傳輸,所述產(chǎn)品還包括用于接收來自所述重定向程序的請求以初始化與所述用戶工作站的安全連接的計算機可讀程序代碼裝置;用于從所述重定向程序接收加密數(shù)據(jù)并解密所述數(shù)據(jù)的計算機可讀程序代碼裝置;用于將所述解密數(shù)據(jù)返回到所述重定向程序的計算機可讀程序代碼裝置;用于從所述重定向程序接收非加密數(shù)據(jù)并加密所述數(shù)據(jù)的計算機可讀程序代碼裝置;和用于將所述加密數(shù)據(jù)返回到所述重定向程序的計算機可讀程序代碼裝置。
全文摘要
一種允許動態(tài)小應(yīng)用程序訪問并未從該服務(wù)器始發(fā)的服務(wù)器的方法和裝置,其中始發(fā)服務(wù)器上的應(yīng)用程序?qū)⒃撔?yīng)用程序與網(wǎng)絡(luò)資源之間的通信重定向。
文檔編號G06F9/44GK1210308SQ98108360
公開日1999年3月10日 申請日期1998年5月13日 優(yōu)先權(quán)日1997年6月4日
發(fā)明者約漢·萊瑟爾·辛德, 戴維·布魯斯·林德奎斯特, 普拉迪克·比哈里拉爾·納納瓦蒂, 譚義新(音譯), 阿加姆·阿基文米·維斯利 申請人:國際商業(yè)機器公司