本發明涉及信息技術領域,更具體的,涉及組網的方法和技術。
背景技術:
企業云計算技術的利用正在變得越來越火。移動設備(如智能手機和觸摸板)的進步進一步推動了云計算基礎架構的部署,并且以支持各種應用在線業務。根據市場研究分析師的報告,截至2016年底,全球超過15%的it支出將用于公共或混合云計算環境。
雖然世界上大部分地區正在采用云計算,但云部署仍然需要進行大量的定制工作,并且對于企業來說,建立混合基礎設施,隨需應變,連接應用程序(例如客戶端-服務器軟件)和公共和私人計算環境中的計算資源仍然具有挑戰性而不影響企業的安全性和合規性。
傳統的it網絡和基礎設施安全技術并不直接應用于混合環境。企業it正面臨著巨大的經營風險和其必須通過更多努力來完成任務。因此,需要下一代的平臺來滿足目前的需求。
世界頂級云服務提供商在單個數據中心部署平面云計算基礎設施方面擁有豐富的經驗。為了方便管理和按需服務,實施具有支持云的統一網絡和基礎設施安全。這種方法通過消除網絡和基礎架構安全性的復雜性,大大簡化了在云中運行的應用程序的管理。雖然這種方法在單個數據中心的環境中可能是有益的,但是在混合云環境中難以應用,其中在于底層網絡和基礎架構的安全性分布特性。
更具體地說,在現代企業中,網絡和安全基礎設施專門用于實施企業安全防護和合規治理。關鍵的業務數據和操作通常部署在網絡域的內層后面的防火墻層。然而,另一方面,如果有任何新的業務計劃需要從外部位置到達最內層的訪問連接,則可能非常困難,或者可能需要大量的企業it工作來重新提供環境。
因此,需要提供用于兩個或多個網絡域之間的安全通信的系統和技術是目前亟不可待的。
技術實現要素:
本發明旨在至少解決現有技術中存在的技術問題之一。
安全的虛擬網絡平臺連接兩個或多個不同的網絡域時。當在一個網絡域中的端點處接收到數據分組時,確定數據分組是否應該被轉發到虛擬網絡平臺之外,或者經由虛擬網絡發送到另一個網絡域中的目的地。
為此,本發明提供了一種企業混合云計算環境下的連接建立方法,包括:
建立一組虛擬網絡交換機集群,所述虛擬網絡交換機集群耦合在第一網絡域和第二網絡域之間,其中所述虛擬網絡交換機集群與所述第一和第二網絡域分開,并且所述第二網絡域與第一個網域分開;
設置一控制器,所述控制器連接于第一網絡域和第二網絡域,所述控制器還連接于所述虛擬網絡交換機集群;
在所述第一網絡域中的第一端點接收與所述第二網絡域中的第二端點建立連接的請求;
確定是否通過連接第一網絡域與第二網絡域的虛擬網絡來提供連接;
如果確定了第一網絡域與第二網絡域的虛擬網絡來提供連接,則在第一端點和第二端點之間建立虛擬網絡連接,以將數據從第一網絡域傳送到第二網絡域,其中建立包括:
所述控制器發送建立連接至所述虛擬網絡交換機集群的控制命令至所述第一端點,第一端點接收到所述控制命令后,建立與所述虛擬網絡交換機集群的第一連接;
所述控制器發送建立連接至所述虛擬網絡交換機集群的控制命令至所述第二端點,第二端點接收到所述控制命令后,建立與所述虛擬網絡交換機集群的第二連接。
具體的,所述第一端點和所述第二端點的其中一個或兩個為隔離的虛擬環境。
具體的,所述確定是否通過連接第一網絡域與第二網絡域的虛擬網絡來提供連接具體包括:
確定所述發送數據的目的地址是否存儲在所述第一端點的靜態虛擬路由表中,所述靜態虛擬路由表包括所述第二網絡域的地址列表;如果目的地址存儲在所述靜態虛擬路由表中,則發送請求信息至控制器,以獲得控制器的批準。
具體的,如果目的地址未存儲在所述靜態虛擬路由表中,則將請求轉發到第一個網絡域內的本地tcp/ip網絡。
具體的,在所述第一端點存儲靜態虛擬路由表,所述靜態虛擬路由表包括通過虛擬網絡允許第一端點連接到的第二網絡域的目的地地址列表;當所述第一網絡域和所述第二網絡域的端點發生變化后,則更新所述靜態虛擬路由表。
具體的,所述確定是否通過連接第一網絡域與第二網絡域的虛擬網絡來提供連接具體包括:
具體的,所述方法還包括,計算與在所述第一終點中運行的應用程序相關聯的標識符;
將標識符與授權標識符的白名單進行比較;
如果標識符在白名單中,則確定允許通過虛擬網絡提供連接。
具體的,所述方法還包括,計算與在所述第一終點中運行的應用程序相關聯的標識符;
將標識符與標識符的黑名單進行比較;
如果標識符不在黑名單中,則確定允許通過虛擬網絡提供連接。
更具體的,所述第一或第二網絡域中的一個包括專用網絡域,并且所述第一或第二網絡域中的另一個包括公共網絡域。
更具體的,所述方法還包括:
如果不能通過虛擬網絡提供連接,則丟棄請求。
在本發明的具體實現中,提供了連接用于企業混合云計算環境的客戶端-服務器應用程序的安全虛擬網絡平臺。該平臺可以為運行在具有統一的虛擬網絡和安全性的隔離網絡域中。并且這種安全的虛擬網絡平臺與物理網絡拓撲和安全性相互獨立。通過這種安全的虛擬網絡平臺,混合云環境中企業應用的部署和管理非常簡單。
本發明更多的優點將在下面的具體實施方式和附圖中詳細體現。
附圖說明
圖1示出了可以體現本發明的計算機網絡系統框圖;
圖2示出了本發明的一種企業混合云計算環境下的連接建立方法的流程圖;
圖3示出了本發明計算機系統的系統框圖;
圖4示出了可以實現虛擬網絡平臺的分布式計算環境的簡化框圖;
圖5示出了本發明虛擬網絡平臺的具體實現的總體流程的示意圖;
圖6示出了用于本發明另一實施例的方法流程圖;
圖7示出了本發明虛擬網絡平臺的技術的方法流程圖;
圖8示出了本發明另一實施例的方法流程圖。
具體實施方式
為了能夠更清楚地理解本發明的上述目的、特征和優點,下面結合附圖和具體實施方式對本發明進行進一步的詳細描述。需要說明的是,在不沖突的情況下,本申請的實施例及實施例中的特征可以相互組合。
在下面的描述中闡述了很多具體細節以便于充分理解本發明,但是,本發明還可以采用其他不同于在此描述的方式來實施,因此,本發明的保護范圍并不受下面公開的具體實施例的限制。
圖1示出了可以體現本發明的計算機網絡系統100框圖。系統中可能有任意數量的服務器和客戶端。例如,可能有數百,數千甚至數百萬的服務器和客戶端。在該系統中,有三臺服務器,服務器1,服務器2和服務器3,客戶端1,客戶端2和客戶端3都有三個客戶端。客戶端和服務器可以代表應用軟件的載體。硬件機器可以但不限于服務器主機或任何類型的客戶端硬件機器,例如臺式pc,膝上型計算機和移動設備。服務器通過網絡120交換分組來與客戶端通信。計算機網絡系統代表許多不同的環境,包括lan(局域網)系統,廣域網(wan)系統,因特網系統,以太網,計算機網絡,內聯網,蜂窩電話網絡等。
另一個例子,可以有一個訪問應用程序,其中一個用戶的“客戶端機器”正在訪問“云”中的服務器。在這種情況下,使用gdb(gnudebugger)作為示例,客戶端軟件然后在客戶端用戶機。該客戶端gdb軟件可能連接到云中“服務器”上運行的服務器gdb軟件。可以通過本專利申請中所討論的虛擬網絡平臺來進行連接。
網絡通常包括:(1)至少兩臺計算機,(2)每臺計算機上的網絡接口或網絡接口卡(nic),(3)連接介質和(4)網絡操作系統軟件。nic是一種讓計算機與網絡通信的設備。連接介質通常是電線或電纜,盡管網絡計算機和外圍設備之間的無線通信也可用。網絡操作系統軟件的一些示例包括microsoftwindows7或windowsserver2012,linuxredhat5,ubuntu13,novellnetware,appleshare或artisoftlantastic。
網絡可以包括集線器,交換機或路由器。hubs互連用戶組。集線器可以將數據包(包括電子郵件,文字處理文檔,電子表格,圖形,打印請求)轉發到一個端口,從一個工作站到其余所有端口。
交換機可以為用戶或服務器組提供更多的專用帶寬。交換機可以基于每個分組報頭中的信息將數據分組轉發到預期接收者的適當端口。為了隔離其他端口的傳輸,交換機建立源和目的地之間的臨時連接,然后在對話完成時終止連接。
路由器將本地網絡連接到遠程網絡。在互聯網上,路由器是一種設備,或者在某些情況下是計算機中的軟件,用于確定要向其目的地轉發數據包的下一個網絡點。路由器連接到至少兩個網絡,并根據當前對其連接的網絡的狀態的理解,決定哪種方式發送每個信息包。路由器位于任何網關(其中一個網絡與另一個網絡相交),包括每個互聯網的存在點。
圖2示出了本發明的一種企業混合云計算環境下的連接建立方法的流程圖。
如圖2所示,提供了一種企業混合云計算環境下的連接建立方法,包括:
建立一組虛擬網絡交換機集群,所述虛擬網絡交換機集群耦合在第一網絡域和第二網絡域之間,其中所述虛擬網絡交換機集群與所述第一和第二網絡域分開,并且所述第二網絡域與第一個網域分開;
設置一控制器,所述控制器連接于第一網絡域和第二網絡域,所述控制器還連接于所述虛擬網絡交換機集群;
其中控制器連接網絡交換機和第一網絡域和第二網絡域,也可以連接至第一網絡域和第二網絡域中的每個端點。也就是說,控制器可以獨立的控制網絡交換機和第一網絡域或第二網絡域中的端點。
在所述第一網絡域中的第一端點接收與所述第二網絡域中的第二端點建立連接的請求;
確定是否通過連接第一網絡域與第二網絡域的虛擬網絡來提供連接;
如果確定了第一網絡域與第二網絡域的虛擬網絡來提供連接,則在第一端點和第二端點之間建立虛擬網絡連接,以將數據從第一網絡域傳送到第二網絡域,其中建立包括:
所述控制器發送建立連接至所述虛擬網絡交換機集群的控制命令至所述第一端點,第一端點接收到所述控制命令后,建立與所述虛擬網絡交換機集群的第一連接;
所述控制器發送建立連接至所述虛擬網絡交換機集群的控制命令至所述第二端點,第二端點接收到所述控制命令后,建立與所述虛擬網絡交換機集群的第二連接。
具體的,所述第一端點和所述第二端點的其中一個或兩個為隔離的虛擬環境。
具體的,所述確定是否通過連接第一網絡域與第二網絡域的虛擬網絡來提供連接具體包括:
確定所述發送數據的目的地址是否存儲在所述第一端點的靜態虛擬路由表中,所述靜態虛擬路由表包括所述第二網絡域的地址列表;如果目的地址存儲在所述靜態虛擬路由表中,則發送請求信息至控制器,以獲得控制器的批準。
具體的,如果目的地址未存儲在所述靜態虛擬路由表中,則將請求轉發到第一個網絡域內的本地tcp/ip網絡。
具體的,在所述第一端點存儲靜態虛擬路由表,所述靜態虛擬路由表包括通過虛擬網絡允許第一端點連接到的第二網絡域的目的地地址列表;當所述第一網絡域和所述第二網絡域的端點發生變化后,則更新所述靜態虛擬路由表。
具體的,所述確定是否通過連接第一網絡域與第二網絡域的虛擬網絡來提供連接具體包括:
具體的,所述方法還包括,計算與在所述第一終點中運行的應用程序相關聯的標識符;
將標識符與授權標識符的白名單進行比較;
如果標識符在白名單中,則確定允許通過虛擬網絡提供連接。
具體的,所述方法還包括,計算與在所述第一終點中運行的應用程序相關聯的標識符;
將標識符與標識符的黑名單進行比較;
如果標識符不在黑名單中,則確定允許通過虛擬網絡提供連接。
更具體的,所述第一或第二網絡域中的一個包括專用網絡域,并且所述第一或第二網絡域中的另一個包括公共網絡域。
更具體的,所述方法還包括:
如果不能通過虛擬網絡提供連接,則丟棄請求。
圖3示出了本發明計算機系統的系統框圖。例如,計算機系統包括監視器,鍵盤和大容量存儲設備。計算機系統還包括子系統,例如中央處理器302,系統存儲器304,輸入/輸出(i/o)控制器306,顯示適配器308,串行或通用串行總線(usb)端口312,網絡接口318和揚聲器320.在一個實施例中,計算機系統包括附加或更少的子系統。
計算機可以連接到網絡并且可以使用該網絡與其他計算機進行連接。網絡可能是內聯網,互聯網或因特網等。網絡可以是有線網絡(例如銅纜),電話網絡,分組網絡,光網絡(例如,使用光纖)或無線網絡,或這些的任何組合。例如,可以使用諸如wi-fi(ieee標準802.11,802.11a,802.11b,802.11e,802.11g的協議)的無線網絡在計算機和系統的組件(或步驟)之間傳遞數據和其他信息,802.11i和802.11n,僅舉幾個例子)。例如,來自計算機的信號可以至少部分地無線地傳送到組件或其他計算機。
在一個實施例中,通過在計算機工作站系統上的web瀏覽器,用戶通過諸如因特網的網絡訪問萬維網(www)上的系統。web瀏覽器用于下載各種格式的網頁或其他內容,包括html,xml,文本,pdf等,并可用于將信息上傳到系統的其他部分。web瀏覽器可以使用統一的資源標識符(url)來標識web上的資源和在web上傳輸文件的超文本傳輸協議(http)。
圖4示出了可以實現虛擬網絡平臺的分布式計算環境405的簡化框圖。所述環境包括連接第一和第二網絡域的第一網絡域410,第二網絡域415和網絡420。第一網絡域包括第一組終點425(例如,終點a1,終點a2,...,終點an)。第二網絡域包括第二組終點430(例如,終點b1,終點b2,...,終點bm)。網絡域中的端點可以例如通過網絡或本地網絡互連。
終點可以被稱為節點或計算節點。在具體實施例中,第一和第二網絡域是通過因特網分離和并且兩者之間是互連的。第一或第二網絡域中的一個可以包括私有云基礎設施。第一或第二網絡域中的另一個可以包括公共云基礎設施。所以在圖4的系統可以被稱為混合云系統。
混合云環境中的安全性是一個需要面臨的問題,因為底層網絡和基礎設施是由多個權限進行分配的。即使變更請求是由經過驗證和批準的業務案例驅動的,所有各方之間的安全重新配置協調可能是壓倒性的和被禁止的。本發明的平臺將部署在通過互聯網互連的兩個(或多個)分離的網絡域中的客戶端和服務器連接起來。
網絡域可以包括任何數量的端點。例如,可以有數百,數千甚至數百萬的終點。終點可以包括物理設備,虛擬設備或兩者都有。終點可以包括物理服務器(例如,刀片服務器),虛擬機(vm),虛擬網絡邊緣網關或其他物理或虛擬設備。
更具體地,終點可以包括具有一個或多個組件的通用計算系統,例如圖1所示的組件。例如,終點可以包括用戶界面,一個或多個處理器,網絡接口,大容量存儲器和存儲器。或者,一些實施例可以不包括用戶界面,或者用戶界面可能不直接連接到硬件平臺。例如,用戶交互可能會自動化或與數據中心管理有關的遠程進行。第一個終點可以包括客戶端。遠離第一個終點的第二個終點可以是服務器。服務器可以為客戶端承載應用服務。
虛擬機(vm)是執行諸如物理機器的程序的機器(例如,計算機)的軟件實現。換句話說,虛擬機是在“主機”硬件平臺上作為“訪客”安裝的物理計算機系統的模擬軟件。
網絡域可以是企業局域網(lan),服務器場環境,還有基礎架構即服務(iaas)云數據中心,可以由傳統的外圍防火墻來保護。兩個網絡域可以通過互聯網或任何tcp/ip網絡互連。
在一個實施例中,第一網絡域與第二網絡域不同并且分離開來。例如,域可以在不同的物理或地理位置,具有不同的能力,具有不同的計算機體系結構,具有不同的網絡環境,具有不同的物理設備,網絡基礎設施可以由不同的實體,公司,企業擁有,經營和管理,當局,各方或組織具有不同的管理政策,具有不同的存儲策略,具有不同的安全策略或這些策略的組合。
這兩個網絡域可以由同一企業擁有,但可能位于不同的地理位置。例如,一個網絡域可能在北京。另一個域名可能在上海。作為另一個例子,一個域或網絡基礎設施可以是私有的。另一個域或網絡基礎架構可能由將計算資源租給企業的第三方擁有。域可以是云計算或多租戶數據中心的一部分,可以有多個私有域,可以有多個公共域。
在一具體實施例中,第一或第二域中的一個是私有云。第一個或第二個域中的另一個是公共云。私有云是指可以由單個企業操作,控制或擁有的計算基礎設施(例如,硬件,軟件或兩者),計算基礎設施是企業內部的。公共云是指通過公開供公眾使用的網絡(例如因特網)呈現服務的計算基礎設施。公共云可以提供對可配置計算資源(例如,網絡,服務器,存儲,應用和服務)的共享池的按需網絡訪問。
在此具體實施例中,計算架構可以被稱為混合云。混合云是兩個或更多云(如私有云和公共云)的組合。混合云允許企業擴展其計算能力,而不必對物理空間和計算硬件等資產進行大量資本投資。企業也可以使用混合云來滿足對計算資源需求的高峰,可以在需要時支付計算資源。可能會與計算資源的云服務提供商簽訂租賃,租賃或其他合同協議,可以利用多個云服務提供商的服務。
圖5示出了本發明虛擬網絡平臺的具體實現的總體流程605的示意圖。
在步驟510中,在第一網絡域中的第一端點處接收要發送到目的地的數據分組(例如,請求數據)。數據包可以指示連接到目的地的請求地址。在具體實現中,請求來自應用程序的客戶端應用程序組件,以與應用程序的服務器組件進行連接。
然而,應當理解,請求或連接可以涉及連接到另一域中的任何類型的目的地的一個域中的任何類型的源,反之亦然。例如,在混合云環境中,存在實施“客戶端軟件”的服務器和實施“服務器軟件”的其他服務器。虛擬網絡平臺便于服務器在云域之間相互通信。在另一個具體實現中,有一個訪問應用程序,其中一個用戶的“客戶端機器”正在訪問“云”中的服務器。在這種情況下,以gnudebugger(gdb)為例,客戶端軟件隨即運行客戶端用戶機。該客戶端gdb軟件可以連接到在云端“服務器”上運行的服務器gdb軟件。
在步驟515中,確定是否應該通過將第一網絡域與不同于或與第一網絡域分開的第二網絡域的虛擬網絡來提供連接。
在步驟520中,如果通過虛擬網絡提供連接,則在第一網絡域中的第一終點與目的地之間建立虛擬網絡連接,目的地處于第二網絡域中的第二終點。
或者,在步驟525中,如果不應該通過虛擬網絡提供連接,則數據分組被傳遞到虛擬網絡之外。
在具體實現中,關于虛擬網絡是否應該被使用的決定可以在本地進行,也可以不經過虛擬網絡。例如,可以在始發域(例如,第一域)內做出該決定。此功能有助于節省虛擬網絡的計算資源,減少跨虛擬網絡的網絡流量,并防止瓶頸效應。虛擬網絡平臺為it管理員提供了靈活性,可以決定何時使用(或不使用)虛擬網絡在兩個或多個網絡域上傳輸數據的條件。例如,管理員可以使用系統來控制哪些應用程序將使用虛擬網絡,哪些應用程序將不使用虛擬網絡,或兩者兼而有之。
在具體實現中,系統存儲被授權或允許使用虛擬網絡的應用的列表。該列表可以被稱為白名單。在各種其他具體實現中,系統存儲未被授權或允許使用虛擬網絡的應用的列表。該列表可以被稱為黑名單。在具體實現中,允許未列在黑名單中的應用使用虛擬網絡。
圖6示出了用于本發明另一實施例的方法流程圖。在這個具體實現方式中,it管理員將對中央控制器進行編程,以定義用戶和用戶組(因此,他們的計算機(例如筆記本電腦)在計算機上并自動成為端點并登錄系統時)以及運行某些企業應用程序以在虛擬網絡平臺上訪問的服務器或虛擬機。然后,管理員將定義訪問規則(安全性),誰可以訪問什么,在什么情況下和運行什么應用程序(例如,哪些特定服務器已加載這些應用程序)。一旦定義了這些安全規則,用戶(例如,作為終點的客戶端計算機)將能夠使用虛擬網絡平臺來安全地訪問在分離的網絡域中的其他端點上運行的所配置的應用程序。
在步驟610中,it管理員使用控制器的管理模塊來定義用戶,用戶組,應用和終點。定義規則可以存儲在配置文件或數據庫中。管理模塊可以包括圖形用戶界面(gui),使得管理員可以容易地管理系統。
it管理者可根據實際需要設置對應的用戶或者用戶組的表格用以記錄對應的規則。可以是設置一個白名單的表格,也可以設置一個黑名單的表格等等。
在步驟615中,安全策略被定義并存儲在策略數據庫中。如上所述,策略可以包括誰可以訪問什么,在什么情況下和運行什么應用程序(例如,哪些特定服務器已經加載了這些應用程序)的規則。策略可能包括要評估的程式化表達式,條件語句(例如,如果x然后執行yelsedoz),嵌套條件,多條件,布爾運算符(例如,or,and或not)或這些組合。
作為具體示例,例如,考慮用戶a可以訪問在第二網絡域中在服務器a上運行的特定應用的情況。當用戶a連接到服務器a并訪問應用程序時,在這種情況下,允許另一個用戶b同時訪問服務器a并訪問第二個應用程序。換句話說,可以存在這樣的策略,使得用戶b的訪問權限僅在用戶a進行到同一服務器的訪問時被授予。這樣的策略是有利于安全的,其中,用戶a是部署服務器a的域的員工。user-b是一個正在幫助正在開發應用程序的用戶a的供應商。根據該策略,供應商,用戶b不能單獨訪問服務器a。只有當用戶a連接到服務器a時,才允許他的訪問。
在步驟620中,將虛擬網絡代理(例如,控制守護程序和虛擬網絡代理)以及虛擬路由表提供給端點和虛擬網絡交換機。
圖7示出了本發明虛擬網絡平臺的技術的方法流程圖。
在步驟710中,分配ip地址。
在步驟715中,應用程序被配置為使用虛擬網絡。在該示例中,應用客戶端軟件被配置為使得它理解第二虛擬ip地址(“vipb”)是到達應用服務器軟件的ip地址。
在步驟720中,為虛擬網絡代理創建靜態虛擬路由表。這些表幫助虛擬網絡代理(例如,vnpa或vnpb)進行過濾業務,并決定是否經由虛擬網絡或本地tcp/ip網絡轉發數據包。
在步驟725中,根據靜態虛擬路由表接收和過濾業務或數據分組。沒有靜態路由表中列出的路由地址的數據包轉發到本地tcp/ip網絡(步驟730)。
接著,客戶端管理器隨后根據需要檢查控制器的安全許可(步驟735)。虛擬網絡交換機(vns1)創建連接會話(步驟745)。如果安全檢查失敗(步驟740),則阻止應用程序客戶端連接到應用程序服務器。
在步驟750中,創建動態路由表。在步驟750中,為虛擬網絡代理和虛擬網絡交換機創建動態虛擬網絡路由表。然后根據動態路由表路由第一和第二網絡域之間的業務(步驟755)。
在沒有靜態路由表中列出的路由地址的數據包轉發到本地tcp/ip網絡(步驟730)。
圖8示出了本發明另一實施例的方法流程圖。
如圖8,在步驟810中,系統存儲與被授權或允許使用虛擬網絡的特定應用程序相關聯的標識符或預定標識符。標識符可以由系統計算,或者可以使用系統外部的算法來計算標識符。標識符可以是有助于唯一標識應用程序的特定版本的任何數據單元。在具體實現中,標識符包括與應用程序的特定版本相關聯的校驗和。應用程序的標識符可以包括簽名,散列值,指紋或這些的組合。在具體實現中,可以將標識符提供給網絡域中的一個或多個端點并將其存儲在網絡域中的一個或多個端點。
在步驟815中,從應用程序的客戶端組件接收請求以連接到應用程序的服務器組件。例如,可以在端點處的終端模塊(例如,客戶端管理器)處接收該請求。
在步驟820中,相應的客戶端或服務器管理器確定與應用程序相關聯的標識符是否與存儲的與特定應用程序相關聯的標識符相匹配。如果存在匹配,則在步驟825中,可允許客戶端組件通過虛擬網絡連接到服務器組件。在具體實現中,使用虛擬網絡需要得到控制器的進一步批準。在另一具體實現方式中,允許使用虛擬網絡,而無需得到控制器的許可。在安全性比例如響應時間和網絡性能更少的情況下,這種具體實現是可取的。
或者如果不匹配,則在步驟830中,客戶端組件不允許通過虛擬網絡連接到服務器組件。換句話說,在具體實現中,標識符與被授權使用虛擬網絡的每個應用程序相關聯。在具體實現中,當第一網絡域中的第一端點處的客戶端應用程序經由虛擬網絡嘗試連接到第二網絡域中的第二終端處的服務器應用時,執行檢查以確定應用被授權使用虛擬網絡。檢查包括將與應用相關聯的標識符與與授權應用相關聯的標識符列表進行比較(步驟820)。如果存在匹配,則可以在兩個端點之間允許虛擬網絡連接(步驟825)。如果沒有匹配,則不允許虛擬網絡連接(步驟830)。
在另一具體實現方式中,系統存儲被禁止的應用程序或不允許用戶使用虛擬網絡的應用程序相關聯的標識符列表。在該具體實現方式中,檢查包括將與應用相關聯的標識符與與禁用或未經授權的應用相關聯的標識符列表進行比較。如果有匹配,兩個端點之間不允許虛擬網絡連接。如果沒有匹配,兩個端點之間允許虛擬網絡連接。
應理解,說明書通篇中提到的“一個實施例”或“一實施例”意味著與實施例有關的特定特征、結構或特性包括在本發明的至少一個實施例中。因此,在整個說明書各處出現的“在一個實施例中”或“在一實施例中”未必一定指相同的實施例。此外,這些特定的特征、結構或特性可以任意適合的方式結合在一個或多個實施例中。應理解,在本發明的各種實施例中,上述各過程的序號的大小并不意味著執行順序的先后,各過程的執行順序應以其功能和內在邏輯確定,而不應對本發明實施例的實施過程構成任何限定。上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。
需要說明的是,在本文中,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
在本申請所提供的幾個實施例中,應該理解到,所揭露的設備和方法,可以通過其它的方式實現。以上所描述的設備實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,如:多個單元或組件可以結合,或可以集成到另一個系統,或一些特征可以忽略,或不執行。另外,所顯示或討論的各組成部分相互之間的耦合、或直接耦合、或通信連接可以是通過一些接口,設備或單元的間接耦合或通信連接,可以是電性的、機械的或其它形式的。
上述作為分離部件說明的單元可以是、或也可以不是物理上分開的,作為單元顯示的部件可以是、或也可以不是物理單元;既可以位于一個地方,也可以分布到多個網絡單元上;可以根據實際的需要選擇其中的部分或全部單元來實現本實施例方案的目的。
另外,在本發明各實施例中的各功能單元可以全部集成在一個處理單元中,也可以是各單元分別單獨作為一個單元,也可以兩個或兩個以上單元集成在一個單元中;上述集成的單元既可以采用硬件的形式實現,也可以采用硬件加軟件功能單元的形式實現。
本領域普通技術人員可以理解:實現上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲于計算機可讀取存儲介質中,該程序在執行時,執行包括上述方法實施例的步驟;而前述的存儲介質包括:移動存儲設備、只讀存儲器(readonlymemory,rom)、磁碟或者光盤等各種可以存儲程序代碼的介質。
或者,本發明上述集成的單元如果以軟件功能模塊的形式實現并作為獨立的產品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發明實施例的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機、服務器、或者網絡設備等)執行本發明各個實施例所述方法的全部或部分。而前述的存儲介質包括:移動存儲設備、rom、磁碟或者光盤等各種可以存儲程序代碼的介質。
以上所述,僅為本發明的具體實施方式,但本發明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應以所述權利要求的保護范圍為準。