專利名稱:用于聯(lián)盟內軟件安裝的方法和設備的制作方法
技術領域:
本發(fā)明的領域是數(shù)據(jù)處理,具體是用于聯(lián)盟(federation)內軟件安裝的方法、設備和產品。
背景技術:
大型機構常常用很少的支持人員來維護遠程辦事處,或根本沒有支持人員,這些支持人員負責在這些實體的計算機上進行軟件安裝。這樣的支持人員匱乏造成數(shù)據(jù)量非常大以致于無法安裝于單個光盤上的軟件代碼難以分發(fā)到遠程辦事處,也使得更新軟件具有挑戰(zhàn)性。此外,依賴于其他機構來遠程執(zhí)行軟件安裝是具有挑戰(zhàn)性的,因為不同的機構常常實施不同的安全協(xié)議。當前需要一種能夠在跨越不同安全域的分布式環(huán)境中操作的軟件安裝方法。
發(fā)明內容
為聯(lián)盟內的軟件安裝提供了方法、設備和計算機程序產品。實施例包括由安裝管理代理服務器從用戶計算機上安裝的用戶代理(useragent)接收安裝請求;由安裝管理代理服務器確認安裝請求,包括確認與安裝請求相關聯(lián)的安全令牌;由安裝管理代理服務器識別受信軟件安裝服務器以在用戶計算機上安裝與安裝請求相關聯(lián)的軟件。安裝管理代理服務器、用戶代理和受信軟件安裝服務器包括聯(lián)盟中的實體。典型的實施例也包括由受信軟件安裝服務器根據(jù)軟件安裝規(guī)則在用戶計算機上安裝軟件。
安裝管理代理服務器對安裝請求的確認可以通過驗證用戶代理的網絡位置來實現(xiàn)。安裝管理代理服務器對受信軟件安裝服務器的識別可以通過識別在安裝管理代理服務器的安全域以外的軟件安裝服務器,并且由軟件管理代理服務器向在安裝管理代理服務器的安全域以外的軟件安裝服務器提供包括安全令牌的代理安裝請求來實現(xiàn)。
實施例可以包括由在安裝管理代理服務器的安全域以外的軟件安裝服務器確認代理安裝請求;以及由在安裝管理代理服務器的安全域以外的軟件安裝服務器根據(jù)軟件安裝規(guī)則在用戶計算機上安裝軟件。實施例也可以包括由在安裝管理代理服務器的安全域以外的軟件安裝服務器確認代理安裝請求;由在安裝管理代理服務器的安全域以外的軟件安裝服務器向安裝管理代理服務器提供軟件安裝規(guī)則;以及由安裝管理代理服務器根據(jù)軟件安裝規(guī)則在用戶計算機上安裝與安裝請求相關聯(lián)的軟件。
正如附圖中所圖示的,通過本發(fā)明示范實施例的如下更為詳細的描述將能夠明白本發(fā)明的前述以及其他目的、特性和優(yōu)點,在附圖中相似的標號一般代表本發(fā)明示范實施例的相似部分。
圖1的方框示了根據(jù)本發(fā)明實施例、用于聯(lián)盟內軟件安裝的示例性系統(tǒng)。
圖2根據(jù)本發(fā)明實施例說明了包括用于在聯(lián)盟內的軟件安裝的示例性安裝管理服務器的自動化計算機器的方框圖。
圖3說明了用于聯(lián)盟內軟件安裝的示例性方法。
圖4的流程示了用于確認安裝請求的示例性方法。
圖5根據(jù)本發(fā)明實施例說明了聯(lián)盟內軟件安裝的例子,該例子包括識別在安裝管理代理服務器的安全域以外的軟件安裝服務器。
圖6的流程示了根據(jù)本發(fā)明實施例、用于聯(lián)盟內軟件安裝的另一示例性方法,其中軟件安裝服務器不安裝軟件,而是將軟件安裝規(guī)則提供給安裝管理代理服務器以實現(xiàn)軟件安裝。
具體實施例方式
聯(lián)盟內的軟件安裝從圖1開始,參照附圖來描述根據(jù)本發(fā)明實施例、用于聯(lián)盟內軟件安裝的示例性方法、設備和產品。圖1的方框示了根據(jù)本發(fā)明實施例、用于聯(lián)盟內軟件安裝的示例性系統(tǒng)。聯(lián)盟是實體的集合,每個實體代表單個的安全管理單元,并且每個實體已經與聯(lián)盟中的至少一個其他實體建立信任(trust)。信任是這樣的特征聯(lián)盟內的一個實體愿意依賴聯(lián)盟中的另一實體來代表該實體執(zhí)行一個或多個動作。通過建立安全證書在聯(lián)盟內對信任進行管理,這些證書滿足聯(lián)盟內各實體的相關安全策略。信任可以是第一實體與第二實體之間的直接信任。信任也可以是第一實體與第三實體之間的間接信任,其中第三實體依賴于受信第二實體對于第一實體的擔保。也就是說,第三實體之所以信任第一實體是因為第一實體已經滿足第二實體的安全協(xié)議。
Web服務聯(lián)盟語言(‘WS聯(lián)盟’)定義了與Web服務和專用協(xié)議一起使用的、用于在聯(lián)盟內的實體間促成信任的機制。WS聯(lián)盟采納了廣泛多樣的安全模型。Web服務語言規(guī)范可以從http://www.ibm.com/developerworks/library/ws-fed/下載獲得。
圖1的示例性聯(lián)盟包括三個信任域,即軟件用戶域(114)、安裝管理域(120)和軟件安裝外包伙伴域(118)。信任域是受管理安全空間,在該安全空間中,請求的源和目標對于滿足信任域的相關安全策略的特定證書集合加以確定并且達成一致。圖1的每個信任域(114、120和118)內的實體可以在它們各自信任域內使用不同的安全協(xié)議,但是仍然可以通過根據(jù)WS聯(lián)盟促成信任,以代表圖1的其他信任域中的實體來請求和執(zhí)行動作。
根據(jù)本發(fā)明的實施例,軟件用戶域(114)是包括其上安裝軟件的計算機的受管理安全空間。在圖1的例子中,軟件用戶域(114)包括安裝于用戶計算機(199)上的用戶代理(108)。根據(jù)圖1的實施例,用戶計算機是聯(lián)盟中的實體,根據(jù)本發(fā)明實施例在該計算機上安裝有軟件。
在圖1的例子中用戶代理(108)被實現(xiàn)為軟件,該軟件通過將安裝請求發(fā)送到位于已知統(tǒng)一資源定位符(‘URL’)處的安裝管理代理服務器(110),從而啟動根據(jù)本發(fā)明的實施例的軟件安裝。在圖1的例子中安裝管理代理服務器(110)是聯(lián)盟中的實體,該實體接收來自用戶代理的安裝請求,確認那些安裝請求,并且為用戶計算機(199)上的軟件安裝來識別軟件安裝服務器。
軟件用戶域(114)也包括安全令牌服務(102),該服務已經與安裝管理域的安全令牌服務(104)建立信任(134)。安全令牌服務通常是Web服務,該服務發(fā)出安全令牌以在聯(lián)盟的不同安全域中的實體之間促成信任。為了傳達信任,安全令牌服務需要證明,比如安全令牌或安全令牌集,并且發(fā)出具有它自身信任聲明的安全令牌。
圖1的例子也包括作為聯(lián)盟內安全域的安裝管理域(120),該安全域包括安裝管理代理服務器(110)、安全令牌服務(104)和軟件安裝服務器(116)。在圖1的例子中,安裝管理代理服務器(110)是聯(lián)盟中的實體,該實體接收來自用戶代理的安裝請求,確認那些安裝請求,并且為用戶計算機(199)上的軟件安裝來識別軟件安裝服務器。在圖1的例子中,軟件安裝服務器可以安裝管理管理代理服務器(110)駐留在相同的安全域(120)中。
可選地,軟件安裝服務器(112)可以與安裝管理代理服務器駐留于不同安全域中。在圖1的例子中,另一軟件安裝服務器(112)駐留于軟件安裝外包伙伴域(118)中。軟件安裝外包伙伴域是軟件安裝服務器的受管理安全空間,該軟件安裝服務器在與安裝管理代理服務器的操作者具有外包關系的客戶機計算機(199)上安裝軟件。
圖1的示例性系統(tǒng)一般通過在安裝管理代理服務器(110)中從用戶計算機(199)上安裝的用戶代理(118)接收安裝請求來執(zhí)行根據(jù)本發(fā)明實施例的聯(lián)盟內軟件安裝。安裝請求是代表有關在用戶計算機(199)上安裝軟件的請求的消息。安裝請求也可以包括對于口令的請求,該口令使得能夠向客戶機計算機安全已經得到的軟件;對于軟件升級的請求;或者是本領域的技術人員會想到的任何其他安裝請求或者安裝請求組合。
安裝請求也包括用來在軟件用戶安全域(114)與安裝管理安全域(120)之間促成信任的安全令牌。WS聯(lián)盟規(guī)定使用安全令牌以確認聯(lián)盟內的實體。安全令牌通常實現(xiàn)為對簡單對象訪問協(xié)議(‘SOAP’)消息的擴展,并且代表了聲明(claim)的集合,這些聲明是由提供安全令牌的實體所做出的聲明。安全令牌中常常包括的聲明的例子是實體名稱、發(fā)出安全令牌的實體的身份、提供令牌的實體的特權、提供令牌的實體的能力、以及本領域的技術人員會想到的其他例子。安全令牌能夠包括由與整個聯(lián)盟中的各實體相關聯(lián)的安全設備所生成的證書。
如以上剛剛討論的,圖1的例子中使用的安全令牌常常嵌入于簡單對象訪問協(xié)議(‘SOAP’)消息中。SOAP提供了基于XML的消息交換范例,用于在非集中式的分布式環(huán)境中的對等方之間交換結構化和有類型的信息。SOPA是無狀態(tài)的單向消息交換范例,但是可以通過將這些單向交換與由另一協(xié)議或專用信息所提供的特征相組合而用于更為復雜的請求/響應交互模式中。
圖1的示例性安裝管理代理服務器(110)通過確認與安裝請求相關聯(lián)的安全令牌來確認安裝請求。對用戶代理提供的安全令牌的確認可以使用根據(jù)WS聯(lián)盟的一個或多個安全令牌服務來實現(xiàn)。安裝管理代理服務確認安裝請求的一種方式是通過接收由用戶代理提供的安裝管理域(120)的安全令牌來實現(xiàn)。在這樣的實施例中,用戶代理(108)可以從在軟件用戶安全域(114)中已經與安裝管理安全域(120)的安全令牌服務(104)建立信任的安全令牌服務(102),或者從安裝管理安全服務域(120)的安全令牌服務(104),接收用于安裝管理安全域(120)的安全令牌。
用戶代理可以從在軟件用戶安全域(114)中已經與安裝管理安全域(120)的安全令牌服務(104)建立信任(134)的安全令牌服務(102),接收在安裝管理域(120)中可接受的安全令牌。可選地,用戶代理可以從在安裝管理安全域(120)中已經與軟件用戶安全域(114)中的安全令牌服務(102)建立信任的安全令牌服務(104),接收在安裝管理域(120)中可接受的安全令牌。在這樣的實施例中,用戶代理可以通過將用于軟件用戶域(114)的安全令牌出示給安裝管理安全域(120)中的安全令牌服務(104),并且通過從安裝管理域(114)的安全令牌服務(104)接收可接受的安全令牌,來接收在安裝管理域(120)中可接受的安全令牌。
安裝管理代理服務器(110)確認安裝請求的另一方式可以通過進行如下處理來實現(xiàn)接收用于軟件用戶域(114)的安全令牌,并且將用于軟件用戶域(114)的安全令牌出示給安裝管理域(120)的已經與軟件用戶域中的安全令牌服務(102)建立信任的安全令牌服務(104)。在由用戶代理(108)所出示的安全令牌的交換中,安裝管理代理服務器(110)接收用于安裝管理域(120)的安全令牌。
包括由用戶代理提供的安全令牌、確認安裝請求的例子是僅用于說明目的,而不是對本發(fā)明的限制。事實上,Web服務聯(lián)盟語言提供了確認安全令牌的多種方式,并且所有這樣的方式以及其他方式是本領域的技術人員可以想到的。
根據(jù)圖1的例子,通過由安裝管理代理服務器(110)識別受信軟件安裝服務器以將與安裝請求相關聯(lián)的軟件安裝于用戶計算機上,來繼續(xù)軟件安裝。根據(jù)本發(fā)明的實施例,受信軟件安裝服務器是在聯(lián)盟內受信任的能夠安裝軟件的服務器。在圖1的例子中,一個受信軟件安裝服務器(116)駐留于安裝管理域(120)內,而另一受信軟件安裝服務器(112)駐留于軟件安裝外包伙伴安全域(118)中。
在受信軟件安裝服務器(112)駐留于安裝管理代理服務器(110)的安全域(120)以外的實施例中,為了促成信任,軟件管理代理服務器(110)向安裝管理代理服務器的安全域(120)以外的軟件安裝服務器提供包括安全令牌的代理安裝請求。軟件安裝服務器(112)然后可以以多種方式之一來確認代理安裝請求。如以上討論的,對包括安全令牌的代理安裝請求的確認可以通過如下處理來實現(xiàn)從接收來自安裝管理域(120)中的安全令牌服務(104),或者來自軟件安裝外包伙伴域(118)中的安全令牌服務(106)的安全令牌的安裝管理代理服務器(110),接收用于軟件安裝外包伙伴域(118)的安全令牌,其中安全令牌服務(104,106)已經建立信任(136)。軟件安裝服務器(112)確認代理安裝請求的另一方式可以通過如下處理來實現(xiàn)接收用于安裝管理域(120)的安全令牌,將用于安裝管理域(120)的安全令牌出示給軟件安裝外包伙伴域(118)的安全令牌服務(116),并且在交換中接收用于軟件安裝外包伙伴安全域的安全令牌。
所識別的軟件安裝服務器根據(jù)一個或多個軟件安裝規(guī)則在用戶計算機(199)上安裝軟件。軟件安裝規(guī)則是由執(zhí)行軟件安裝的軟件安裝服務器所實施的、對用于用戶計算機的軟件的安裝進行掌控的規(guī)則。通常在實現(xiàn)軟件安裝的聯(lián)盟實體的操作者與用戶計算機的操作者之間協(xié)商軟件安裝規(guī)則。軟件安裝規(guī)則的例子包括指示軟件安裝服務器向請求方用戶代理提供用于安裝在客戶機計算機上的實際代碼的規(guī)則;指示軟件安裝服務器向客戶機計算機提供口令的規(guī)則,該口令使得能夠安裝客戶機計算機上的請求用戶代理已經可得到的代碼;指示軟件安裝服務器向客戶機計算機上的請求用戶代理提供軟件升級的規(guī)則;以及本領域的技術人員會想到的其他規(guī)則。
構成圖1中圖示的示例性系統(tǒng)的服務器和其他裝置的安排只是用于說明目的,而不是對本發(fā)明的限制。根據(jù)本發(fā)明的各種實施例而使用的數(shù)據(jù)處理系統(tǒng)可以包括本領域的技術人員會想到的、在圖1中未示出的附加服務器、路由器、其他裝置以及對等架構。在這樣的數(shù)據(jù)處理系統(tǒng)中的網絡可以支持許多數(shù)據(jù)通信協(xié)議,例如包括TCP/IP、HTTP、WAP、HDTP以及本領域的技術人員會想到的其他協(xié)議。除了圖1中所示的之外,本發(fā)明的各種實施例還可以實現(xiàn)于多種硬件平臺上。
如以上討論的,根據(jù)本發(fā)明的聯(lián)盟內軟件安裝一般是以計算機,也就是以自動化計算機器來實現(xiàn)的。例如在圖1的系統(tǒng)中,所有節(jié)點、服務器和通信裝置至少在一定程度上實現(xiàn)為計算機。因此,為了進一步的說明,圖2說明了自動化計算機器的方框圖,該計算機器包括在根據(jù)本發(fā)明實施例的聯(lián)盟內軟件安裝中有用的示例性安裝管理服務器110。圖2的安裝管理服務器(110)包括至少一個計算機處理器(156)或‘CPU’,以及隨機存取存儲器(168)(“RAM”),該存儲器通過系統(tǒng)總線(160)連接到處理器(156)以及管理安裝服務器的其他部件。
存儲于RAM(168)中的是安裝管理模塊(232),該模塊包括用于根據(jù)本發(fā)明實施例的聯(lián)盟內軟件安裝的計算機程序指令。圖2的安裝管理模塊(232)能接收來自用戶代理的安裝請求,確認安裝請求(包括確認與安裝請求相關聯(lián)的安全令牌),以及識別受信軟件安裝服務器以在用戶計算機上安裝與安裝請求相關聯(lián)的軟件。
也存儲于RAM(168)中的是操作系統(tǒng)(154)。在根據(jù)本發(fā)明實施例的計算機中使用的操作系統(tǒng)包括UNIXTM、LinuxTM、MicrosoftWindows XPTM、AIXTM、IBM的i5/OSTM以及本領域的技術人員會想到的其他操作系統(tǒng)。在圖2的例子中,操作系統(tǒng)(154)和安裝管理模塊(232)在RAM(168)中示出,但是許多這樣的軟件的部件通常存儲于非易失性存儲器(166)中。
圖2的示例性安裝管理服務器(110)包括非易失性計算機存儲器(166),該存儲器通過系統(tǒng)總線(160)連接到處理器(156)以及管理安裝服務器(110)的其他部件。非易失性計算機存儲器(166)可以實現(xiàn)為硬盤驅動器(170)、光盤驅動器(172)、電可擦可編程只讀存儲器空間(所謂的‘EEPROM’或‘閃’存)(174)、RAM驅動器(未示出)或者本領域的技術人員會想到的任何其他種類的計算機存儲器。
圖2的示例性安裝管理服務器包括一個或多個輸入/輸出接口適配器(178)。計算機中的輸入/輸出接口適配器例如通過軟件驅動程序和計算機硬件來實現(xiàn)面向用戶的輸入/輸出,所述軟件驅動程序和計算機硬件用于控制對比如計算機顯示屏的顯示裝置(180)的輸出,以及來自比如鍵盤和鼠標的用戶輸入裝置(181)的用戶輸入。
圖2的安裝管理服務器(110)包括用于與其他計算機(182)實現(xiàn)數(shù)據(jù)通信(184)的通信適配器。這樣的數(shù)據(jù)通信可以通過RS-232連接、通過比如USB的外部總線、通過比如IP網絡的數(shù)據(jù)通信網絡、或者以本領域的技術人員會想到的其他方式來串行地進行。通信適配器直接地或通過網絡實現(xiàn)硬件級數(shù)據(jù)通信,一個計算機通過該數(shù)據(jù)通信發(fā)送數(shù)據(jù)通信到另一計算機。用于根據(jù)本發(fā)明實施例的聯(lián)盟內軟件安裝的通信適配器的例子包括用于有線撥號通信的調制解調器、用于有線網絡通信的以太網(IEEE 802.3)適配器以及用于無線網絡通信的802.11b適配器。
圖2說明了示例性安裝管理服務器的方框圖。用于根據(jù)本發(fā)明實施例的聯(lián)盟內軟件安裝的其他計算機可以類似地加以配置,但是駐留有其他軟件模塊。
為了進一步說明,圖3說明了用于聯(lián)盟內軟件安裝的示例性方法,該方法包括由安裝管理代理服務器(110)從用戶計算機(199)上安裝的用戶代理(108)接收(302)安裝請求(304)。如以上討論的,在圖3的例子中,安裝管理代理服務器(110)和用戶代理(108)包括聯(lián)盟內的實體。安裝管理代理服務器(110)和用戶代理(108)可以駐留于使用不同安全協(xié)議的不同安全域中。然而,安裝管理代理服務器(110)可以通過例如根據(jù)WS聯(lián)盟語言而促成的信任來為用戶代理管理軟件安裝。
如上面討論的,安裝請求是代表有關在用戶計算機(199)上安裝軟件的請求的消息。安裝請求(304)可以包括對于將要安裝于用戶計算機(199)上的軟件代碼的請求。安裝請求也可以包括對于口令的請求,該口令使得能夠安裝客戶計算機已經可得到的軟件;對于軟件升級的請求;以及本領域的技術人員會想到的任何其他安裝請求或安裝請求組合。
在圖3的例子中,用戶代理(108)將安裝請求發(fā)送到在針對安裝請求的預指定URL處的安裝管理代理服務器(110)。為安裝請求提供預指定的URL允許用戶代理被預配置為將所有安裝請求發(fā)送到預指定的URL,而不管是哪一用戶計算機需要軟件安裝。
圖3的方法也包括由安裝管理代理服務器(110)確認(306)安裝請求(306)。為了進一步說明,圖4的流程示了由安裝管理代理服務器(110)確認(306)安裝請求(304)的示例性方法。圖4的方法包括確認(406)與安裝請求相關聯(lián)(304)的安全令牌(402)。如以上討論的,WS聯(lián)盟規(guī)定使用安全令牌來確認聯(lián)盟內的實體。安全令牌通常實現(xiàn)為對簡單對象訪問協(xié)議(‘SOAP’)消息的擴展,并且代表了聲明的集合,這些聲明是由提供安全令牌的實體所做出的聲明。安全令牌中常常包括的聲明的例子是實體名稱、發(fā)出安全令牌的實體的身份、提供令牌的實體的特權、提供令牌的實體的能力、以及本領域的技術人員會想到的其他例子。
圖4的示例性安裝管理代理服務器(110)通過確認與安裝請求相關聯(lián)的安全令牌來確認安裝請求。正如以上參照圖1更為具體地討論過的,對由用戶代理提供的安全令牌的確認可以使用根據(jù)WS聯(lián)盟的一個或多個安全令牌服務來實現(xiàn)。
圖4的方法也包括驗證(408)用戶代理(108)的網絡位置(404)。在圖4的例子中,安裝請求(304)也包括用戶代理的網絡位置。驗證(408)用戶代理(108)的位置(404)的一種方式可以通過將用戶代理所提供的統(tǒng)一資源定位器(‘URL’)與安裝管理代理服務器可得到的用戶代理的可接受URL的列表做比較來進行。如果由用戶代理提供的URL被包括在用戶的可接受URL列表內,則安裝管理代理服務器將識別軟件安裝服務器以執(zhí)行安裝請求。根據(jù)本發(fā)明的實施例,對用戶代理的網絡位置的驗證通過如下方式來提供附加的安全特性要求用戶代理不僅如安全令牌所證實的那樣受到信任,而且對于安裝管理代理服務器而言已經識別為軟件安裝的候選。
再次參照圖3在確認(306)安裝請求(34)之后,通過由安裝管理代理服務器(110)識別受信軟件安裝服務器(114)以在用戶計算機上安裝與安裝請求相關聯(lián)的軟件來繼續(xù)圖3的方法。如以上討論的,軟件安裝服務器根據(jù)一個或多個軟件安裝規(guī)則在用戶計算機(199)上安裝軟件。對受信軟件安裝服務器(114)的識別(308)可以通過從安裝服務器表中進行檢索來執(zhí)行,該表按照用戶代理ID對安裝服務器進行索引。用戶代理可以通過在安裝請求(304)中包括用戶代理ID來按照用戶代理ID識別其自身。
圖3的方法包括由受信軟件安裝服務器(114)根據(jù)軟件安裝規(guī)則(312)在用戶計算機(199)上安裝(310)軟件。軟件安裝規(guī)則是由執(zhí)行軟件安裝的軟件安裝服務器所實施的、對于針對用戶計算機的軟件安裝進行掌控的規(guī)則。通常在進行軟件安裝的聯(lián)盟實體的操作者與用戶計算機(199)的操作者之間協(xié)商軟件安裝規(guī)則。軟件安裝規(guī)則的例子包括指示軟件安裝服務器向請求方用戶代理提供用于安裝在客戶機計算機上的實際代碼的規(guī)則;指示軟件安裝服務器向客戶機計算機提供口令的規(guī)則,該口令使得能夠安裝客戶機計算機上的請求方用戶代理已經可得到的代碼;指示軟件安裝服務器向客戶機計算機上的請求方用戶代理提供軟件升級的規(guī)則;以及本領域的技術人員會想到的其他規(guī)則。
根據(jù)軟件安裝規(guī)則在用戶計算機上安裝軟件可以通過如下處理來進行將軟件代碼提供給用戶代理,向用戶代理提供使得能夠在客戶機計算機上安裝軟件的口令,向用戶代理提供軟件升級以對客戶計算機上已經安裝的軟件進行升級,以及本領域的技術人員會想到的在客戶計算機上安裝軟件的其他方式。
如以上討論的,由安裝管理代理服務器識別的受信安裝服務器可以與安裝管理代理服務器在相同的安全域中,因此不要求用以在安裝管理代理服務器與軟件安裝服務器之間促成信任的附加過程??蛇x地,受信軟件安裝服務器可以駐留于安裝管理代理服務器的安全域以外,但又在聯(lián)盟內。因此,為了進一步說明,圖5說明了根據(jù)本發(fā)明實施例的聯(lián)盟內軟件安裝的例子,該例子包括識別在安裝管理代理服務器的安全域以外的軟件安裝服務器。圖5的方法包括由安裝管理代理服務器(110)從用戶計算機上安裝的用戶代理(108)接收(302)安裝請求(304),以及由安裝管理代理服務器(110)確認(306)安裝請求(304)。
圖5的方法包括由安裝管理代理服務器(110)通過識別在安裝管理代理服務器(110)的安全域以外的軟件安裝服務器(112)來識別(308)受信軟件安裝服務器。為了在安裝管理代理服務器的安全域以外促成信任,根據(jù)圖5的方法對在安裝管理代理服務器(110)的安全域以外的軟件安裝服務器(112)的識別(518)也包括由軟件管理代理服務器(110)向在安裝管理代理服務器(100)的安全域以外的軟件安裝服務器(112)提供(520)包括安全令牌(524)的代理安裝請求(522)。
根據(jù)圖5的方法,代理安裝請求(522)是由安裝管理代理服務器(110)發(fā)送給軟件安裝服務器(112)的消息,該消息代表有關在用戶計算機(199)上安裝軟件的請求。代理安裝請求可以包括對于要安裝于用戶計算機(199)上的軟件代碼的請求。代理安裝請求也可以包括對于口令的請求,該口令使得能夠安裝用戶計算機已經可得到的軟件;對于軟件升級的請求;或者本領域的技術人員會想到的任何其他安裝請求或安裝請求組合。
圖5的代理安裝請求(522)也包括安全令牌(524)。如上面討論的,WS聯(lián)盟規(guī)定使用安全令牌以確認聯(lián)盟內的實體。安全令牌通常被實現(xiàn)為對簡單對象訪問協(xié)議(‘SOAP’)消息的擴展,并且代表了聲明的集合,這些聲明是由提供安全令牌的實體所做出的聲明。
圖5的方法也包括由在安裝管理代理服務器(110)的安全域以外的軟件安裝服務器(112)來確認(526)代理安裝請求(522)。圖5的示例性軟件安裝服務器(112)通過確認與代理安裝請求相關聯(lián)的安全令牌來確認安裝請求。正如以上參照圖1更為具體地討論過的,對安全令牌的確認可以使用根據(jù)WS聯(lián)盟的一個或多個安全令牌服務來進行。
圖5的方法也包括由在安裝管理代理服務器(110)的安全域以外的軟件安裝服務器(112)根據(jù)軟件安裝規(guī)則(312)在用戶計算機(199)上安裝(528)軟件。如以上討論的,軟件安裝規(guī)則是由執(zhí)行軟件安裝的軟件安裝服務器所實施的、對用戶計算機的軟件安裝進行掌控的規(guī)則。軟件安裝規(guī)則的例子包括指示軟件安裝服務器向請求方用戶代理提供用于安裝在客戶機計算機上的實際代碼的規(guī)則;指示軟件安裝服務器向客戶機計算機提供口令的規(guī)則,該口令使得能夠安裝客戶機計算機上的請求方用戶代理已經可得到的代碼;指示軟件安裝服務器向客戶機計算機上的請求方用戶代理提供軟件升級的規(guī)則;以及本領域的技術人員會想到的其他規(guī)則在圖5的方法中,軟件安裝服務器執(zhí)行在用戶計算機上的軟件安裝。為了進一步說明,圖6的流程示了用于根據(jù)本發(fā)明實施例的聯(lián)盟內軟件安裝的另一示例性方法,其中軟件安裝服務器不安裝軟件,而是將軟件安裝規(guī)則提供給安裝管理代理服務器以執(zhí)行軟件的安裝。
以與以上參照圖5描述過的方法相似的方式,圖6的方法包括由安裝管理代理服務器(110)從用戶計算機上安裝的用戶代理(108)接收(302)安裝請求(304),以及由安裝管理代理服務器(110)確認(306)安裝請求(304)。圖6的方法包括由安裝管理代理服務器(110)通過識別在安裝管理代理服務器(110)的安全域以外的軟件安裝服務器(112)來識別(308)受信軟件安裝服務器,以及由軟件管理代理服務器(110)向在安裝管理代理服務器(110)的安全域以外的軟件安裝服務器(112)提供(520)包括安全令牌的代理安裝請求(522)。圖6的方法也包括由在安裝管理代理服務器(110)的安全域以外的軟件安裝服務器(112)確認(526)代理安裝請求(522)。
圖6的方法包括由在安裝管理代理服務器(110)的安全域以外的軟件安裝服務器(112)向安裝管理代理服務器(110)提供(602)軟件安裝規(guī)則(312)。如以上討論的,軟件安裝規(guī)則是由執(zhí)行軟件安裝的軟件安裝服務器所實施的、對用戶計算機的軟件安裝進行掌控的規(guī)則。在一些實施例中,軟件安裝服務器(112)也根據(jù)軟件安裝規(guī)則向安裝管理代理服務器(110)提供用于安裝的附加軟件代碼。
圖6的方法也包括由安裝管理代理服務器(110)根據(jù)軟件安裝規(guī)則(312)在用戶計算機(199)上安裝(610)與安裝請求相關聯(lián)(304)的軟件。由安裝管理代理服務器(110)在用戶計算機(199)上安裝(610)與安裝請求相關聯(lián)(304)的軟件,導致單個實體接收來自用戶代理的安裝請求并且響應于安裝請求在用戶計算機上安裝軟件。因此,圖6的方法為用戶代理提供了單個聯(lián)絡點,從而與對于用戶代理透明的軟件安裝服務器(112)進行操作。
在以上所述的聯(lián)盟內軟件安裝的例子中,安裝管理代理服務器識別單個受信軟件安裝服務器以在用戶計算機上安裝與安裝請求相關聯(lián)的軟件。這只是用于說明目的,而不是對本發(fā)明的限制。在本發(fā)明的一些實施例中,安裝管理代理服務器為在用戶計算機上安裝與安裝請求相關聯(lián)的軟件而對受信軟件安裝服務器進行的識別包括識別多個受信軟件安裝服務器。這樣的實施例常常也包括由安裝管理代理服務器在多個受信軟件安裝服務器間協(xié)調軟件安裝。在多個受信軟件安裝服務器間對軟件安裝的協(xié)調可以通過指示每個受信軟件安裝服務器執(zhí)行一個或多個動作來進行,這些動作比如是在用戶計算機上安裝軟件代碼、向用戶代理提供啟用已經在用戶計算機上安裝的軟件的口令、向安裝管理代理服務器提供用于安裝在用戶計算機上的軟件代碼、向安裝管理代理服務器提供啟用已經在用戶計算機上安裝的軟件的口令,或者本領域的技術人員會想到的在多個受信軟件服務器間協(xié)調軟件安裝的任何其他方式。
本發(fā)明的示例性實施例主要是在用于聯(lián)盟內軟件安裝的全功能計算機系統(tǒng)的環(huán)境中描述的。然而,本領域的技術人員將認識到,本發(fā)明也可以實施于計算機程序產品中,該產品設置在用于與任何適宜的數(shù)據(jù)處理系統(tǒng)一起使用的信號承載介質上。這樣的信號承載介質可以是用于機器可讀信息的傳輸介質或者可記錄介質,包括磁介質、光介質或其他適宜的介質。可記錄介質的例子包括硬盤驅動器中的磁盤或軟盤、用于光驅的光盤、磁帶以及本領域的技術人員會想到的其他例子。傳輸介質的例子包括用于話音通信的電話網絡以及數(shù)字數(shù)據(jù)通信網絡,比如EthernetsTM以及與網際協(xié)議和萬維網連通的網絡。本領域的技術人員將立即認識到,具有適宜編程裝置的任何計算機系統(tǒng)將能夠執(zhí)行如程序產品中體現(xiàn)的本發(fā)明的方法步驟。本領域的技術人員將立即認識到,盡管本說明書中描述的一些示范實施例是面向在計算機硬件上安裝和執(zhí)行的軟件,但是實現(xiàn)為固件或硬件的可選實施例也在本發(fā)明的范圍內。
應當理解,根據(jù)前面的描述,在本發(fā)明的各種實施例中可以做出改型和變化而不脫離本發(fā)明的真實要義。本說明書中的描述是僅出于說明目的,而不應當在限制意義上加以理解。本發(fā)明的范圍僅由所附權利要求的文字來界定。
權利要求
1.一種用于聯(lián)盟內軟件安裝的方法,所述方法包括由安裝管理代理服務器從用戶計算機上安裝的用戶代理接收安裝請求;由所述安裝管理代理服務器確認所述安裝請求,包括確認與所述安裝請求相關聯(lián)的安全令牌;由所述安裝管理代理服務器識別受信軟件安裝服務器以在所述用戶計算機上安裝與所述安裝請求相關聯(lián)的軟件;其中所述安裝管理代理服務器、所述用戶代理和所述受信軟件安裝服務器包括所述聯(lián)盟中的實體。
2.根據(jù)權利要求1的方法,進一步包括由所述受信軟件安裝服務器根據(jù)軟件安裝規(guī)則在所述用戶計算機上安裝軟件。
3.根據(jù)權利要求2的方法,其中軟件安裝規(guī)則進一步包括一個或多個規(guī)則,所述一個或多個規(guī)則指示所述受信軟件安裝服務器向用戶代理提供啟用所述用戶計算機上安裝的軟件的口令;以及所述受信軟件安裝服務器根據(jù)軟件安裝規(guī)則在所述用戶計算機上對軟件進行的安裝進一步包括將所述口令提供給所述用戶代理。
4.根據(jù)權利要求2的方法,其中軟件安裝規(guī)則進一步包括一個或多個規(guī)則,所述一個或多個規(guī)則指示所述受信軟件安裝服務器在所述用戶計算機上安裝軟件代碼。
5.根據(jù)權利要求1的方法,其中所述安裝管理代理服務器對所述安裝請求的確認進一步包括驗證所述用戶代理的網絡位置。
6.根據(jù)權利要求1的方法,其中所述安裝管理代理服務器對受信軟件安裝服務器的識別進一步包括識別在所述安裝管理代理服務器的安全域以外的軟件安裝服務器;以及由所述軟件安裝代理服務器向在所述安裝管理代理服務器的安全域以外的所述軟件安裝服務器提供包括安全令牌的代理安裝請求。
7.根據(jù)權利要求6的方法,進一步包括由在所述安裝管理代理服務器的安全域以外的所述軟件安裝服務器確認所述代理安裝請求;以及由在所述安裝管理代理服務器的安全域以外的所述軟件安裝服務器根據(jù)軟件安裝規(guī)則在用戶計算機上安裝軟件。
8.根據(jù)權利要求6的方法,進一步包括由在所述安裝管理代理服務器的安全域以外的所述軟件安裝服務器確認所述安裝請求;由在所述安裝管理代理服務器的安全域以外的所述軟件安裝服務器向安裝管理代理服務器提供軟件安裝規(guī)則;以及由所述安裝管理代理服務器根據(jù)所述軟件安裝規(guī)則在用戶計算機上安裝與所述安裝請求相關聯(lián)的軟件。
9.根據(jù)權利要求1的方法,其中所述軟件管理代理服務器和所述用戶代理駐留于不同的安全域中。
10.根據(jù)權利要求1的方法,其中所述安裝管理代理服務器為在所述用戶計算機上安裝與所述安裝請求相關聯(lián)的軟件而對受信軟件安裝服務器進行的識別包括識別多個受信軟件安裝服務器;以及所述方法進一步包括由所述安裝管理代理服務器協(xié)調所述多個受信軟件安裝服務器中間的軟件安裝。
11.一種用于聯(lián)盟內軟件安裝的設備,所述設備包括計算機處理器和在操作時連接到所述計算機處理器的計算機存儲器,所述計算機存儲器具有放置于其內的計算機程序指令,所述計算機程序指令能夠從用戶計算機上安裝的用戶代理接收安裝請求;確認所述安裝請求,包括確認與所述安裝請求相關聯(lián)的安全令牌;以及識別受信軟件安裝服務器以在所述用戶計算機上安裝與所述安裝請求相關聯(lián)的軟件。
12.根據(jù)權利要求11的設備,其中所述計算機程序指令能夠根據(jù)軟件安裝規(guī)則在所述用戶計算機上安裝軟件。
13.根據(jù)權利要求11的設備,其中所述計算機程序指令能夠驗證所述用戶代理的網絡位置。
14.根據(jù)權利要求11的設備,其中所述計算機程序指令能夠識別在所述安裝管理代理服務器的安全域以外的軟件安裝服務器;以及向在所述安裝管理代理服務器的安全域以外的所述軟件安裝服務器提供包括安全令牌的代理安裝請求。
15.一種用于聯(lián)盟內軟件安裝的計算機程序產品,所述計算機程序產品放置于信號承載介質上,所述計算機程序產品包括用于實施前述方法權利要求中的任一方法的計算機程序指令。
全文摘要
為聯(lián)盟內的軟件安裝提供了方法、設備和計算機程序產品。實施例包括由安裝管理代理服務器從用戶計算機上安裝的用戶代理接收安裝請求;由安裝管理代理服務器確認安裝請求,包括確認與安裝請求相關聯(lián)的安全令牌;以及由安裝管理代理服務器識別受信軟件安裝服務器以在用戶計算機上安裝與安裝請求相關的軟件。安裝管理代理服務器、用戶代理和受信軟件安裝服務器包括聯(lián)盟中的實體。典型的實施例也包括由受信軟件安裝服務器根據(jù)軟件安裝規(guī)則在用戶計算機上安裝軟件。
文檔編號G06F9/445GK1953393SQ20061007730
公開日2007年4月25日 申請日期2006年4月26日 優(yōu)先權日2005年10月20日
發(fā)明者戴維·布魯斯·庫米爾, 郎達·L·查德雷斯, 尼爾·彭內爾 申請人:國際商業(yè)機器公司