專利名稱::創(chuàng)建與遠(yuǎn)程資源的安全交互連接的制作方法創(chuàng)建與遠(yuǎn)程資源的安全交互連接扭旦冃足
背景技術(shù):
和相關(guān)領(lǐng)域隨著計(jì)算機(jī)化系統(tǒng)的日益流行,對(duì)大型和小型網(wǎng)絡(luò)內(nèi)計(jì)算機(jī)系統(tǒng)的文件和處理資源分布的需要也日益增加。一般而言,計(jì)算機(jī)系統(tǒng)和相關(guān)設(shè)備經(jīng)由網(wǎng)絡(luò)傳遞信息是出于各種原因,例如交換個(gè)人電子消息、出售商品、提供賬戶信息等。然而人們會(huì)認(rèn)識(shí)到,隨著計(jì)算機(jī)系統(tǒng)及其相關(guān)應(yīng)用程序變得愈發(fā)復(fù)雜,與在網(wǎng)絡(luò)上共享數(shù)據(jù)和資源相關(guān)聯(lián)的各種挑戰(zhàn)(例如,"設(shè)備"、"應(yīng)用"或"應(yīng)用組件")也在增加。在網(wǎng)絡(luò)內(nèi)分布資源的一些現(xiàn)有方法包括集中式計(jì)算場(chǎng)景,這會(huì)涉及與未本地安裝資源的一個(gè)或多個(gè)客戶共享這些資源的集中式網(wǎng)絡(luò)服務(wù)器。已用于這類功能的一種協(xié)議是遠(yuǎn)程桌面協(xié)議(RDP)。使用遠(yuǎn)程桌面協(xié)議,集中式網(wǎng)絡(luò)服務(wù)器可以與網(wǎng)絡(luò)上的其他客戶共享感興趣的數(shù)據(jù)和資源。在某些情況下,這些客戶隨后可以如同這些資源被本地安裝一樣來(lái)與這些資源進(jìn)行交互(例如,發(fā)送鼠標(biāo)和鍵盤事件等)。理想情況下,客戶計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)服務(wù)器之間的這種交互會(huì)無(wú)縫地進(jìn)行,如同該客戶計(jì)算機(jī)系統(tǒng)用其自身安裝的資源來(lái)在本地處理這些數(shù)據(jù)一樣。當(dāng)用戶與集中式服務(wù)器發(fā)起連接時(shí),該用戶的客戶計(jì)算機(jī)系統(tǒng)發(fā)起一系列的協(xié)議交換,這最終會(huì)使用戶登陸到服務(wù)器計(jì)算機(jī)系統(tǒng)。這組交換的一部分是標(biāo)準(zhǔn)連接"握手"開(kāi)銷,這是大多數(shù)安全網(wǎng)絡(luò)連接類型所固有的。這些開(kāi)銷的很大一部分是在用戶有機(jī)會(huì)驗(yàn)證個(gè)人憑證(例如,用戶名和口令)之前在客戶計(jì)算機(jī)系統(tǒng)和集中式服務(wù)器之間建立初始連接的一部分。例如,在某些情況下可能存在有16種之多的不同交換,它們作為客戶登錄集中式服務(wù)器的一部分在向用戶呈現(xiàn)登錄屏幕之前發(fā)生。結(jié)果,集中式服務(wù)器和客戶計(jì)算機(jī)系統(tǒng)通常耗費(fèi)大量連接處理資源來(lái)生成用戶連接會(huì)話,這甚至是在用戶實(shí)際有機(jī)會(huì)進(jìn)行驗(yàn)證之前。6用戶驗(yàn)證中的這一相對(duì)延遲會(huì)導(dǎo)致客戶/服務(wù)器交互的許多不同的困難。更具體地,建立這類連接的問(wèn)題之一在于任何人都可以發(fā)起與服務(wù)器的連接,即使最后只有經(jīng)授權(quán)的用戶才能得到完全驗(yàn)證。這一初始連接開(kāi)銷可能會(huì)引起集中式服務(wù)器潛在地易受某類拒絕服務(wù)("DOS")攻擊,諸如在惡意代理發(fā)起多個(gè)連接請(qǐng)求,企圖超載并危及集中式服務(wù)器安全之時(shí)。連接場(chǎng)景的另一個(gè)類似的潛在問(wèn)題是在客戶與服務(wù)器變?yōu)閿嚅_(kāi)連接時(shí)可能會(huì)存在困難。具體而言,通常,對(duì)原始連接建立的保存即使存在,也會(huì)很少,因而客戶計(jì)算機(jī)系統(tǒng)和服務(wù)器將需要重建該連接,這就意味著再一次的重新啟動(dòng)先前的建立開(kāi)銷序列。這會(huì)使用強(qiáng)度波動(dòng)的連接(諸如,無(wú)線連接)的客戶計(jì)算機(jī)系統(tǒng)產(chǎn)生問(wèn)題,并且會(huì)抑制對(duì)該客戶計(jì)算機(jī)系統(tǒng)所期望的無(wú)縫體驗(yàn)。這還會(huì)其中客戶計(jì)算機(jī)系統(tǒng)通過(guò)服務(wù)器場(chǎng)連接至集中式服務(wù)器的情況中造成困難。例如,一個(gè)組織可能配置一組服務(wù)器(即,"服務(wù)器場(chǎng)")來(lái)分擔(dān)負(fù)載平衡顧慮,而與此同時(shí)這些服務(wù)器都可通過(guò)單個(gè)虛擬互聯(lián)網(wǎng)協(xié)議地址("VIP")來(lái)尋址。然而,如果客戶計(jì)算機(jī)系統(tǒng)從服務(wù)器場(chǎng)斷開(kāi),該客戶計(jì)算機(jī)系統(tǒng)就僅僅知曉VIP,而不知曉服務(wù)器場(chǎng)中正處理與其連接的特定服務(wù)器的具體網(wǎng)絡(luò)地址。于是,客戶計(jì)算機(jī)系統(tǒng)就無(wú)法順利地使用先前建立的連接設(shè)置自動(dòng)與該集中式服務(wù)器重新連接,而是通常需要重新啟動(dòng)所有的常規(guī)連接協(xié)議交換才能繼續(xù)該通信。因此,在當(dāng)前可被尋址的連接發(fā)起協(xié)議中,特別是那些處理集中式計(jì)算環(huán)境的協(xié)議,存在有諸多困難,簡(jiǎn)述本發(fā)明的各個(gè)實(shí)現(xiàn)通過(guò)系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品來(lái)解決本領(lǐng)域中的一個(gè)或多個(gè)問(wèn)題,這些系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品被配置為在安全客戶服務(wù)器通信中建立比以前更加安全的憑證信息。更具體地,本發(fā)明的各個(gè)實(shí)現(xiàn)在不要求服務(wù)器分配大量連接資源的情況下提供驗(yàn)證信息的交換。此外,本發(fā)明的各個(gè)實(shí)現(xiàn)還能夠容易適于允許已丟失安全連接的一致性重建,無(wú)論是在典型的一對(duì)一客戶/服務(wù)器連接下,還是在客戶與虛擬IP地址后的多個(gè)服務(wù)器的服務(wù)器場(chǎng)之間的連接下。例如,就網(wǎng)絡(luò)服務(wù)器而言,一種在連接過(guò)程中相對(duì)較早地創(chuàng)建與客戶計(jì)算機(jī)系統(tǒng)的安全連接的方法,可以包括接收來(lái)自遠(yuǎn)程客戶的、與網(wǎng)絡(luò)服務(wù)器上一個(gè)或多個(gè)遠(yuǎn)程服務(wù)器資源進(jìn)行通信的連接請(qǐng)求。一般而言,該連接請(qǐng)求指示了用以啟用該遠(yuǎn)程客戶的多個(gè)安全通信協(xié)議。本方法還包括向該遠(yuǎn)程客戶發(fā)送連接響應(yīng),其中該連接響應(yīng)指示多個(gè)安全通信協(xié)議中的優(yōu)選安全通信協(xié)議。此外,本方法還包括證實(shí)優(yōu)選安全通信協(xié)議的使用以及與遠(yuǎn)程客戶的驗(yàn)證證書(shū)的交換,以及通過(guò)此優(yōu)選安全通信協(xié)議與遠(yuǎn)程客戶的遠(yuǎn)程客戶資源傳遞數(shù)據(jù)。就客戶計(jì)算機(jī)系統(tǒng)而言,一種創(chuàng)建與網(wǎng)絡(luò)服務(wù)器的安全連接的方法可以包括在客戶計(jì)算機(jī)系統(tǒng)處標(biāo)識(shí)多個(gè)安全通信協(xié)議能力。本方法還包括與網(wǎng)絡(luò)服務(wù)器協(xié)商多個(gè)安全通信協(xié)議能力中優(yōu)選的一個(gè)。由此,客戶和網(wǎng)絡(luò)服務(wù)器標(biāo)識(shí)相互優(yōu)選的安全通信協(xié)議。此外,本方法還包括使用該優(yōu)選的安全通信協(xié)議與該網(wǎng)絡(luò)服務(wù)器的遠(yuǎn)程服務(wù)器資源傳遞驗(yàn)證信息,藉此證實(shí)各自的身份。一般而言,客戶可以發(fā)送其自身的驗(yàn)證信息,并且客戶將收到來(lái)自服務(wù)器的驗(yàn)證證書(shū)。服務(wù)器證書(shū)可以包括自簽名證書(shū)、手動(dòng)安裝證書(shū)或從遠(yuǎn)程證書(shū)權(quán)威機(jī)構(gòu)收到的證書(shū)中的一種。本方法還包括用一個(gè)或多個(gè)初始數(shù)據(jù)分組來(lái)證實(shí)網(wǎng)絡(luò)服務(wù)器的身份,而這些數(shù)據(jù)分組是使用該優(yōu)選安全通信協(xié)議來(lái)傳遞的。提供本概述以便以簡(jiǎn)化形式介紹概念的精選,這些概念將在以下的詳細(xì)描述中被進(jìn)一步描述。本概述并不旨在標(biāo)識(shí)要求保護(hù)的主題的關(guān)鍵特征或本質(zhì)特征,也不旨在用于幫助確定要求保護(hù)的主題的范圍。本發(fā)明的額外特征和優(yōu)點(diǎn)將在以下的描述中闡述,并且可從該描述部分地變得顯而易見(jiàn),或者可以在本發(fā)明的實(shí)踐中習(xí)得。各個(gè)特征和優(yōu)點(diǎn)可以通過(guò)在所附權(quán)利要求中特別指出的手段和組合來(lái)實(shí)現(xiàn)和獲知。本發(fā)明的這些和其它特征將從以下描述和所附權(quán)利要求書(shū)中變得更加顯而易見(jiàn),或者可通過(guò)如下所述對(duì)本發(fā)明的實(shí)踐而獲知。為了描述在其中能夠獲得本發(fā)明的前述和其他優(yōu)點(diǎn)和特征的方式,將通過(guò)參考在附圖中示出的其特定實(shí)施例來(lái)呈現(xiàn)以上簡(jiǎn)述的本發(fā)明的更具體描述。應(yīng)該理解這些附圖僅描述了本發(fā)明的典型實(shí)施例,因此不應(yīng)被視為是對(duì)其范圍的限制,通過(guò)使用附圖可以用額外的特征和細(xì)節(jié)來(lái)描述本發(fā)明,在附圖中圖1A示出了根據(jù)本發(fā)明一個(gè)實(shí)現(xiàn)的客戶計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)服務(wù)器之間的安全協(xié)商的總覽示意圖;圖1B示出了根據(jù)本發(fā)明一個(gè)實(shí)現(xiàn)的其中客戶計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)服務(wù)器協(xié)商安全通道并且交換驗(yàn)證信息以最終建立該安全通道的圖1A的示意圖;圖1C示出了根據(jù)本發(fā)明一個(gè)實(shí)現(xiàn)的其中客戶計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)服務(wù)器以證實(shí)它們的安全協(xié)議能力和/或選擇的方式來(lái)交換數(shù)據(jù)的圖1A-1B的示意圖;圖1D示出了根據(jù)本發(fā)明一個(gè)實(shí)現(xiàn)的另一示意圖,其中在圖1A-1C中示出的網(wǎng)絡(luò)服務(wù)器是服務(wù)器場(chǎng)的一部分,并且其中客戶計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)服務(wù)器在失去鏈接之后嘗試重新連接;以及圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)現(xiàn)的在客戶計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)服務(wù)器的角度上用于發(fā)起安全網(wǎng)絡(luò)連接的流程圖。詳細(xì)說(shuō)明本發(fā)明的各個(gè)實(shí)現(xiàn)延及被配置成在安全客戶服務(wù)器通信中建立比以前更安全的憑證信息的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品。更具體地,本發(fā)明的各個(gè)實(shí)現(xiàn)在不要求服務(wù)器分配大量連接資源的情況下提供驗(yàn)證信息的交換。此外,本發(fā)明的各個(gè)實(shí)現(xiàn)還能夠容易地適于允許已丟失安全連接的一致性重建,無(wú)論是在典型的一對(duì)一客戶/服務(wù)器連接下,還是在客戶與虛擬IP地址后的多個(gè)服務(wù)器的服務(wù)器場(chǎng)之間的連接下。因此,如從以下說(shuō)明書(shū)和權(quán)利要求所能更透徹理解的,這些原理的至少一個(gè)優(yōu)點(diǎn)在于遠(yuǎn)程客戶和網(wǎng)絡(luò)服務(wù)器能夠建立安全網(wǎng)絡(luò)連接而不必將客戶或計(jì)算機(jī)置于某類DOS攻擊之下。例如,客戶計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)服務(wù)器能夠在交互登錄連接序列早期交換安全和憑證信息,諸如在最初的多組請(qǐng)求和響應(yīng)消息中,而非在創(chuàng)建連接會(huì)話之后。此外,本發(fā)明的各實(shí)現(xiàn)還提供要在隨后采用經(jīng)協(xié)商的安全通信協(xié)議進(jìn)行通信時(shí)在客戶和服務(wù)器處被證實(shí)的請(qǐng)求和響應(yīng)消息。于是,該客戶和服務(wù)器就能夠避免分配大量資源給不合格的請(qǐng)求實(shí)體,這些請(qǐng)求實(shí)體要么無(wú)法在連接創(chuàng)建早期提供驗(yàn)證信息,要么在連接創(chuàng)建的一個(gè)或多個(gè)證實(shí)階段中失敗。例如,圖1A示出了根據(jù)本發(fā)明一個(gè)實(shí)現(xiàn)的在客戶計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)服務(wù)器之間的安全協(xié)商的總覽示意圖。如圖所示,客戶IOO包括遠(yuǎn)程客戶應(yīng)用程序105。一般而言,遠(yuǎn)程客戶應(yīng)用程序(本文中也稱為"遠(yuǎn)程資源"或"遠(yuǎn)程客戶資源")是能夠連接至另一遠(yuǎn)程應(yīng)用程序或相關(guān)組件(例如,遠(yuǎn)程服務(wù)器應(yīng)用程序140)并能夠共享數(shù)據(jù)的應(yīng)用程序或相關(guān)組件。例如,在一個(gè)實(shí)現(xiàn)中,遠(yuǎn)程客戶應(yīng)用程序105是使用遠(yuǎn)程桌面協(xié)議(RDP)在建立安全連接會(huì)話之后最終與網(wǎng)絡(luò)服務(wù)器的MICROSOFTTERMINALSERVICES(微軟終端服務(wù))應(yīng)用程序相連接的MICROSOFTTERMINALSERVICES客戶。在此情況下,遠(yuǎn)程客戶資源可以訪問(wèn)服務(wù)器資源以提供某些應(yīng)用程序功能(例如,文字處理、電子數(shù)據(jù)表等),該功能在隨后會(huì)顯示在客戶計(jì)算機(jī)系統(tǒng)100的顯示屏(未示出)上。圖1A還示出了遠(yuǎn)程客戶應(yīng)用程序105與安全選項(xiàng)組件120以及與憑證管理器109和證書(shū)存儲(chǔ)110之間的通信,而這將在下文中更為詳細(xì)地討論。一般而言,安全選項(xiàng)組件120是在客戶計(jì)算機(jī)系統(tǒng)100處啟用(例如,安裝的、活動(dòng)的)的所有安全通信協(xié)議的列表(例如,系統(tǒng)配置表)。安全通信協(xié)議的這一列表可以包括任何數(shù)量的已知和可用的協(xié)議。然而,圖1A示出的客戶機(jī)100處的安全選項(xiàng)120例如可以包括安全套接字層("SSL")組件130禾卩"Cred-SSP"("證書(shū)安全服務(wù)提供者",也被稱為"證書(shū)安全支持提供者")組件135。Cred-SSP組件135是將其他安全通信協(xié)議的各方面(諸如SSL、WINDOWSNTLANMANAGER("NTLM")和Kerberos)捆綁在一起的相對(duì)較新的WINDOWS(視窗)安全服務(wù)提供者("SSP")。雖然未示出,但是客戶IOO也可以被配置成使用傳統(tǒng)的RDP安全基礎(chǔ)結(jié)構(gòu)。作為解釋,雖然將組件125、130和135示為已知用于微軟操作系統(tǒng)環(huán)境的安全通信協(xié)議(或基礎(chǔ)結(jié)構(gòu)一例如,傳統(tǒng)的RDP),但是應(yīng)該理解在此描述中概述的原理不限于特定類型的安全通信協(xié)議,也不限于特定的操作系統(tǒng)環(huán)境或應(yīng)用程序。也就是說(shuō),本文描述的原理可以容易地應(yīng)用于其他的相關(guān)安全客戶/服務(wù)器或共享應(yīng)用程序以及相應(yīng)的通信協(xié)議,并且能夠在任何其他的操作系統(tǒng)環(huán)境中輕松實(shí)現(xiàn)。因此,對(duì)微軟操作環(huán)境中常用名稱的具體列舉主要是為了描述方便。無(wú)論如何,圖1A還示出了遠(yuǎn)程客戶應(yīng)用程序105能夠通過(guò)驗(yàn)證界面103來(lái)接收客戶憑證(例如,用戶名和口令107)。例如,當(dāng)從某些用戶輸入收到初始化遠(yuǎn)程客戶應(yīng)用程序105的請(qǐng)求時(shí),或當(dāng)諸如在計(jì)算機(jī)啟動(dòng)期間收到一般登陸請(qǐng)求時(shí),客戶IOO就向用戶呈現(xiàn)驗(yàn)證界面103。驗(yàn)證界面103要求用戶出示諸如用戶名和口令、智能卡或某些其他驗(yàn)證信息。由用戶提供的這些和其他客戶驗(yàn)證信息隨后被存儲(chǔ)在例如憑證管理器109中。其他類型的客戶驗(yàn)證信息可以包括諸如智能卡和個(gè)人身份號(hào)碼("PIN")l11。在某些情況下,客戶IOO還具有客戶證書(shū)113形式的存儲(chǔ)在客戶證書(shū)存儲(chǔ)110中的驗(yàn)證信息。然而更典型地,作為驗(yàn)證對(duì)象的證書(shū)可由服務(wù)器150使用,如下文更完整的討論。一般而言,存在有多種不同種類的安全證書(shū),這些安全證書(shū)可以從某些形式的輸入中創(chuàng)建,存儲(chǔ)在證書(shū)存儲(chǔ)中,并最終用于標(biāo)識(shí)用戶或計(jì)算機(jī)系統(tǒng)。在某些情況下,證書(shū)可以只是提供加密密鑰的占位符。然而,某些類型的證書(shū)包括"自簽名的證書(shū)",這是由創(chuàng)建者簽名的基本數(shù)字簽名,但沒(méi)有必要由第三方背書(shū)。其他類型的證書(shū)包括手動(dòng)安裝的證書(shū),諸如其中用戶訪問(wèn)服務(wù)器并手動(dòng)安裝用戶可能已經(jīng)創(chuàng)建的優(yōu)選證書(shū)。其他類型的證書(shū)包括用戶通過(guò)第三方證書(shū)服務(wù)器背書(shū)基礎(chǔ)結(jié)構(gòu)接收的證書(shū),諸如已由認(rèn)可的驗(yàn)證方背書(shū)的數(shù)字簽名。無(wú)論如何,這些證書(shū)類型的任何或全部都可以在任意給定時(shí)刻存儲(chǔ)在證書(shū)存儲(chǔ)110(或存儲(chǔ)155)內(nèi)。然而,圖1A示出了證書(shū)存儲(chǔ)110持有證書(shū)113,并且如下文更完整的描述,證書(shū)存儲(chǔ)110最終將持有從服務(wù)器150發(fā)送的服務(wù)器證書(shū)117(例如,圖1B-1C)。當(dāng)在遠(yuǎn)程客戶應(yīng)用程序105處的用戶想要發(fā)起與服務(wù)器150的安全交互登錄連接時(shí),客戶應(yīng)用程序105首先執(zhí)行內(nèi)部安全檢測(cè)。例如,客戶應(yīng)用程序105可以標(biāo)識(shí)安全選項(xiàng)組件120內(nèi)的每個(gè)已啟用的可用安全通信協(xié)議??蛻魬?yīng)用程序105隨后能夠標(biāo)識(shí)至少存在組件125、130和135,這些組件各自在安全網(wǎng)絡(luò)通信中使用。客戶應(yīng)用程序105還檢測(cè)其在某些情況下會(huì)優(yōu)選使用的現(xiàn)有的安全基礎(chǔ)結(jié)構(gòu),諸如傳統(tǒng)的RDP基礎(chǔ)結(jié)構(gòu)。遠(yuǎn)程客戶應(yīng)用程序105隨后準(zhǔn)備連接請(qǐng)求消息137,該消息指示所標(biāo)識(shí)的不同安全通信協(xié)議(即,125、130、135等)或相關(guān)安全基礎(chǔ)結(jié)構(gòu)的每一個(gè)。值得注意的是,連接請(qǐng)求消息137可以是不請(qǐng)求對(duì)特定資源進(jìn)行訪問(wèn)(諸如通常在交換登錄中進(jìn)行)的一般連接請(qǐng)求。然而人們將會(huì)認(rèn)識(shí)到,本發(fā)明的原理也可應(yīng)用于指向服務(wù)器150的特定資源的登錄連接請(qǐng)求。然而,連接請(qǐng)求137在至少一個(gè)實(shí)現(xiàn)中可以是"X224"連接請(qǐng)求消息,它可被擴(kuò)展成包括所標(biāo)識(shí)的不同安全通信協(xié)議(即,"客戶能力")。遠(yuǎn)程客戶應(yīng)用程序105隨后經(jīng)網(wǎng)絡(luò)發(fā)送連接請(qǐng)求137,并最終到達(dá)遠(yuǎn)程服務(wù)器應(yīng)用程序140。在可選實(shí)現(xiàn)中,客戶100不準(zhǔn)備X224連接請(qǐng)求消息,而是使用SSL向服務(wù)器端的Cred-SSP175直接發(fā)送消息137。服務(wù)器150隨后在最初的一個(gè)或多個(gè)消息137的分組中標(biāo)識(shí)SSL和Cred-SSP指示。在某些情況下,這允許客戶100和服務(wù)器150更快地完成安全協(xié)商階段,而沒(méi)有原本與創(chuàng)建X224連接請(qǐng)求和響應(yīng)消息相關(guān)聯(lián)的某些開(kāi)銷。無(wú)論如何,假設(shè)使用X224或其他相關(guān)方法發(fā)送消息137,遠(yuǎn)程服務(wù)器應(yīng)用程序140就接收并處理消息137。服務(wù)器150隨后標(biāo)識(shí)由客戶IOO提出的安全通信能力,并且確定對(duì)安全通信協(xié)議(或安全基礎(chǔ)結(jié)構(gòu))的適當(dāng)選擇。例如,圖1A示出了服務(wù)器150經(jīng)由應(yīng)用程序140的判定模塊145標(biāo)識(shí)服務(wù)器150也啟用了SSL組件170和/或Cred-SSP組件175中的任一個(gè)。雖然未示出,但是服務(wù)器150還可以啟用傳統(tǒng)的RDP安全基礎(chǔ)結(jié)構(gòu)。在一個(gè)實(shí)現(xiàn)中,判定模塊145通過(guò)查看在某些方面與客戶端組件120相類似的服務(wù)器端安全選項(xiàng)組件(例如,組件160)來(lái)確定使用具體的安全通信協(xié)議。當(dāng)然,服務(wù)器150可以啟用比客戶100呈現(xiàn)的更多或更少的安全通信協(xié)議。在此情況下,判定模塊145可以標(biāo)識(shí)與客戶IOO共用的那些通信協(xié)議,并且挑選出優(yōu)選的通信協(xié)議(或基礎(chǔ)結(jié)構(gòu))。判定模塊145可以基于任何數(shù)量的因素來(lái)做出該判定,這些因素包括但不限于系統(tǒng)設(shè)置、網(wǎng)絡(luò)管理員或其他用戶的偏好和/或其他網(wǎng)絡(luò)條件。然而,圖1A示出了遠(yuǎn)程服務(wù)器應(yīng)用程序140決定使用Cred-SSP安全通信協(xié)議139來(lái)通信。更具體地,圖1A示出了遠(yuǎn)程服務(wù)器應(yīng)用程序140準(zhǔn)備連接響應(yīng)信息139,該消息包括服務(wù)器150想要使用Cred-SSP(在客戶100和服務(wù)器150處分別為組件135和137)進(jìn)行通信的指示。在一個(gè)實(shí)現(xiàn)中(例如,消息137是X224連接消息),連接響應(yīng)消息139也是X224格式的連接響應(yīng)消息。服務(wù)器150隨后發(fā)送消息139給客戶100,而客戶100的接收則完成所請(qǐng)求連接的初始安全協(xié)商階段。如果消息B9不包含優(yōu)選安全通信協(xié)議的指示,則客戶IOO可以標(biāo)識(shí)服務(wù)器150是無(wú)法執(zhí)行前述的安全協(xié)商階段的老式服務(wù)器。在此情況下,客戶100可以簡(jiǎn)單地?cái)嗟暨B接,提示用戶進(jìn)行附加動(dòng)作,或者調(diào)整到服務(wù)器150可能理解的默認(rèn)安全通信協(xié)議。如同其他判定一樣,這些默認(rèn)設(shè)置可以基于用戶、網(wǎng)絡(luò)管理員或其他系統(tǒng)范圍內(nèi)的默認(rèn)設(shè)置中的任一個(gè)。在一個(gè)實(shí)現(xiàn)中,在沒(méi)有安全通信協(xié)議偏好的指示的情況下接收連接響應(yīng)消息139會(huì)使得遠(yuǎn)程客戶應(yīng)用程序105默認(rèn)RDP通信協(xié)議。在完成前述的安全協(xié)商階段之后,圖1B示出了客戶計(jì)算機(jī)系統(tǒng)100和服務(wù)器150能夠建立安全通信通道。在這一特定情況下,客戶100和服務(wù)器150使用它們各自通信堆棧的安全層中的"Cred-SSP"組件來(lái)初始化安全通信通道,以彼此通話。這意味著客戶100處的Cred-SSP組件135可以與服務(wù)器150處的Cred-SSP組件175通信(例如,如圖1B中虛線雙向箭頭所指示的)。例如,圖1B示出了遠(yuǎn)程客戶應(yīng)用程序105準(zhǔn)備將要發(fā)送到遠(yuǎn)程服務(wù)器資源,即遠(yuǎn)程服務(wù)器應(yīng)用程序140的消息167。在此情況下,消息167包括待使用的一個(gè)或多個(gè)安全通道建議(例如,通道136)。服務(wù)器100隨后查看消息167并確定要使用哪條提議通道。服務(wù)器IOO隨后發(fā)送證實(shí)消息169,該消息證實(shí)由客戶IOO建議的通道之一(例如,通道136)的使用。客戶IOO和服務(wù)器150還可以交換驗(yàn)證信息以結(jié)束對(duì)協(xié)商的安全通道(例如,在此情況下的通道163)的建立。例如,圖1B示出了客戶IOO還發(fā)送客戶驗(yàn)證消息168(與消息167同時(shí),或稍后)至服務(wù)器150,而服務(wù)器150則回復(fù)服務(wù)器驗(yàn)證信息171??蛻趄?yàn)證信息可以包括各類驗(yàn)證機(jī)制,諸如用戶名和口令107、智能卡和PINlll、以及在某些情況下甚至可以是客戶證書(shū)113。作為對(duì)比,服務(wù)器驗(yàn)證信息171可以包括各類驗(yàn)證機(jī)制,諸如特別選擇的服務(wù)器證書(shū)以及Kereros賬戶憑證和/或權(quán)證。在服務(wù)器150,判定模塊145可以判定要使用哪一個(gè)可用的服務(wù)器證書(shū)。在一個(gè)實(shí)現(xiàn)中,判定模塊145被配置成優(yōu)選服務(wù)器管理員選擇的證書(shū),隨后進(jìn)行核對(duì)以查看服務(wù)器150系統(tǒng)設(shè)置是1否指示了證書(shū)偏好。如果服務(wù)器管理員和服務(wù)器150都沒(méi)有指示證書(shū)偏好,判定模塊145隨后使服務(wù)器145為消息171自動(dòng)生成自簽名的證書(shū)。無(wú)論如何,遠(yuǎn)程服務(wù)器應(yīng)用程序145準(zhǔn)備消息171,而選定的安全組件(即,Cred-SSP175)能夠?qū)⑺_定的服務(wù)器證書(shū)插入到消息171中。服務(wù)器150隨后通過(guò)經(jīng)協(xié)商的安全通道(例如,163)發(fā)送消息171,并將服務(wù)器證書(shū)117的拷貝放置在客戶端的證書(shū)存儲(chǔ)110中。人們將會(huì)認(rèn)識(shí)到可能存在有在其中由客戶或由服務(wù)器發(fā)送的驗(yàn)證被接收方拒絕的事件。被拒絕的原因很多,包括接收方判定為無(wú)效、驗(yàn)證上的時(shí)間戳過(guò)期、標(biāo)識(shí)信息與初始連接建立消息137和139提供的信息不一致等。在這些情況下,由相應(yīng)的接收應(yīng)用程序(例如,分別為105、140)使用的安全組件(例如,Cred-SSP135、175)可被配置成基于拒絕的原因執(zhí)行一特定的動(dòng)作。例如,判定模塊115或判定模塊145可以咨詢其配置設(shè)置,并請(qǐng)求新的證書(shū),斷掉連接,提示用戶進(jìn)行附加動(dòng)作等。在某些情況下,合適的動(dòng)作會(huì)取決于默認(rèn)的系統(tǒng)設(shè)置或取決于用戶偏好,這指示了各應(yīng)用程序被配置如何處理這類問(wèn)題。無(wú)論如何,一旦客戶IOO和服務(wù)器150完成安全通道建立(即,協(xié)商安全通道;發(fā)送、接收和接受驗(yàn)證),客戶100和服務(wù)器150就能夠建立用戶連接會(huì)話,并開(kāi)始發(fā)送數(shù)據(jù)分組(例如,圖1C)。結(jié)果,圖1A和1B示出了客戶IOO和服務(wù)器150在建立給定的用戶連接會(huì)話之前彼此進(jìn)行驗(yàn)證。這種早期驗(yàn)證能夠提供多方面優(yōu)點(diǎn),其中至少部分優(yōu)點(diǎn)可用來(lái)減輕DOS攻擊。例如,如果從一客戶接收的初始連接請(qǐng)求消息組(例如,137、167和168)不包括適當(dāng)?shù)目蛻趄?yàn)證信息,或者對(duì)客戶安全能力的指示,服務(wù)器150就可被配置成簡(jiǎn)單地丟棄該連接請(qǐng)求,由此避免耗費(fèi)任何連接處理開(kāi)銷。除了這些初始連接請(qǐng)求之外,響應(yīng)于建立安全通道,圖1C示出了客戶100和服務(wù)器150能夠發(fā)送增加系統(tǒng)安全能力的附加消息。例如,客戶100和服務(wù)器150可以證實(shí)安全協(xié)議中的選擇,并進(jìn)一步在用戶連接會(huì)話期間交換數(shù)據(jù)分組的最初各組時(shí)彼此驗(yàn)證。更具體地,圖1C示出了客戶應(yīng)用程序105準(zhǔn)備消息177,該消息包括根據(jù)遠(yuǎn)程應(yīng)用協(xié)議(例如,RDP)格式化的數(shù)據(jù),以及哪個(gè)客戶100想要被遠(yuǎn)程服務(wù)器應(yīng)用程序140處理。圖1C還示出了消息177可以包括附加其上的消息137和/或139中的任一個(gè),該消息證實(shí)在初始驗(yàn)證中選定的安全協(xié)議實(shí)際上就是客戶和服務(wù)器想要選擇的協(xié)議,并沒(méi)有受到另一方的篡改。當(dāng)接收到消息177時(shí),遠(yuǎn)程服務(wù)器應(yīng)用程序140就開(kāi)始處理相應(yīng)的數(shù)據(jù)。然而在某些實(shí)現(xiàn)中,遠(yuǎn)程服務(wù)器應(yīng)用程序140直到證實(shí)了有附加消息與服務(wù)器150所期望的相匹配才開(kāi)始處理消息177的數(shù)據(jù)。然而,圖1C示出了當(dāng)處理消息177時(shí),遠(yuǎn)程服務(wù)器應(yīng)用程序140準(zhǔn)備響應(yīng)消息179,該消息也被格式化為遠(yuǎn)程應(yīng)用協(xié)議(例如,RDP)數(shù)據(jù)分組。此外,圖1C示出了消息179可以類似地包括附至其上的消息137和/或139中的任一個(gè),作為在協(xié)商安全協(xié)議時(shí)證實(shí)由服務(wù)器150提出的能力的方法。服務(wù)器150隨后向客戶100發(fā)送消息179。一旦接收,遠(yuǎn)程客戶應(yīng)用程序105就處理消息179中所包含的數(shù)據(jù)。然而,在可選實(shí)現(xiàn)中并且如上所述,遠(yuǎn)程客戶應(yīng)用程序105可以在處理數(shù)據(jù)之前首先核對(duì)包含在消息179內(nèi)的信息(例如,附加消息或其他)就是客戶100期望的信息。如果期望信息丟失,客戶100就斷掉該連接,提示用戶進(jìn)行額外動(dòng)作和/或發(fā)送新的連接請(qǐng)求。類似地,如果包括在消息179內(nèi)的信息與所期望的在某些方面不同,則客戶IOO可以斷掉該連接,請(qǐng)求來(lái)自服務(wù)器的校正或者簡(jiǎn)單地開(kāi)始發(fā)出新的連接請(qǐng)求(例如,圖1A)。假設(shè)客戶IOO和服務(wù)器150已適當(dāng)協(xié)商并建立起一安全通信通道,證實(shí)了所協(xié)商的協(xié)議,并且證實(shí)它們各自的身份,那么相應(yīng)的應(yīng)用程序105和140就能夠使用選定的安全通信協(xié)議繼續(xù)通信。例如,客戶100的應(yīng)用程序105可以接收、格式化(例如,RDP)并發(fā)送諸如鼠標(biāo)或鍵盤命令的用戶選擇事件,而遠(yuǎn)程服務(wù)器應(yīng)用程序140能夠處理這些事件并且經(jīng)由安全通道163向客戶100發(fā)送相應(yīng)的響應(yīng)數(shù)據(jù)。這一通信可以長(zhǎng)期進(jìn)行,或者直到任一方有意或無(wú)意地關(guān)閉通道163。因此,下表簡(jiǎn)要概述了諸如上文所述的這一初始建立過(guò)程的實(shí)現(xiàn)。<table>tableseeoriginaldocumentpage15</column></row><table><table>tableseeoriginaldocumentpage16</column></row><table>在本發(fā)明的一個(gè)實(shí)現(xiàn)中,客戶IOO還可以在無(wú)需就憑證或其他驗(yàn)證信息再次提示用戶的情況下重新啟動(dòng)用戶連接會(huì)話。更具體地,就客戶ioo在連接斷掉之后重新啟動(dòng)該連接(諸如,經(jīng)由自動(dòng)或手動(dòng)重新連接)而言,客戶100可以簡(jiǎn)單地提交重申其在前有效連接上下文(即,用戶憑證上下文或句柄)的重新連接請(qǐng)求。一般而言,連接上下文(例如,圖1D中的111)包括客戶連接設(shè)置信息,諸如先前中繼給服務(wù)器150的客戶驗(yàn)證信息(例如,168)、以及在安全通信協(xié)議中的選擇和允許客戶和服務(wù)器方便地彼此標(biāo)識(shí)的任何其他適當(dāng)?shù)脑O(shè)置。如上所述,這些設(shè)置通常包括用戶名和口令、和/或智能卡和PIN驗(yàn)證組件。于是,當(dāng)連接丟失且該連接的上下文仍然有效(即,沒(méi)有過(guò)期或變更)時(shí),客戶100可以在無(wú)需就驗(yàn)證信息提示用戶的情況下向服務(wù)器150重新提交其連接上下文,并且在客戶100和服務(wù)器150斷掉該連接的那一點(diǎn)通過(guò)協(xié)商通道163繼續(xù)通信。然而,類似剛才描述的重新連接在有服務(wù)器場(chǎng)的情況下可能更為復(fù)雜,諸如被配置成用于負(fù)載平衡目的而在單個(gè)IP地址之后的一組服務(wù)器。例如,如圖1D所示,對(duì)于遠(yuǎn)程客戶計(jì)算機(jī),可以經(jīng)由相同的IP地址,即虛擬IP地址190("VIP190")對(duì)服務(wù)器148、149、150和151的服務(wù)器場(chǎng)180進(jìn)行尋址。至。一般而言,VIP是由另一邊緣服務(wù)器,甚至由服務(wù)器場(chǎng)180內(nèi)每個(gè)服務(wù)器的配置提供服務(wù)。作為替代,服務(wù)器場(chǎng)180中的每個(gè)服務(wù)器都被配置為處理同一VIP的不同方面,并且還中繼并路由分組至服務(wù)器場(chǎng)中的其他服務(wù)器。盡管如此,雖然所有的服務(wù)器可以通過(guò)VIP共享一部分連接負(fù)載,但是在給定時(shí)刻只有一個(gè)服務(wù)器能夠處理與另一臺(tái)計(jì)算機(jī)(例如,客戶ioo)的特定會(huì)話。為了確保對(duì)連接責(zé)任的知曉被適當(dāng)處理,圖1D示出了每個(gè)服務(wù)器148、149、150和151具有對(duì)應(yīng)的"會(huì)話目錄代理"183、185、187和189,用來(lái)跟蹤在安裝了對(duì)應(yīng)的會(huì)話目錄代理的相應(yīng)服務(wù)器上的連接會(huì)話。例如,處理給定連接的服務(wù)器具有基于用于連接客戶(例如,有關(guān)上述客戶100)的給定連接上下文(包括用戶驗(yàn)證信息)的一個(gè)或多個(gè)連接會(huì)話。服務(wù)器經(jīng)由相應(yīng)的會(huì)話目錄代理以及中央會(huì)話目錄代理服務(wù)器153也將具有由服務(wù)器場(chǎng)(例如在VIP190后的服務(wù)器場(chǎng)180)內(nèi)其他服務(wù)器所服務(wù)的所有會(huì)話位置的目錄列表。也就是說(shuō),通常沒(méi)有一個(gè)服務(wù)器能具有通過(guò)服務(wù)器場(chǎng)服務(wù)的所有連接的所有用戶會(huì)話,但是能夠成功地把其不具有合適信息的連接(即,與給定客戶上下文相對(duì)應(yīng)的會(huì)話)引向該場(chǎng)內(nèi)的確具有該信息的服務(wù)器。于是,例如圖1D示出了客戶IOO在諸如客戶IOO或服務(wù)器150無(wú)意間斷開(kāi)連接之后的某一點(diǎn)處準(zhǔn)備重新連接消息193,并通過(guò)VIP190發(fā)送該消息。圖1D還示出了消息193包括諸如包括服務(wù)器150的名稱和/或網(wǎng)絡(luò)地址的cookie的在前連接信息、和/或某些用戶信息。一般而言,VIP管理基礎(chǔ)結(jié)構(gòu)(例如,經(jīng)由服務(wù)器153)能夠識(shí)別所包含的在前連接信息,因此能夠?qū)⑾?93準(zhǔn)確路由至服務(wù)器150。服務(wù)器150隨后建立與客戶100的安全通道,經(jīng)由會(huì)話目錄代理187(或會(huì)話目錄服務(wù)器153)證實(shí)它正對(duì)與有關(guān)在前連接的連接上下文lll提供服務(wù),并在隨后重建在前連接會(huì)話。在自動(dòng)重新連接沒(méi)有發(fā)生的情況下,該過(guò)程會(huì)因?yàn)橹匦逻B接消息193可能不包括足夠的服務(wù)器標(biāo)識(shí)信息而略有不同。于是,例如重新連接消息193可以首先到達(dá)服務(wù)器148,該服務(wù)器在此情況下沒(méi)有服務(wù)于在前連接。然而,當(dāng)建立安全通道之后,服務(wù)器148通過(guò)會(huì)話目錄代理183或者通過(guò)參考會(huì)話目錄服務(wù)器153可以對(duì)消息193進(jìn)行充分處理,從而確定服務(wù)器148不具有合適的信息以使用會(huì)話191來(lái)進(jìn)行連接。也就是說(shuō),服務(wù)器148不能識(shí)別消息193中的用戶或服務(wù)器的身份,或者標(biāo)識(shí)為它不具有關(guān)于在前連接的連接上下文。17在這樣的處理中,會(huì)話目錄代理183與會(huì)話目錄服務(wù)器153通信,并且向服務(wù)器148指示服務(wù)器150具有關(guān)于該用戶會(huì)話的記錄(即,經(jīng)由上下文111)。于是,服務(wù)器148準(zhǔn)備響應(yīng)消息195,該消息指示該連接不可用,并且還指示該連接可由服務(wù)器150處理??蛻鬒OO隨后接收并處理消息195,并在隨后準(zhǔn)備新的重新連接消息197。再一次,客戶100附加在前連接信息,而這一次則表明使用服務(wù)器150(例如,服務(wù)器名和/或網(wǎng)絡(luò)地址等)。因此,如圖1D所示,重新連接請(qǐng)求消息197通過(guò)VIP190適當(dāng)路由至服務(wù)器150。例如,與因特網(wǎng)和服務(wù)器場(chǎng)180進(jìn)行接口的邊緣服務(wù)器標(biāo)識(shí)對(duì)服務(wù)器150的經(jīng)修改的請(qǐng)求,并將連接請(qǐng)求消息197轉(zhuǎn)發(fā)給服務(wù)器150。當(dāng)服務(wù)器150收到連接請(qǐng)求197時(shí),服務(wù)器150開(kāi)始處理該消息,以了解會(huì)話目錄代理187是否具有有關(guān)連接上下文111的記錄。因?yàn)闀?huì)話目錄代理187具有有關(guān)上下文lll的記錄,所以服務(wù)器150用合適的重新連接消息(即,消息199)做出響應(yīng)。這一簡(jiǎn)明的交換序列在客戶IOO和服務(wù)器150之間重建了先前協(xié)商的通信通道163,并且允許客戶和服務(wù)器如同之前一樣進(jìn)行通信,而無(wú)需重新分配資源來(lái)初始化新的連接會(huì)話。因此,圖1A至1D提供了用于在創(chuàng)建安全連接的相對(duì)早期驗(yàn)證連接序列的多個(gè)圖示和組件。更具體地,圖1A至1D示出了如何在安全連接請(qǐng)求的最先幾個(gè)數(shù)據(jù)分組中建立安全連接,并以此方式提供客戶和服務(wù)器之間的多層證實(shí)。這樣,客戶和服務(wù)器兩者就都能避免將寶貴的資源耗費(fèi)在原本會(huì)導(dǎo)致成功的DOS攻擊的偽造連接上。本發(fā)明的各個(gè)實(shí)現(xiàn)還可以被描述成在一種用于實(shí)現(xiàn)期望結(jié)果的方法中的動(dòng)作(和/或包括一個(gè)或多個(gè)非功能性動(dòng)作的功能性步驟)序列。例如,圖2分別示出了在客戶100和服務(wù)器150的角度上用來(lái)初始安全連接的方法中各動(dòng)作的流程圖。如下將參考圖1A-1D所示的示圖描述圖2中示出的動(dòng)作。例如,圖2示出一種在客戶IOO的角度上的方法,包括標(biāo)識(shí)多個(gè)安全通信協(xié)議的動(dòng)作200。動(dòng)作200包括在客戶計(jì)算機(jī)系統(tǒng)處標(biāo)識(shí)多個(gè)安全通信協(xié)議能力。例如,如圖1A所示,遠(yuǎn)程客戶應(yīng)用程序105經(jīng)由判定模塊115標(biāo)識(shí)組件125、130和135是在客戶IOO處啟用的有效的安全通信協(xié)議。此外,圖2示出在客戶100的角度上該方法包括與網(wǎng)絡(luò)服務(wù)器協(xié)商優(yōu)選安全通信協(xié)議的動(dòng)作210。動(dòng)作210包括與網(wǎng)絡(luò)服務(wù)器協(xié)商多個(gè)安全通信協(xié)議能力中優(yōu)選的一個(gè),從而標(biāo)識(shí)相互優(yōu)選的安全通信協(xié)議。例如,客戶應(yīng)用程序105執(zhí)行準(zhǔn)備并發(fā)送消息137給服務(wù)器150的動(dòng)作,其中消息137包括對(duì)安全連接的請(qǐng)求,并且還指示了協(xié)議125、130和135可用于該連接。由此,圖2示出在服務(wù)器150的角度上該方法包括接收標(biāo)識(shí)了安全能力的連接請(qǐng)求的動(dòng)作220。動(dòng)作220包括從遠(yuǎn)程客戶接收與網(wǎng)絡(luò)服務(wù)器處一個(gè)或多個(gè)遠(yuǎn)程服務(wù)器資源通信的連接請(qǐng)求,該連接請(qǐng)求指示遠(yuǎn)程客戶啟用的多個(gè)安全通信協(xié)議。例如,如圖1A所示,服務(wù)器應(yīng)用程序140接收消息137,并且在處理時(shí)標(biāo)識(shí)客戶100啟用了"SSL"和/或"Cred-SSP"通信機(jī)制中的任一種。此外,圖2示出在服務(wù)器150的角度上該方法包括發(fā)送指示了優(yōu)選安全通信協(xié)議的連接響應(yīng)的動(dòng)作230。動(dòng)作230包括發(fā)送連接響應(yīng)給該遠(yuǎn)程客戶,該連接響應(yīng)指示多個(gè)安全通信協(xié)議中的優(yōu)選安全通信協(xié)議。例如,如圖1A所示,服務(wù)器應(yīng)用程序140判定它具有與客戶100中所指示的相同的啟用安全選項(xiàng)。服務(wù)器應(yīng)用程序140于是基于任何數(shù)量的偏好或系統(tǒng)設(shè)置來(lái)確定優(yōu)選的安全通信協(xié)議,在此情況下是來(lái)自組的"Cred-SSP"175。服務(wù)器應(yīng)用程序140隨后準(zhǔn)備并發(fā)送連接響應(yīng)消息139給客戶100,其中消息139指示了使用Cred-SSP的偏好。在一個(gè)實(shí)現(xiàn)中,這樣就完成了由客戶在動(dòng)作210中開(kāi)始的安全協(xié)商的初始階段。因此,圖2示出在客戶100的角度上該方法包括與遠(yuǎn)程服務(wù)器資源交換驗(yàn)證證書(shū)的動(dòng)作240。動(dòng)作240包括使用優(yōu)選的安全通信協(xié)議與該網(wǎng)絡(luò)服務(wù)器的遠(yuǎn)程服務(wù)器資源交換驗(yàn)證信息,其中該服務(wù)器驗(yàn)證信息包括自簽名證書(shū)、手動(dòng)安裝證書(shū)或接收自遠(yuǎn)程證書(shū)權(quán)威機(jī)構(gòu)的證書(shū)中的任一種。例如,如圖1B所示,遠(yuǎn)程客戶應(yīng)用程序105標(biāo)識(shí)一個(gè)或多個(gè)合適的客戶驗(yàn)證信息組件(例如,用戶名和口令107、智能卡和PINlll、或證書(shū)存儲(chǔ)110中的客戶證書(shū)113),并且將選定的驗(yàn)證信息經(jīng)由消息137發(fā)送給遠(yuǎn)程服務(wù)器應(yīng)用程序140。作為響應(yīng),遠(yuǎn)程服務(wù)器應(yīng)用程序經(jīng)由消息171接收來(lái)自服務(wù)器150的服務(wù)器證書(shū)117。圖2還示出在服務(wù)器150的角度上該方法還包括證實(shí)該優(yōu)選安全通信協(xié)議的使用的動(dòng)作250。動(dòng)作250包括通過(guò)與遠(yuǎn)程客戶計(jì)算機(jī)系統(tǒng)交換初始數(shù)據(jù)分組來(lái)證實(shí)對(duì)優(yōu)選安全通信協(xié)議的使用。例如,圖1C示出了當(dāng)服務(wù)器應(yīng)用程序140發(fā)送消息179時(shí),服務(wù)器150還諸如通過(guò)包括在前發(fā)送的消息137和139的副本來(lái)向客戶100附加證實(shí)消息,或者重申先前在消息139中聲明的設(shè)置。此外,圖2示出在客戶150的角度上該方法包括與遠(yuǎn)程客戶資源傳遞數(shù)據(jù)的動(dòng)作260。動(dòng)作260包括通過(guò)優(yōu)選的安全通信協(xié)議與遠(yuǎn)程客戶的遠(yuǎn)程客戶資源傳遞數(shù)據(jù)。例如,如圖1C所示,服務(wù)器應(yīng)用程序140在經(jīng)協(xié)商的通信通道163上接收消息177(例如,RDP數(shù)據(jù)分組),并且發(fā)送消息179(例如,響應(yīng)于消息177的RDP數(shù)據(jù)分組)或者到遠(yuǎn)程客戶應(yīng)用程序105的任何其他數(shù)據(jù)通信。這樣,圖2示出在服務(wù)器100的角度上該方法還包括證實(shí)該優(yōu)選安全通信協(xié)議的使用的動(dòng)作270。動(dòng)作270包括用一個(gè)或多個(gè)初始數(shù)據(jù)分組證實(shí)網(wǎng)絡(luò)服務(wù)器的身份。例如,遠(yuǎn)程客戶應(yīng)用程序經(jīng)遠(yuǎn)程應(yīng)用協(xié)議接收消息179(例如,使用RDP準(zhǔn)備的消息),其中消息179包括來(lái)自服務(wù)器150的某些期望信息,諸如在前發(fā)送的消息137和/或139的副本。因此,消息179就向客戶100證實(shí)了對(duì)經(jīng)同意的所選安全通信協(xié)議的使用。因此,各示意圖和本文描述的方法提供了多種組件和機(jī)制,用來(lái)創(chuàng)建安全通信通道和連接會(huì)話,并用來(lái)在連接過(guò)程的早期驗(yàn)證這些安全通信通道和會(huì)話。更具體地,相比先前可用技術(shù),本發(fā)明的各個(gè)實(shí)現(xiàn)能夠在交互登錄和遠(yuǎn)程資源通信中提供更高級(jí)別的安全。例如,客戶和服務(wù)器可以在連接過(guò)程早期彼此驗(yàn)證,這樣就避免了將連接會(huì)話分配給那些未在期望時(shí)刻提供這種驗(yàn)證信息的請(qǐng)求。此外,客戶和服務(wù)器還可以在連接序列中的任意數(shù)量的點(diǎn)處附加先前發(fā)送的消息和/或設(shè)置,從而提供對(duì)客戶和/或服務(wù)器各自身份的額外擔(dān)保。本發(fā)明的實(shí)施例可以包括含有各種計(jì)算機(jī)硬件的專用或通用計(jì)算機(jī),如下文更詳細(xì)描述。更具體地,本發(fā)明的范圍內(nèi)的實(shí)施例還包括用于承載或具有儲(chǔ)存其上的計(jì)算機(jī)可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)的計(jì)算機(jī)可讀介質(zhì)。這類計(jì)算機(jī)可讀介質(zhì)可以是可由通用或?qū)S糜?jì)算機(jī)系統(tǒng)訪問(wèn)的任何可用介質(zhì)。作為示例而非限制,這類計(jì)算機(jī)可讀介質(zhì)可包括RAM、ROM、EEPROM、CD-ROM或其它光盤存儲(chǔ)、磁盤存儲(chǔ)或其它磁存儲(chǔ)設(shè)備、或可用來(lái)以計(jì)算機(jī)可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)的形式承載或當(dāng)通過(guò)網(wǎng)絡(luò)或另一通信連接(硬接線、無(wú)線、或硬接線和無(wú)線的組合)向計(jì)算機(jī)傳輸或提供信息時(shí),計(jì)算機(jī)將該連接適當(dāng)?shù)匾暈橛?jì)算機(jī)可讀介質(zhì)。由此,任何這類連接適當(dāng)?shù)胤Q為計(jì)算機(jī)可讀介質(zhì)。上述的組合也應(yīng)當(dāng)包括在計(jì)算機(jī)可讀介質(zhì)的范圍內(nèi)。計(jì)算機(jī)可執(zhí)行指令包括例如促使通用計(jì)算機(jī)、專用計(jì)算機(jī)或?qū)S锰幚碓O(shè)備執(zhí)行一個(gè)或一組特定功能的指令和數(shù)據(jù)。雖然已經(jīng)用具體到結(jié)構(gòu)特征和/或方法動(dòng)作的語(yǔ)言對(duì)主題進(jìn)行了描述,但是應(yīng)該理解在所附權(quán)利要求中定義的主題不必限于上述具體的特征或動(dòng)作。相反,上述具體特征和動(dòng)作作為實(shí)現(xiàn)權(quán)利要求的示例形式而公開(kāi)。本發(fā)明可以用其它具體形式來(lái)實(shí)施,而不脫離其精神或本質(zhì)特征。所描述的實(shí)施例被認(rèn)為在所有方面都僅是說(shuō)明性而非限制性的。因此,本發(fā)明的范圍由所附權(quán)利要求書(shū)而非以上描述來(lái)指示。該權(quán)利要求書(shū)的等效技術(shù)方案的含義和范圍以內(nèi)的所有更改將被包含在其范圍內(nèi)。權(quán)利要求1.在其中服務(wù)器與客戶計(jì)算機(jī)系統(tǒng)通過(guò)安全連接傳遞數(shù)據(jù)的計(jì)算機(jī)化系統(tǒng)內(nèi)的所述服務(wù)器處,一種通過(guò)在連接過(guò)程相對(duì)早期對(duì)發(fā)起來(lái)自所述客戶計(jì)算機(jī)系統(tǒng)的連接的用戶進(jìn)行驗(yàn)證而創(chuàng)建所述安全連接的方法,包括以下動(dòng)作從所述客戶計(jì)算機(jī)系統(tǒng)接收與所述服務(wù)器處一個(gè)或多個(gè)遠(yuǎn)程服務(wù)器資源通信的連接請(qǐng)求,所述連接請(qǐng)求指示所述客戶計(jì)算機(jī)系統(tǒng)啟用的多個(gè)安全通信協(xié)議;發(fā)送連接響應(yīng)給所述客戶計(jì)算機(jī)系統(tǒng),所述連接響應(yīng)指示所述多個(gè)安全通信協(xié)議中的優(yōu)選安全通信協(xié)議;通過(guò)與所述客戶計(jì)算機(jī)系統(tǒng)建立的安全通道中的數(shù)據(jù)交換,證實(shí)所述優(yōu)選安全通信協(xié)議的使用;以及通過(guò)所述優(yōu)選安全通信協(xié)議,與所述客戶計(jì)算機(jī)系統(tǒng)的客戶應(yīng)用程序傳遞數(shù)據(jù)。2.如權(quán)利要求1所述的方法,其特征在于,所述多個(gè)安全通信協(xié)議包括RDP、SSL、NTLM、Kerberos安全協(xié)議或其組合中的至少一種。3.如權(quán)利要求l所述的方法,其特征在于,來(lái)自所述客戶計(jì)算機(jī)系統(tǒng)的所述連接請(qǐng)求是被擴(kuò)展成包括所述客戶計(jì)算機(jī)系統(tǒng)啟用的所述多個(gè)安全通信協(xié)議的X224連接請(qǐng)求;并且所述連接響應(yīng)是被擴(kuò)展成包括所述優(yōu)選安全通信協(xié)議的X224連接響應(yīng)。4.如權(quán)利要求l所述的方法,其特征在于,還包括在所述服務(wù)器處標(biāo)識(shí)與所述客戶計(jì)算機(jī)系統(tǒng)所指示的所述多個(gè)安全通信協(xié)議中的至少一個(gè)相同的一個(gè)或多個(gè)安全通信協(xié)議的動(dòng)作。5.如權(quán)利要求4所述的方法,其特征在于,還包括確定在所述服務(wù)器處基于服務(wù)器系統(tǒng)設(shè)置而使得所述一個(gè)或多個(gè)安全通信協(xié)議中有一個(gè)被允許的動(dòng)作。6.如權(quán)利要求l所述的方法,其特征在于,還包括以下動(dòng)作在證書(shū)存儲(chǔ)中標(biāo)識(shí)多個(gè)服務(wù)器證書(shū);以及確定所述多個(gè)服務(wù)器證書(shū)中優(yōu)選的一個(gè)以發(fā)送至所述客戶計(jì)算機(jī)系統(tǒng)。7.如權(quán)利要求6所述的方法,其特征在于,所述優(yōu)選的服務(wù)器證書(shū)是由用戶顯式選擇的證書(shū)、通過(guò)服務(wù)器系統(tǒng)策略配置的證書(shū)或自簽名服務(wù)器證書(shū)中的任一小8.如權(quán)利要求l所述的方法,其特征在于,還包括以下動(dòng)作接收客戶計(jì)算機(jī)系統(tǒng)驗(yàn)證信息;以及將所述驗(yàn)證信息作為有關(guān)所述客戶計(jì)算機(jī)系統(tǒng)的連接上下文的一部分進(jìn)行存儲(chǔ)。9.如權(quán)利要求8所述的方法,其特征在于,還包括確定所述客戶計(jì)算機(jī)系統(tǒng)驗(yàn)證信息為無(wú)效的步驟,所述步驟包括以下的一項(xiàng)或多項(xiàng)(i)標(biāo)識(shí)所述客戶計(jì)算機(jī)系統(tǒng)驗(yàn)證信息內(nèi)的時(shí)間戳已過(guò)期的動(dòng)作;(ii)標(biāo)識(shí)已從所述客戶計(jì)算機(jī)系統(tǒng)接收到不包括期望驗(yàn)證信息的一個(gè)或多個(gè)消息的動(dòng)作;或者(iii)標(biāo)識(shí)接收到的驗(yàn)證證書(shū)與同來(lái)自所述客戶計(jì)算機(jī)系統(tǒng)的所述連接請(qǐng)求相關(guān)聯(lián)的期望驗(yàn)證證書(shū)不相匹配的動(dòng)作。10.如權(quán)利要求l所述的方法,其特征在于,還包括接收導(dǎo)向VIP地址的不同連接請(qǐng)求的動(dòng)作,其中所述不同的連接請(qǐng)求包括有關(guān)在前連接的連接信息。11.如權(quán)利要求IO所述的方法,其特征在于,還包括以下動(dòng)作標(biāo)識(shí)對(duì)所述在前連接標(biāo)識(shí)的連接上下文被保存在所述服務(wù)器處;以及允許所請(qǐng)求的不同連接。12.如權(quán)利要求10所述的方法,其特征在于,還包括以下動(dòng)作標(biāo)識(shí)有關(guān)所述在前連接的連接上下文被保存在不同服務(wù)器處;以及發(fā)送響應(yīng)消息給所述客戶計(jì)算機(jī)系統(tǒng),所述響應(yīng)消息指示所述不同服務(wù)器是用于所述不同連接請(qǐng)求的適當(dāng)服務(wù)器。13.如權(quán)利要求1所述的方法,其特征在于,還包括把先前從所述客戶計(jì)算機(jī)系統(tǒng)接收到的關(guān)于所述初始連接請(qǐng)求的一個(gè)或多個(gè)消息附加到由所述服務(wù)器準(zhǔn)備的傳出消息的動(dòng)作,使得所述服務(wù)器向所述客戶計(jì)算機(jī)系統(tǒng)證實(shí)它對(duì)所述優(yōu)選安全通信協(xié)議的選擇。14.在一個(gè)被配置成通過(guò)安全連接與服務(wù)器傳遞數(shù)據(jù)的客戶計(jì)算機(jī)系統(tǒng)處,一種通過(guò)在連接過(guò)程相對(duì)早期進(jìn)行驗(yàn)證來(lái)創(chuàng)建與所述服務(wù)器的所述安全連接的方法,包括在所述客戶計(jì)算機(jī)系統(tǒng)處標(biāo)識(shí)多個(gè)安全通信協(xié)議能力的動(dòng)作;與所述服務(wù)器協(xié)商所述多個(gè)安全通信協(xié)議能力中優(yōu)選的一個(gè)的步驟,從而標(biāo)識(shí)相互優(yōu)選的安全通信協(xié)議;使用所述優(yōu)選安全通信協(xié)議與所述服務(wù)器交換驗(yàn)證信息的動(dòng)作,其中來(lái)自所述服務(wù)器的驗(yàn)證信息包括自簽名證書(shū)、手動(dòng)安裝證書(shū)或接收自遠(yuǎn)程證書(shū)權(quán)威機(jī)構(gòu)的證書(shū)中的任一種;以及用在與所述服務(wù)器協(xié)商期間傳遞的一個(gè)或多個(gè)初始數(shù)據(jù)分組來(lái)證實(shí)與所述服務(wù)器協(xié)商的所述安全通信協(xié)議的使用的步驟。15.如權(quán)利要求14所述的方法,其特征在于,所述協(xié)商多個(gè)安全通信協(xié)議中優(yōu)選的一個(gè)的步驟還包括以下動(dòng)作發(fā)送包括對(duì)在所述客戶計(jì)算機(jī)系統(tǒng)處標(biāo)識(shí)的所述一個(gè)或多個(gè)安全通信協(xié)議的指示的連接請(qǐng)求消息;以及從所述服務(wù)器接收標(biāo)識(shí)所述安全通信協(xié)議中所述相互優(yōu)選的一個(gè)的響應(yīng)。16.如權(quán)利要求14所述的方法,其特征在于,所述證實(shí)與所述服務(wù)器協(xié)商的所述安全通信協(xié)議的使用的步驟包括以下動(dòng)作從所述服務(wù)器接收一個(gè)或多個(gè)初始數(shù)據(jù)分組;以及標(biāo)識(shí)先前己與所述服務(wù)器交換的、附加到所述一個(gè)或多個(gè)初始數(shù)據(jù)分組中任一個(gè)的信息。17.如權(quán)利要求14所述的方法,其特征在于,還包括在所述客戶計(jì)算機(jī)系統(tǒng)處將從所述服務(wù)器接收到的所述服務(wù)器證書(shū)存儲(chǔ)在連接上下文中。18.如權(quán)利要求17所述的方法,其特征在于,還包括以下動(dòng)作標(biāo)識(shí)與所述服務(wù)器的連接己失?。灰约鞍l(fā)送重新連接請(qǐng)求消息到所述服務(wù)器的虛擬IP地址,其中所述重新連接請(qǐng)求消息包括存儲(chǔ)在所述連接上下文中的至少部分信息。19.如權(quán)利要求17所述的方法,其特征在于,還包括以下動(dòng)作從所述服務(wù)器的所述虛擬IP地址接收拒絕連接消息,所述拒絕連接消息包括服務(wù)器名和所述服務(wù)器的網(wǎng)絡(luò)地址中的至少一個(gè);發(fā)送新的重新連接請(qǐng)求消息到所述服務(wù)器的所述虛擬IP地址,所述新的重新連接請(qǐng)求消息包括所述服務(wù)器名和所述服務(wù)器的網(wǎng)絡(luò)地址中的至少一個(gè);以及根據(jù)所述連接上下文重建與所述服務(wù)器的所述連接。20.在其中服務(wù)器與客戶計(jì)算機(jī)系統(tǒng)通過(guò)安全連接傳遞數(shù)據(jù)的計(jì)算機(jī)化系統(tǒng)內(nèi)的所述服務(wù)器處,一種具有計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)程序產(chǎn)品,所述指令在被執(zhí)行時(shí)使所述服務(wù)器處的一個(gè)或多個(gè)處理器執(zhí)行一種通過(guò)在連接過(guò)程相對(duì)早期對(duì)所述客戶計(jì)算機(jī)系統(tǒng)進(jìn)行驗(yàn)證而創(chuàng)建所述安全連接的方法,包括以下動(dòng)作從所述客戶計(jì)算機(jī)系統(tǒng)接收與服務(wù)器處一個(gè)或多個(gè)遠(yuǎn)程服務(wù)器資源通信的連接請(qǐng)求,所述連接請(qǐng)求指示所述客戶計(jì)算機(jī)系統(tǒng)啟用的多個(gè)安全通信協(xié)議;發(fā)送連接響應(yīng)給所述客戶計(jì)算機(jī)系統(tǒng),所述連接響應(yīng)指示所述多個(gè)安全通信協(xié)議中的優(yōu)選安全通信協(xié)議;通過(guò)在與所述客戶計(jì)算機(jī)系統(tǒng)建立的安全通道中的數(shù)據(jù)交換,證實(shí)所述優(yōu)選安全通信協(xié)議的使用;以及通過(guò)所述優(yōu)選安全通信協(xié)議,與所述客戶計(jì)算機(jī)系統(tǒng)的客戶應(yīng)用程序傳遞數(shù)據(jù)。全文摘要本發(fā)明的各個(gè)實(shí)現(xiàn)至少部分地通過(guò)在連接建立階段早期對(duì)客戶和服務(wù)器進(jìn)行驗(yàn)證,而在該客戶和服務(wù)器之間有效地建立安全連接。發(fā)起與服務(wù)器連接的客戶標(biāo)識(shí)在該客戶處啟用的安全通信協(xié)議,并在其發(fā)送給服務(wù)器的連接請(qǐng)求中標(biāo)識(shí)這些協(xié)議。服務(wù)器處理該消息并且通過(guò)用其認(rèn)為適合該連接的通信協(xié)議做出響應(yīng)??蛻艉头?wù)器于是交換合適的驗(yàn)證信息,隨后建立實(shí)現(xiàn)所選通信協(xié)議的連接會(huì)話,并使用協(xié)商的通信協(xié)議加密各消息。附加實(shí)現(xiàn)涉及重建虛擬互聯(lián)網(wǎng)協(xié)議地址后的丟失連接,而無(wú)需重新耗費(fèi)大量的連接資源開(kāi)銷。文檔編號(hào)G06F15/16GK101263468SQ200680033199公開(kāi)日2008年9月10日申請(qǐng)日期2006年9月11日優(yōu)先權(quán)日2005年9月12日發(fā)明者A·伯納迪,A·帕勒卡,C·哈古,E·索爾,J·E·帕里森斯,J·奇克,R·瑪哈佳,S·A·庫(kù)辛申請(qǐng)人:微軟公司