欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于證書的到云虛擬機的連接的制作方法

文檔序號:7792808閱讀:266來源:國知局
基于證書的到云虛擬機的連接的制作方法
【專利摘要】在包括執(zhí)行虛擬機的主機計算系統(tǒng)以及將主機通信地耦合到被分配給虛擬機中的特定一個的客戶端計算系統(tǒng)的安全云計算通道的環(huán)境中,該特定的虛擬機生成證書,將證書安裝在其自身上并將證書表示返回到客戶端。這可在虛擬機被提供時發(fā)生。在從客戶端到虛擬機的后續(xù)連接請求期間,虛擬機向客戶端返回證書。客戶端將在提供期間返回的證書表示與在后續(xù)連接期間返回的證書進行比較,并且如果存在匹配,則虛擬機被認(rèn)證給客戶端。由此,在這種情況下,虛擬機在客戶端不必生成、安裝和管理證書的安全性的情況下來認(rèn)證。
【專利說明】基于證書的到云虛擬機的連接
[0001]背景
[0002]對計算系統(tǒng)的虛擬化已經(jīng)使得能夠?qū)崿F(xiàn)對計算系統(tǒng)的靈活且方便的設(shè)置和維護。計算系統(tǒng)通過使得虛擬機位于該虛擬機服務(wù)的客戶端計算系統(tǒng)遠(yuǎn)程地操作來被虛擬化。虛擬機模擬完全可操作的計算系統(tǒng)的邏輯,包括操作系統(tǒng)、其各個應(yīng)用以及對應(yīng)的設(shè)置,并且該虛擬機通過位于遠(yuǎn)程的客戶端計算系統(tǒng)與用戶進行接口。例如,虛擬機接收來自遠(yuǎn)程客戶端的客戶端輸入,并將所得到的桌面圖像信息提供回客戶端??蛻舳瞬徊僮鲗?yīng)的操作系統(tǒng),而是僅僅接收用戶輸入,將這樣的用戶輸入中繼到虛擬機,并使用由虛擬機提供的所得到的桌面圖像來呈現(xiàn)桌面。
[0003]虛擬機最近被實現(xiàn)在云計算環(huán)境中?!霸朴嬎恪笔怯糜谠试S對可配置計算資源(例如,網(wǎng)絡(luò)、服務(wù)器、存儲、應(yīng)用和服務(wù))的共享池的普遍、方便、按需網(wǎng)絡(luò)訪問的模型??膳渲糜嬎阗Y源的共享池可經(jīng)由虛擬化而被快速地供應(yīng),并可利用低管理努力或服務(wù)提供商交互來釋放,并隨后相應(yīng)被縮放。云計算模型可由各種特性(如按需自服務(wù)、廣泛網(wǎng)絡(luò)訪問、資源池、快速靈活性、測量的服務(wù)等)、服務(wù)模型(如軟件即服務(wù)(“SaaS”)、平臺即服務(wù)(“PaaS”)、基礎(chǔ)結(jié)構(gòu)即服務(wù)(“IaaS”))以及部署模型(如私有云、社區(qū)云、公共云、混合云等)組成。
[0004]簡要概述
[0005]在此描述的至少一個實施例涉及一種系統(tǒng),其中主機計算系統(tǒng)執(zhí)行虛擬機,以及云計算通道通信地將主機耦合到被分配給虛擬機之一的客戶端計算系統(tǒng)。在一些實施例中,存在云計算通道來提供客戶端計算系統(tǒng)和主機計算系統(tǒng)之間的端對端安全性。通過使用在此描述的原理,這樣的端對端安全性可從客戶端計算系統(tǒng)一路擴展到代表客戶端運行的對應(yīng)的虛擬機。
[0006]虛擬機被配置成生成證書,將證書安裝在虛擬機上以及向客戶端返回證書表示。例如,這可在虛擬機被提供時發(fā)生。在從客戶端到虛擬機的后續(xù)連接請求期間,虛擬機向客戶端返回證書??蛻舳藢⒃谔峁┢陂g返回的證書表示與在后續(xù)連接期間返回的證書進行比較,并且如果存在匹配,則虛擬機被認(rèn)證給客戶端。由此,在這種情況下,虛擬機在客戶端不必生成并安裝證書的情況下認(rèn)證,從而簡化了客戶端的處理。
[0007]本概述不旨在標(biāo)識出所要求保護的主題的關(guān)鍵特征或必要特征,也不旨在用于幫助確定所要求保護的主題的范圍。

【專利附圖】

【附圖說明】
[0008]為了描述能夠獲得上述和其它優(yōu)點和特征的方式,各實施例的更具體的描述將通過參考各附圖來呈現(xiàn)??梢岳斫?,這些附圖只描繪了示例實施例,并且因此不被認(rèn)為是對其范圍的限制,將通過使用附圖并利用附加特征和細(xì)節(jié)來描述和解釋各實施例,在附圖中:
[0009]圖1示出在其中在此描述的一些實施例可被使用的計算系統(tǒng);
[0010]圖2示出作為操作環(huán)境的系統(tǒng),其中客戶端計算系統(tǒng)提供并連接到被云計算環(huán)境內(nèi)的主機計算系統(tǒng)主控的虛擬機,使得客戶端可隨后操作該虛擬機;
[0011]圖3示出云計算環(huán)境200的示例并表示圖2的云計算環(huán)境的示例;
[0012]圖4示出用于客戶端計算系統(tǒng)連接到虛擬機的方法的流程圖;
[0013]圖5示出在其中虛擬機可被實例化、提供和操作的環(huán)境;以及
[0014]圖6示出當(dāng)從一般化的虛擬機圖像中引導(dǎo)虛擬機時提供虛擬機的方法600的流程圖。

【具體實施方式】
[0015]根據(jù)在此描述的各實施例,客戶端計算系統(tǒng)認(rèn)證它被分配到其的虛擬機,而不必生成并安裝證書。首先,將參考圖1來描述關(guān)于計算系統(tǒng)的一些引導(dǎo)性討論。隨后,認(rèn)證的各實施例將參考圖2到6來描述。
[0016]計算系統(tǒng)現(xiàn)在越來越多地采取多種多樣的形式。例如,計算系統(tǒng)可以是手持式設(shè)備、電器、膝上型計算機、臺式計算機、大型機、分布式計算系統(tǒng)或甚至常規(guī)上不被認(rèn)為是計算系統(tǒng)的設(shè)備。在本說明書以及權(quán)利要求書中,術(shù)語“計算系統(tǒng)”被廣義地定義為包括任何設(shè)備或系統(tǒng)(或其組合),該設(shè)備或系統(tǒng)包含至少一個物理有形的處理器以及其上能含有可由處理器執(zhí)行的計算機可執(zhí)行指令的物理有形的存儲器。存儲器可以采取任何形式,并可以取決于計算系統(tǒng)的性質(zhì)和形式。計算系統(tǒng)可以分布在網(wǎng)絡(luò)環(huán)境中,并可包括多個組分計算系統(tǒng)。
[0017]如圖1所示,在其最基本的配置中,計算系統(tǒng)100通常包括至少一個處理單元102和存儲器104。存儲器104可以是物理系統(tǒng)存儲器,該物理系統(tǒng)存儲器可以是易失性、非易失性、或兩者的某種組合。術(shù)語“存儲器”在此也可用來指諸如物理存儲介質(zhì)等非易失性大容量存儲。如果計算系統(tǒng)是分布式的,則處理、存儲器和/或存儲能力也可以是分布式的。如此處所使用的那樣,術(shù)語“模塊”或“組件”可以指在計算系統(tǒng)上執(zhí)行的軟件對象或例程。此處所描述的不同組件、模塊、引擎,以及服務(wù)可以實現(xiàn)為在計算系統(tǒng)上執(zhí)行的對象或進程(例如,作為分開的線程)。
[0018]在隨后的描述中,參考由一個或多個計算系統(tǒng)執(zhí)行的動作描述了各實施例。如果這樣的動作是以軟件實現(xiàn)的,則執(zhí)行動作的相關(guān)聯(lián)計算系統(tǒng)的一個或多個處理器響應(yīng)于已經(jīng)執(zhí)行了計算機可執(zhí)行指令來引導(dǎo)計算系統(tǒng)的操作。這樣的操作的示例涉及對數(shù)據(jù)的操縱。計算機可執(zhí)行指令(以及被操縱的數(shù)據(jù))可被存儲在計算系統(tǒng)100的存儲器104中。計算系統(tǒng)100還可包含允許計算系統(tǒng)100例如通過網(wǎng)絡(luò)110與其他消息處理器通信的通信信道108。
[0019]這里描述的各實施例可包括或利用專用或通用計算機,該專用或通用計算機包括諸如例如一個或多個處理器和系統(tǒng)存儲器等計算機硬件,如以下更詳細(xì)討論的。這里描述的各實施例還包括用于承載或存儲計算機可執(zhí)行指令和/或數(shù)據(jù)結(jié)構(gòu)的物理和其他計算機可讀介質(zhì)。這樣的計算機可讀介質(zhì)可以是可由通用或?qū)S糜嬎銠C系統(tǒng)訪問的任何可用介質(zhì)。存儲計算機可執(zhí)行指令的計算機可讀介質(zhì)是物理存儲介質(zhì)。承載計算機可執(zhí)行指令的計算機可讀介質(zhì)是傳輸介質(zhì)。由此,作為示例而非限制,本發(fā)明的各實施例可包括至少兩種顯著不同的計算機可讀介質(zhì):計算機存儲介質(zhì)和傳輸介質(zhì)。
[0020]計算機存儲介質(zhì)包括RAM、ROM、EEPROM、CD-ROM或其他光盤存儲、磁盤存儲或其他磁存儲設(shè)備、或可用于存儲計算機可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)形式的所需程序代碼裝置且可由通用或?qū)S糜嬎銠C訪問的任何其他介質(zhì)。
[0021]“網(wǎng)絡(luò)”被定義為使得電子數(shù)據(jù)能夠在計算機系統(tǒng)和/或模塊和/或其它電子設(shè)備之間傳輸?shù)囊粋€或多個數(shù)據(jù)鏈路。當(dāng)信息通過網(wǎng)絡(luò)或另一個通信連接(硬連線、無線、或者硬連線或無線的組合)傳輸或提供給計算機時,該計算機將該連接適當(dāng)?shù)匾暈閭鬏斀橘|(zhì)。傳輸介質(zhì)可包括可用于攜帶計算機可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)形式的所需程序代碼裝置且可由通用或?qū)S糜嬎銠C訪問的網(wǎng)絡(luò)和/或數(shù)據(jù)鏈路。上述的組合也應(yīng)被包括在計算機可讀介質(zhì)的范圍內(nèi)。
[0022]此外,在到達各種計算機系統(tǒng)組件之后,計算機可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)形式的程序代碼裝置可從傳輸介質(zhì)自動轉(zhuǎn)移到計算機存儲介質(zhì)(或者相反)。例如,通過網(wǎng)絡(luò)或數(shù)據(jù)鏈路接收到的計算機可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)可被緩存在網(wǎng)絡(luò)接口模塊(例如,“NIC”)內(nèi)的RAM中,然后最終被傳輸?shù)接嬎銠C系統(tǒng)RAM和/或計算機系統(tǒng)處的較不易失性的計算機存儲介質(zhì)。因而,應(yīng)當(dāng)理解,計算機存儲介質(zhì)可被包括在還利用(或甚至主要利用)傳輸介質(zhì)的計算機系統(tǒng)組件中。
[0023]計算機可執(zhí)行指令例如包括,當(dāng)在處理器處執(zhí)行時使通用計算機、專用計算機、或?qū)S锰幚碓O(shè)備執(zhí)行某一功能或某組功能的指令和數(shù)據(jù)。計算機可執(zhí)行指令可以是例如二進制代碼、諸如匯編語言之類的中間格式指令、或甚至源代碼。盡管用結(jié)構(gòu)特征和/或方法動作專用的語言描述了本主題,但可以理解,所附權(quán)利要求書中定義的主題不必限于上述特征或動作。更具體而言,上述特征和動作是作為實現(xiàn)權(quán)利要求的示例形式而公開的。
[0024]本領(lǐng)域的技術(shù)人員將理解,本發(fā)明可以在具有許多類型的計算機系統(tǒng)配置的網(wǎng)絡(luò)計算環(huán)境中實踐,這些計算機系統(tǒng)配置包括個人計算機、臺式計算機、膝上型計算機、消息處理器、手持式設(shè)備、多處理器系統(tǒng)、基于微處理器的或可編程消費電子設(shè)備、網(wǎng)絡(luò)PC、小型計算機、大型計算機、移動電話、PDA、尋呼機、路由器、交換機等等。本發(fā)明也可在其中通過網(wǎng)絡(luò)鏈接(或者通過硬連線數(shù)據(jù)鏈路、無線數(shù)據(jù)鏈路,或者通過硬連線和無線數(shù)據(jù)鏈路的組合)的本地和遠(yuǎn)程計算機系統(tǒng)兩者都執(zhí)行任務(wù)的分布式系統(tǒng)環(huán)境中實施。在分布式系統(tǒng)環(huán)境中,程序模塊可以位于本地和遠(yuǎn)程存儲器存儲設(shè)備兩者中。
[0025]圖2示出作為操作環(huán)境的系統(tǒng)200,其中客戶端計算系統(tǒng)201提供并連接到被云計算環(huán)境203內(nèi)的主機計算系統(tǒng)210主控的虛擬機(例如,虛擬機211A),使得客戶端201可隨后操作該虛擬機211A??蛻舳擞嬎阆到y(tǒng)201可如上針對圖1的計算系統(tǒng)100描述的那樣被結(jié)構(gòu)化,并且還將在此后被簡單地稱為“客戶端201”。主機計算系統(tǒng)210也可如上針對圖1的計算系統(tǒng)100描述的那樣被結(jié)構(gòu)化,并且還將在此后被簡單地稱為“主機210”。盡管在此描述的原理主要關(guān)于提供和初始連接的預(yù)操作過程,但是現(xiàn)在將描述關(guān)于虛擬機的操作的簡要注釋。
[0026]在操作期間,虛擬機211A模擬完全可操作的計算系統(tǒng),包括至少一個操作系統(tǒng)并且也許還包括一個或多個其他應(yīng)用。虛擬機生成桌面圖像或其他表示桌面的當(dāng)前狀態(tài)的呈現(xiàn)指令,并接著將該圖像或指令傳送到客戶端以供桌面的呈現(xiàn)。隨著用戶與桌面進行交互,用戶輸入被傳送到虛擬機。虛擬機處理用戶輸入,并且如果合適,則改變桌面狀態(tài)。如果桌面狀態(tài)中這樣的改變將導(dǎo)致在所呈現(xiàn)的桌面中的改變,則虛擬機更改圖像或呈現(xiàn)指令(如果合適的話),并將經(jīng)更改的圖像或呈現(xiàn)的指令傳送到客戶端計算系統(tǒng)以供合適的呈現(xiàn)。從用戶的角度而言,就好像客戶端計算系統(tǒng)本身執(zhí)行桌面處理。
[0027]如之前提到的,主機210在云計算環(huán)境中操作。在該描述和下面的權(quán)利要求書中,“云計算”被定義為用于允許對可配置計算資源(例如,網(wǎng)絡(luò)、服務(wù)器、存儲、應(yīng)用和服務(wù))的共享池的普遍、方便的、按需網(wǎng)絡(luò)訪問的模型??膳渲糜嬎阗Y源的共享池可經(jīng)由虛擬化而被快速地供應(yīng),并可利用低管理努力或服務(wù)提供商交互來釋放,并隨后相應(yīng)被縮放。云計算模型可由各種特性(如按需自服務(wù)、廣泛網(wǎng)絡(luò)訪問、資源池、快速靈活性、測量的服務(wù)等)、服務(wù)模型(如軟件即服務(wù)(“SaaS”)、平臺即服務(wù)(“PaaS”)、基礎(chǔ)結(jié)構(gòu)即服務(wù)(“IaaS”))以及部署模型(如私有云、社區(qū)云、公共云、混合云等)組成。在該描述和權(quán)利要求書中,“云計算環(huán)境”是其中采用了云計算的環(huán)境。
[0028]主機210能夠主控多個虛擬機211,并且其通常是具有處理、存儲器、存儲和聯(lián)網(wǎng)資源的單個物理機。在示出的示例中,主機210執(zhí)行虛擬機211A和211B,但是橢圓211C表示在此描述的原理不限于在主機上執(zhí)行的虛擬機的數(shù)目。
[0029]系統(tǒng)200還包括通信地將主機210耦合到客戶端201的云計算通道202。云計算通道202具有以下特征:(I)能夠連接到在云計算環(huán)境203外部的實體(諸如客戶端201),
(2)對于主機210是可訪問的,以及(3)提供關(guān)于直接連接到云計算通道202的每個端的各方的身份的某種程度的身份安全性。由此,通過能夠直接通過云計算通道202進行通信的動作,客戶端201可認(rèn)證主機210,并且主機210可認(rèn)證客戶端201。然而,在沒有進一步處理的情況下,客戶端201還未認(rèn)證虛擬機211A,并且虛擬機21IA還未認(rèn)證客戶端201。
[0030]圖3示出云計算環(huán)境300的示例。在這個示例中,主機計算系統(tǒng)302A是圖2的主機210的示例,并且僅僅是在云計算環(huán)境300中的多個主機302之一。例如,雖然示出了三個主機302A、302B和302C,但是橢圓302D表示在云計算環(huán)境300內(nèi)可以存在任意數(shù)量的主機。
[0031]虛擬機311是圖2的虛擬機211的示例。從被包括在存儲服務(wù)301內(nèi)的虛擬機圖像312中,虛擬機被實例化在這個云計算環(huán)境中??刂品?wù)303協(xié)調(diào)云計算環(huán)境300內(nèi)的各個服務(wù),包括在主機(諸如主機302A)和被分配到主機內(nèi)的各個虛擬機(諸如虛擬機311A)的客戶端(諸如客戶端201)之間提供安全云計算通道。
[0032]圖4示出用于客戶端計算系統(tǒng)連接到虛擬機的方法400的流程圖。在一個實施例中,客戶端計算系統(tǒng)是圖1的客戶端201,而虛擬機是圖2的虛擬機211A。因此,由于方法400可在圖2的系統(tǒng)200的上下文中執(zhí)行,所以現(xiàn)將頻繁參考圖2的系統(tǒng)200來描述圖4的方法400。
[0033]在圖4中,如在圖4的左列中在標(biāo)題“客戶端”下表示的,示出的動作中的一些由客戶端(例如客戶端201)執(zhí)行。如在圖4的右列中在標(biāo)題“虛擬機”下表示的,示出的動作中的其他由虛擬機(例如,虛擬機211A)執(zhí)行。如在圖4的中間列中在標(biāo)題“主機”下表示的,示出的動作中的其他由主機(例如,主機210)執(zhí)行。方法400包括第一往返通信階段401,其中虛擬機被提供、被分配到客戶端,并且客戶端接收第一證書表示。方法400還包括第二往返通信階段402,其中客戶端向虛擬機作出初始連接請求,并且虛擬機用第二證書表示進行響應(yīng)。方法400包括認(rèn)證決定階段403,其中客戶端取決于證書表示來決定是否要認(rèn)證虛擬機。
[0034]方法400開始于對于提供用于客戶端的虛擬機的請求(動作411)。例如,在圖2中,虛擬機211A可被實例化并被提供以分配到客戶端201。雖然這個動作示出在圖4的左列,但是這個初始提供請求不需要由客戶端201作出,而是可以由某個第三方作出,第三方諸如例如,具有向客戶端201的用戶所屬的組織提供虛擬機的責(zé)任的管理員。然而,提供請求可替換地由客戶端201作出。
[0035]注意在這個階段,虛擬機211A還不存在,并且連虛擬機要在其上實例化的主機計算系統(tǒng)的身份可能還沒有被預(yù)先確定(如果在云計算環(huán)境中針對虛擬機有多個潛在的主機候選)。例如,在圖3的云計算環(huán)境300中,可向控制服務(wù)303作出虛擬機提供請求,該控制服務(wù)303決定哪個主機302來實例化虛擬機。在這種情況下,假設(shè)控制服務(wù)303將主機302A選擇為最適合于執(zhí)行虛擬機。提供請求可接著被傳遞(也許直接或也許采用一些更改)到主機302A。在圖2的上下文中,提供請求被主機210接收到。
[0036]主機接著使得虛擬機從虛擬機圖像中被實例化(動作421),并進一步提供虛擬機。例如,在圖2中,假設(shè)主機210實例化用于客戶端201的虛擬機211A。在圖3中,假設(shè)主機302A使用存儲服務(wù)301中的虛擬機圖像312之一來實例化用于客戶端的虛擬機31IA。
[0037]隨著虛擬機啟動,作為引導(dǎo)過程一部分,虛擬機生成證書(動作431)(此后也稱為“虛擬機證書”),將證書安裝在虛擬機上(動作432)并向客戶端提供虛擬機證書的第一證書表示(動作433)。雖然這個證書表示可以是虛擬機證書的副本,但是它還可以是虛擬機證書的散列。然而,散列可以使得虛擬機證書的傳輸和比較更為容易。在一個實施例中,散列是被用作證書的公鑰的簡寫形式的“拇指紋(thumbprint) ”,其是散列本身。
[0038]在一個實施例中,可通過執(zhí)行虛擬機上的提供代理來執(zhí)行虛擬機證書的生成(動作431),虛擬機證書的安裝(動作432)以及向客戶端提供虛擬機證書的第一證書表示(動作433)。雖然不被要求,但是這個提供代理可不存在在從中虛擬機被實例化的虛擬機圖像中,并且也許相反已經(jīng)在虛擬機的引導(dǎo)期間被虛擬機獲取。將在以下參考圖5來進一步描述這種情況。
[0039]一旦主機接收到第一證書表示,主機將向客戶端提供該第一證書表示(動作422)。例如,在圖2中,主機210可接收安裝在虛擬機211A上的證書的第一證書表示,并通過云計算通道202將該第一證書表示提供給客戶端201。在圖3中,主機302A可接收安裝在虛擬機311a上的證書的第一證書表示,并通過控制服務(wù)303將該第一證書表示提供給客戶端。這完成了第一往返通信階段401。
[0040]客戶端通過主機接收到來自虛擬機的第一證書表示(動作412)。此后,客戶端作出初始虛擬機連接請求并將該請求提交給虛擬機(動作413)。在一個實施例中,使用協(xié)議來作出該初始連接請求,該協(xié)議使得虛擬機自動地向客戶端返回虛擬機證書的第二證書表示。第二證書表示可以例如是虛擬機證書的散列或副本。這樣的常規(guī)協(xié)議的一示例是遠(yuǎn)程桌面協(xié)議(RDP)協(xié)議。然而,在此描述的原理不限于該RDP協(xié)議或甚至任何現(xiàn)有的協(xié)議,因為可在將來開發(fā)出具有這個特征的新的協(xié)議。主機接著將初始連接請求提供到虛擬機(動作 423)。
[0041]虛擬機接著接收初始連接請求(動作434)。在這個初始請求內(nèi)可包括允許用戶和/或客戶端向虛擬機進行認(rèn)證的客戶端和/或用戶憑證。然而,注意的是在此時,虛擬機還未響應(yīng)于該初始連接請求來向客戶端認(rèn)證。為了促進客戶端認(rèn)證虛擬機,虛擬機通過向客戶端發(fā)送虛擬機證書的第二證書表示來對初始連接請求進行響應(yīng)(動作435)。該第二表示可以再次是證書的任意表示,諸如例如,虛擬機證書的散列或副本。如果RDP協(xié)議被使用,則虛擬機將通常返回虛擬機證書的副本。
[0042]主機接著將第二證書表示發(fā)送(或中繼)到客戶端(動作424)。客戶端接著接收虛擬機證書的第二證書表示(動作414),由此完成第二往返通信階段402。作為一個示例,在圖2中,該第二往返通信階段402在客戶端201和虛擬機211A之間發(fā)生。在圖3中,該第二往返通信階段402在客戶端(未示出)和虛擬機311A之間發(fā)生。這允許客戶端接著執(zhí)行認(rèn)證決定階段403。
[0043]為了客戶端決定是否認(rèn)證虛擬機,客戶端將(作為第一往返通信階段401的結(jié)果返回到客戶端的)第一證書表示和(作為第二往返通信階段402的結(jié)果返回到客戶端的)第二證書表示進行比較。例如,如果第一證書表示是虛擬機證書的散列,而第二證書表示是虛擬機證書的副本,則客戶端將對第二證書表示進行散列并查看是否達到相同的散列值。
[0044]如果不存在第一和第二證書表示的匹配(決定框416中的“否”),則客戶端不認(rèn)證虛擬機(動作417),并由此不可相信客戶端正在與其通信的一方真正是被分配給客戶端的虛擬機。另一方面,如果存在第一和第二證書表示的匹配(決定框416中的“是”),則客戶端認(rèn)證虛擬機(動作418),并由此可相信客戶端正在與其通信的一方真正是被分配給客戶端的虛擬機,并由此可用對虛擬機的置信度來操作。
[0045]如之前提到的,虛擬機可使用提供代理來執(zhí)行虛擬機證書的生成和安裝以及向客戶端提供第一證書表示。該提供代理還可協(xié)助其他功能,諸如向用戶報告關(guān)于提供過程的狀態(tài)。現(xiàn)在將關(guān)于附圖5和6來描述關(guān)于這個的更多細(xì)節(jié)。
[0046]圖5示出在其中虛擬機501可被實例化、提供和操作的環(huán)境500。環(huán)境500表示圖3的主機計算系統(tǒng)302A的示例,并且虛擬機501是圖2的虛擬機211A以及圖3的虛擬機311A的示例。環(huán)境500還包括虛擬存儲介質(zhì)502,虛擬機501可被連接到其以訪問該虛擬機存儲介質(zhì)502上的數(shù)據(jù)。虛擬存儲介質(zhì)包括在虛擬機511的引導(dǎo)時被執(zhí)行的引導(dǎo)計算機可執(zhí)行指令511。
[0047]虛擬存儲介質(zhì)502包括響應(yīng)于引導(dǎo)計算機可執(zhí)行指令511的執(zhí)行,變得能被虛擬機501訪問的內(nèi)容512。引導(dǎo)計算機可執(zhí)行指令511的執(zhí)行還允許虛擬機501訪問虛擬存儲介質(zhì)502的內(nèi)容512,諸如提供數(shù)據(jù)521和提供代理522。
[0048]提供數(shù)據(jù)521包括可被虛擬機用于填充虛擬機501內(nèi)的用戶專用和機器專用信息以針對特定用戶或機器來專門化虛擬機501的數(shù)據(jù)。由此,即使虛擬機501是從一般化的虛擬機圖像中引導(dǎo)的,虛擬機501最終針對特定的用戶和機器被專門化。由此,提供數(shù)據(jù)521幫助提供虛擬機501。在一個實施例中,提供數(shù)據(jù)可以是在安裝的專門化階段期間被虛擬機使用的應(yīng)答文件。
[0049]提供代理522表示可被訪問(響應(yīng)于執(zhí)行引導(dǎo)計算機可執(zhí)行指令511)和執(zhí)行來執(zhí)行與虛擬機501的提供有關(guān)的任務(wù)的計算機可執(zhí)行代碼。例如,提供代理可監(jiān)視提供過程的進展和/或報告該進展,并可生成虛擬機證書(動作431),將虛擬機證書安裝在它自身上(動作432),并將虛擬機證書的第一證書表示分派到客戶端(動作433)。
[0050]圖6示出用于當(dāng)從一般化的虛擬機圖像中引導(dǎo)虛擬機時提供虛擬機的方法600的流程圖。在啟動虛擬機的引導(dǎo)(動作601)之際啟動方法600。這個涉及根據(jù)一般化的虛擬機圖像來創(chuàng)建虛擬機實例。并且,虛擬機實例將部分地用不特定于要被分配給虛擬機的用戶和/或機器的參數(shù)來填充。
[0051]在這個狀態(tài)中,虛擬機包括引導(dǎo)可執(zhí)行指令。例如,在圖5中,虛擬機501包括引導(dǎo)計算機可執(zhí)行指令511。這些引導(dǎo)計算機可執(zhí)行指令接著被執(zhí)行(動作602)。
[0052]弓I導(dǎo)計算機可執(zhí)行指令的執(zhí)行使得虛擬機檢測能被虛擬機訪問的虛擬存儲介質(zhì)(動作603)。例如,參考附圖5,虛擬機501執(zhí)行引導(dǎo)計算機可執(zhí)行指令511,使得虛擬機501檢測并能夠訪問虛擬存儲介質(zhì)502,如線531表示的。虛擬存儲介質(zhì)由抽象出底層物理存儲介質(zhì)的管理程序來提供。當(dāng)計算系統(tǒng)啟動時,一些操作系統(tǒng)執(zhí)行的過程之一是發(fā)現(xiàn)附連的設(shè)備。可以是這個過程發(fā)現(xiàn)虛擬存儲設(shè)備。在一些實施例中,這個虛擬存儲介質(zhì)可以是例如,虛擬DVD驅(qū)動器。
[0053]一旦虛擬機檢測到虛擬存儲設(shè)備,虛擬機就能訪問虛擬存儲設(shè)備的內(nèi)容的至少一些。例如,在圖5中,如線532表示的,虛擬機501能夠通過執(zhí)行引導(dǎo)計算機可執(zhí)行指令511來訪問虛擬存儲介質(zhì)502的內(nèi)容512。在此時,虛擬機可從虛擬存儲介質(zhì)獲取提供數(shù)據(jù)(動作611)和提供代理(動作621)兩者。例如,在圖5中,虛擬機501從虛擬存儲介質(zhì)502獲取提供數(shù)據(jù)521和提供代理522。
[0054]作為一個示例,提供數(shù)據(jù)可以是應(yīng)答文件。應(yīng)答文件常規(guī)上被用于執(zhí)行在物理計算系統(tǒng)上的操作系統(tǒng)安裝的專門化階段。在將操作系統(tǒng)安裝在物理計算系統(tǒng)上期間,存在兩個階段;即復(fù)制階段和專門化階段。在復(fù)制階段期間,文件被復(fù)制到物理計算系統(tǒng)上。在專門化階段期間,用戶通常被查詢用戶專用或機器專用信息,該用戶專用或機器專用信息將針對操作系統(tǒng)正被安裝在其上的物理計算系統(tǒng)和針對物理計算系統(tǒng)的用戶來定制操作系統(tǒng)。然而,常規(guī)上知曉的是取代于詢問用戶,用戶和機器專用信息可改為在遵從特定模式的應(yīng)答文件中提供。安裝過程可改為查閱應(yīng)答文件來尋找對于原本通常在安裝期間向用戶提出的相關(guān)問題的答案。提供數(shù)據(jù)可包括例如參數(shù),諸如但不限于,機器名、用戶賬戶、用戶賬戶設(shè)置、組策略、訪問口令、時區(qū)。
[0055]提供數(shù)據(jù)接著被用于提供虛擬機(動作612)。例如參考圖5,執(zhí)行引導(dǎo)計算機可執(zhí)行指令可使得虛擬機501向提供數(shù)據(jù)521 (例如,應(yīng)答文件)查詢用戶專用或機器專用設(shè)置并用該用戶專用或機器專用設(shè)置來適當(dāng)?shù)卦O(shè)置其自己的設(shè)置,從而創(chuàng)建被提供給被分配來使用虛擬機的特定機器和/或用戶的虛擬機。
[0056]虛擬機還可從檢測到的存儲介質(zhì)獲取提供代理(動作621)。例如,在圖5中,虛擬機501從虛擬存儲介質(zhì)502獲取提供代理522。這可通過虛擬機501執(zhí)行引導(dǎo)計算機可執(zhí)行指令511來執(zhí)行。
[0057]提供代理表示可被虛擬機執(zhí)行的計算機可執(zhí)行指令集合。虛擬機接著執(zhí)行提供代理(動作622)。虛擬機還可監(jiān)視虛擬機的進展(動作623),并向客戶端報告提供過程的狀態(tài)(動作624)。例如,在圖5中,虛擬機501可響應(yīng)于執(zhí)行引導(dǎo)計算機可執(zhí)行指令511來執(zhí)行提供代理522。引導(dǎo)計算機可執(zhí)行指令511和提供代理522可各自共同地或單獨地具體化在計算機可讀介質(zhì)(諸如計算機存儲介質(zhì))上,來作為計算機程序產(chǎn)品的組成部分。
[0058]例如,假設(shè)被提供的虛擬機是圖3的虛擬機311A。虛擬機311的提供狀態(tài)可被報告給主機計算系統(tǒng)302A,并接著被報告給控制服務(wù)303,然后接著被報告給用戶。所報告的狀態(tài)的示例包括提供過程的成功或失敗,或可能是提供過程的超時狀態(tài)(例如,提供是否用時比指定的超時時間段更長)??刂品?wù)303的示例包括支持云計算系統(tǒng)的服務(wù),諸如例如 MICROSOFT AZURE。
[0059]提供代理522還可執(zhí)行虛擬機證書的生成(動作431),虛擬機證書在虛擬機上的安裝(動作432),以及將第一證書表示提供到客戶端(動作433)。
[0060]在提供完成后,或至少在從虛擬存儲設(shè)備獲取提供數(shù)據(jù)和提供代理后,如果虛擬存儲設(shè)備不被用于虛擬機作出的正常操作,則虛擬存儲設(shè)備可從虛擬機斷開連接(動作631)。
[0061]在一個示例中,虛擬機的操作系統(tǒng)(此后稱為“啟用引導(dǎo)的操作系統(tǒng)”)可以是具有引導(dǎo)時計算機可執(zhí)行指令511的類型,該引導(dǎo)時計算機可執(zhí)行指令511在引導(dǎo)時期間被自動執(zhí)行來使得虛擬機獲取并使用提供數(shù)據(jù)來提供虛擬機以及獲取并執(zhí)行提供代理。這樣的計算系統(tǒng)的一個示例是MICROSOFT WINDOWS。
[0062]在一個實施例中,虛擬機的操作系統(tǒng)(此后稱為“沒有啟動引導(dǎo)的操作系統(tǒng)”)可以是不具有這樣的引導(dǎo)時計算機可執(zhí)行指令511的類型。這樣的操作系統(tǒng)的一個示例是LINUX。在這種情況下,當(dāng)生成包括這樣的操作系統(tǒng)的一般化的虛擬機圖像時,引導(dǎo)時計算機可執(zhí)行指令511被添加到該一般化的虛擬機圖像,使得它們在引導(dǎo)時出現(xiàn)在被虛擬機執(zhí)行中。
[0063]由此,在此描述的原理描述了用于客戶端以客戶端在初始地連接到虛擬機時能認(rèn)證該虛擬機的方式提供和初始地連接到虛擬機的機制。本發(fā)明可具體化為其它具體形式而不背離其精神或本質(zhì)特征。所描述的實施例在所有方面都應(yīng)被認(rèn)為僅是說明性而非限制性的。因此,本發(fā)明的范圍由所附權(quán)利要求書而非前述描述指示。落入權(quán)利要求書的等效方案的含義和范圍內(nèi)的所有改變應(yīng)被權(quán)利要求書的范圍所涵蓋。
【權(quán)利要求】
1.一種系統(tǒng),包括: 主機計算系統(tǒng),所述主機計算系統(tǒng)被配置成在云計算環(huán)境中執(zhí)行多個虛擬機(211,311); 云計算通道,所述云計算通道通信地將所述主機計算系統(tǒng)耦合到被分配給所述多個虛擬機中的特定虛擬機的客戶端計算系統(tǒng),其中所述云計算通道包括關(guān)于通過所述云計算通道進行通信的各方的身份的身份安全性; 其中所述特定虛擬機被配置成執(zhí)行以下: 生成證書的動作; 將所述證書安裝在所述虛擬機上的動作; 將對應(yīng)于所述證書的證書表示提供到所述主機計算系統(tǒng),使得所述主機計算系統(tǒng)通過所述云計算通道將所述證書表示提供到所述客戶端計算系統(tǒng)的動作。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述云計算環(huán)境中的所述虛擬機用所述證書來對來自所述客戶端計算系統(tǒng)的初始連接請求進行響應(yīng),使得所述客戶端計算系統(tǒng)能將所述證書表示和所述證書進行比較。
3.如權(quán)利要求2所述的系統(tǒng),其特征在于,所述云計算環(huán)境中的所述虛擬機還接收來自所述客戶端計算系統(tǒng)的認(rèn)證憑證,并使用所述認(rèn)證憑證來認(rèn)證所述客戶端計算系統(tǒng)或所述用戶。
4.如權(quán)利要求2所述的系統(tǒng),其特征在于,所述初始連接請求是使用在其中所述虛擬機自動返回所述證書的協(xié)議來作出的。
5.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述云計算環(huán)境中的所述虛擬機包括計算機可執(zhí)行指令,當(dāng)所述計算機可執(zhí)行指令被執(zhí)行時,使得所述虛擬機執(zhí)行生成所述證書、安裝所述證書以及將所述證書表示提供到所述主機計算系統(tǒng)的動作,其中所述計算機可執(zhí)行指令是由所述虛擬機在引導(dǎo)時期間獲得的,但是所述計算機可執(zhí)行指令沒有隱含在所述虛擬機的操作系統(tǒng)內(nèi)。
6.如權(quán)利要求5所述的系統(tǒng),其特征在于,所述云計算環(huán)境中的所述虛擬機通過執(zhí)行以下來在所述虛擬機的引導(dǎo)期間獲得所述計算機可執(zhí)行指令: 檢測能被所述虛擬機訪問的虛擬存儲介質(zhì); 在檢測到所述虛擬存儲介質(zhì)后,從所檢測到的存儲介質(zhì)中獲取所述計算機可執(zhí)行指令。
7.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述證書表示是所述證書的散列。
8.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述證書表示是所述證書的副本。
9.一種用于客戶端計算系統(tǒng)連接到虛擬機的方法,所述方法包括: 從虛擬機接收第一證書表示,所述第一證書表示對應(yīng)于安裝在所述虛擬機上的證書; 使用協(xié)議將連接請求提交到所述虛擬機,所述協(xié)議使得所述虛擬機返回安裝在所述虛擬機上的所述證書的第二表示; 從所述虛擬機接收所述證書的所述第二表示; 比較所述第一和所述第二證書表示;以及 取決于所述第一和所述第二證書表示是否匹配來認(rèn)證所述虛擬機。
10.如權(quán)利要求9所述的方法,其特征在于,所述虛擬存儲介質(zhì)是虛擬DVD驅(qū)動器。
【文檔編號】H04L29/06GK104272699SQ201380022850
【公開日】2015年1月7日 申請日期:2013年4月29日 優(yōu)先權(quán)日:2012年5月2日
【發(fā)明者】E·D·賴特, M·U·阿扎德, S·P·里瓦斯卡, C·M·桑德斯, S·塞德 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
江油市| 龙里县| 隆安县| 沭阳县| 江津市| 庆元县| 德惠市| 余庆县| 泰和县| 社会| 翁源县| 那坡县| 南安市| 井冈山市| 电白县| 永修县| 衡水市| 丹巴县| 吴川市| 平乐县| 陕西省| 施秉县| 冀州市| 芦溪县| 平泉县| 九寨沟县| 乐昌市| 德阳市| 和田县| 平武县| 青岛市| 彰武县| 饶河县| 清水县| 新建县| 绵竹市| 周至县| 靖远县| 吉安县| 湖州市| 杂多县|