用于云計(jì)算平臺(tái)安全性的認(rèn)證和授權(quán)方法
【專利摘要】用于云計(jì)算環(huán)境的認(rèn)證和授權(quán)插件模型使得云客戶能夠在將他們的應(yīng)用部署在云中時(shí)保留對(duì)他們的企業(yè)信息的控制。云服務(wù)提供商提供了用于客戶安全模塊的可插拔接口。當(dāng)客戶部署應(yīng)用時(shí),云環(huán)境管理員為客戶的應(yīng)用和數(shù)據(jù)分配資源組(例如處理器、存儲(chǔ)器和貯存器)。客戶向云安全服務(wù)注冊(cè)其自己的認(rèn)證和授權(quán)安全模塊,并且該安全模塊然后用于控制什么人或?qū)嶓w可訪問與部署的應(yīng)用相關(guān)聯(lián)的信息。然而,云環(huán)境管理員一般沒有在客戶安全模塊內(nèi)注冊(cè)(作為許可用戶);因此,云環(huán)境管理員無法訪問(或釋放給其它方或云的通用資源池)分配給云客戶的資源(即使管理員自己分配了這些資源)或相關(guān)聯(lián)的業(yè)務(wù)信息。為了進(jìn)一步均衡各方的權(quán)限,第三方公證人服務(wù)在客戶的應(yīng)用和信息被部署在云中時(shí)保護(hù)客戶的隱私和訪問權(quán)限。
【專利說明】用于云計(jì)算平臺(tái)安全性的認(rèn)證和授權(quán)方法
【技術(shù)領(lǐng)域】
[0001]本公開內(nèi)容總體上涉及在資源以可配置計(jì)算資源的共享池為宿主的環(huán)境中確保業(yè)務(wù)信息的完整性、保密性和隱私性。
【背景技術(shù)】
[0002]用戶認(rèn)證是服務(wù)提供商提供的確保訪問資源(例如應(yīng)用、網(wǎng)頁內(nèi)容等)的用戶被授權(quán)這樣做的ー種功能。為了確保用戶不是冒充者,服務(wù)提供商(例如網(wǎng)絡(luò)服務(wù)器)通常詢問用戶的用戶名和密碼,以在授權(quán)對(duì)資源的訪問之前證明身份。單點(diǎn)登錄(SSO)是使得用戶能夠認(rèn)證一次(例如提供用戶名和密碼)并跨多個(gè)系統(tǒng)獲得對(duì)軟件資源的訪問的訪問控制機(jī)制。一般,SSO系統(tǒng)使得用戶能夠訪問企業(yè)或組織內(nèi)的資源。聯(lián)合單點(diǎn)登錄(F-SSO)跨多個(gè)企業(yè)擴(kuò)展了單點(diǎn)登錄的概念,因此在不同組織和企業(yè)之間建立了合作關(guān)系。F-SSO系統(tǒng)ー般包括允許ー個(gè)企業(yè)(例如身份提供商)向另ー企業(yè)(例如服務(wù)提供商)提供用戶的身份和其它屬性的應(yīng)用級(jí)協(xié)議。
[0003]新興的信息技術(shù)(IT)傳送模型是云計(jì)算,利用該云計(jì)算,根據(jù)需求經(jīng)由因特網(wǎng)向計(jì)算機(jī)和其它設(shè)備提供共享資源、軟件和信息。云計(jì)算可以顯著降低IT成本和復(fù)雜度,同時(shí)改進(jìn)工作負(fù)載優(yōu)化和服務(wù)傳送。利用該方法,應(yīng)用實(shí)例可以以經(jīng)由HTTP通過傳統(tǒng)的網(wǎng)絡(luò)瀏覽器可訪問的基于因特網(wǎng)的資源為宿主,并可從這些基于因特網(wǎng)的資源可獲得。
[0004]盡管云計(jì)算提供了許多優(yōu)點(diǎn),但數(shù)據(jù)安全性是主要關(guān)注。特別地,期望在云環(huán)境內(nèi)部署其企業(yè)應(yīng)用的公司經(jīng)常保持并管理與這種應(yīng)用相關(guān)聯(lián)的重要業(yè)務(wù)信息。當(dāng)在云中部署這些應(yīng)用時(shí),該重要業(yè)務(wù)信息必然暴露給云計(jì)算服務(wù)提供商。結(jié)果,該業(yè)務(wù)信息處于風(fēng)險(xiǎn)中,因?yàn)樵朴?jì)算環(huán)境根據(jù)其本質(zhì)將信息置于云計(jì)算服務(wù)提供商的管理控制內(nèi)。盡管可能存在技術(shù)和法律保護(hù),但無法絕對(duì)確保業(yè)務(wù)信息的完整性、保密性和隱私性。僅作為一個(gè)示例場景,如果云服務(wù)提供商被獲取,則企業(yè)業(yè)務(wù)信息會(huì)暴露給第三方,甚至是潛在競爭者。這是不合理的。
[0005]直到云提供商的客戶能確信他們能對(duì)他們的業(yè)務(wù)信息保持安全控制為止,他們將在云計(jì)算環(huán)境中部署他們的重要業(yè)務(wù)應(yīng)用方面猶豫不決。本公開內(nèi)容的主題解決該問題。
【發(fā)明內(nèi)容】
[0006]該公開內(nèi)容描述了用于云計(jì)算環(huán)境的認(rèn)證和授權(quán)插件模型,使得當(dāng)云客戶在云中部署應(yīng)用和他們的企業(yè)信息時(shí)能夠保持對(duì)該信息的控制。為此,云服務(wù)提供商使得企業(yè)客戶能夠(例如通過插件服務(wù))插入(到環(huán)境)并且使用客戶自己的認(rèn)證和授權(quán)安全模塊。
[0007]云服務(wù)提供商具有云環(huán)境管理員,該云環(huán)境管理員為向云環(huán)境部署應(yīng)用的客戶分配資源組。當(dāng)客戶部署應(yīng)用時(shí),云環(huán)境管理員為客戶的應(yīng)用和數(shù)據(jù)分配資源組(例如處理器、存儲(chǔ)器和貯存器)。客戶利用云安全服務(wù)注冊(cè)其認(rèn)證和授權(quán)安全模塊,并且該安全模塊然后用于控制什么人或?qū)嶓w能訪問與部署的應(yīng)用相關(guān)聯(lián)的信息。然而,云環(huán)境管理員沒有在客戶的安全模塊內(nèi)注冊(cè)(作為許可用戶);因此,云環(huán)境管理員無法訪問(或釋放給其它方或云的通用資源池)分配給云客戶的資源(即使管理員自己分配了這些資源)或相關(guān)聯(lián)的業(yè)務(wù)信息。
[0008]插件安全模型確保企業(yè)客戶的信息是安全的。為了幫助該方法,提供第三方公證服務(wù)作為企業(yè)客戶與云提供商之間的中介。第三方公證服務(wù)可與一個(gè)或更多個(gè)云提供商相關(guān)聯(lián),但是它是不受云提供商控制的不同且獨(dú)立的實(shí)體。公證人可以是政府實(shí)體、私有實(shí)體、公共實(shí)體等。公證人用作能證明(優(yōu)選地以自動(dòng)的方式)客戶、云提供商和第三方公證服務(wù)之間的協(xié)定的證明人(或更一般的,授權(quán)第三方)。除其它規(guī)定外,該協(xié)定還提供了分配給云客戶的資源組或多個(gè)資源組(即云資源)僅可在特定情況下被釋放以由另ー客戶使用。一個(gè)示例情況是云環(huán)境管理員和云客戶管理員兩者均登錄以核準(zhǔn)釋放,進(jìn)ー步條件是在這種釋放之前擦除內(nèi)容(例如客戶的業(yè)務(wù)信息)。另ー示例情況是接收許可公證用戶和云環(huán)境管理員的登錄,這可能在客戶違背根據(jù)云服務(wù)協(xié)定的一些義務(wù)的情況下出現(xiàn)。然而,即使在此場景中,資源組的釋放的條件是擦除(現(xiàn)在之前的)客戶的信息。該方法確保云環(huán)境管理員無法單方面收回分配給客戶的資源和/或查看客戶敏感的信息,即使在客戶違反了服務(wù)協(xié)定并且要終止客戶的情況下也是如此。
[0009]上文概述了本發(fā)明的更相關(guān)特征中的ー些。這些特征應(yīng)被解釋為僅是例示性的。通過如將要描述的以不同方式應(yīng)用所公開的發(fā)明或通過修改本發(fā)明,可獲得許多其它有益效果。
【專利附圖】
【附圖說明】
[0010]為了更完全地理解本發(fā)明及其優(yōu)點(diǎn),現(xiàn)在結(jié)合附圖參照以下描述,其中:
[0011]圖1描繪可實(shí)現(xiàn)說明性實(shí)施例的示例性方面的分布式數(shù)據(jù)處理環(huán)境的示例性框圖;
[0012]圖2是可實(shí)現(xiàn)說明性實(shí)施例的示例性方面的數(shù)據(jù)處理系統(tǒng)的示例性框圖;
[0013]圖3是圖示公知的聯(lián)合單點(diǎn)登錄(F-SSO, Federated Single Sign-On)技術(shù)的示例性框圖;
[0014]圖4描繪根據(jù)本發(fā)明的實(shí)施例的可實(shí)現(xiàn)身份提供者發(fā)現(xiàn)處理的云計(jì)算環(huán)境的抽象模型層;
[0015]圖5是圖示分配給部署的客戶應(yīng)用的云資源和公知云計(jì)算環(huán)境的示例性框圖;
[0016]圖6圖示根據(jù)本公開內(nèi)容的確保客戶數(shù)據(jù)的云計(jì)算平臺(tái)安全性的認(rèn)證和授權(quán)模型;
[0017]圖7圖示根據(jù)本公開內(nèi)容的如何將特定于客戶的認(rèn)證和授權(quán)模型插入到云架構(gòu)中;
[0018]圖8圖示公證服務(wù)如何與云租戶和云提供商進(jìn)行交互以幫助形成對(duì)資源組的安全的、電子的和不可否認(rèn)的租約;以及
[0019]圖9圖示系統(tǒng)的典型使用場景。
【具體實(shí)施方式】
[0020]現(xiàn)在參照附圖,特別參照?qǐng)D1-2,提供了可實(shí)現(xiàn)本公開內(nèi)容的說明性實(shí)施例的數(shù)據(jù)處理環(huán)境的示例性圖。應(yīng)該理解,圖1-2僅是示例性的,并不是g在聲稱或暗示關(guān)于可實(shí)現(xiàn)所公開的主題的方面或?qū)嵤├沫h(huán)境的任何限制。在不脫離本發(fā)明的精神和范圍的情況下,可對(duì)描繪的環(huán)境做出許多修改。
[0021]客戶端-服務(wù)器模型
[0022]現(xiàn)在參照附圖,圖1描繪可實(shí)現(xiàn)說明性實(shí)施例的方面的示例性分布式數(shù)據(jù)處理系統(tǒng)的圖形表示。分布式數(shù)據(jù)處理系統(tǒng)100可包括可實(shí)現(xiàn)說明性實(shí)施例的方面的計(jì)算機(jī)網(wǎng)絡(luò)。分布式數(shù)據(jù)處理系統(tǒng)100包含至少ー個(gè)網(wǎng)絡(luò)102,網(wǎng)絡(luò)102是用于在分布式數(shù)據(jù)處理系統(tǒng)100內(nèi)連接在一起的各種設(shè)備與計(jì)算機(jī)之間提供通信鏈路的介質(zhì)。網(wǎng)絡(luò)102可包括諸如有線、無線通信鏈路或光纖光纜的連接。
[0023]在描繪的示例中,服務(wù)器104和服務(wù)器106與存儲(chǔ)單元108 —起連接到網(wǎng)絡(luò)102。此外,客戶端110、112和114也連接到網(wǎng)絡(luò)102。這些客戶端110、112和114例如可以是個(gè)人計(jì)算機(jī)、網(wǎng)絡(luò)計(jì)算機(jī)等。在描繪的示例中,服務(wù)器104向客戶端110、112和114提供數(shù)據(jù),例如引導(dǎo)文件、操作系統(tǒng)映像和應(yīng)用。在描繪的示例中,客戶端110、112和114是服務(wù)器104的客戶端。分布式數(shù)據(jù)處理系統(tǒng)100可包括未示出的附加服務(wù)器、客戶端和其它設(shè)備。
[0024]在描繪的示例中,分布式數(shù)據(jù)處理系統(tǒng)100是具有網(wǎng)絡(luò)102的因特網(wǎng),該網(wǎng)絡(luò)102表示使用傳輸控制協(xié)議/因特網(wǎng)協(xié)議(TCP/IP)的協(xié)議套件彼此進(jìn)行通信的世界范圍的網(wǎng)絡(luò)和網(wǎng)關(guān)的集合。因特網(wǎng)的中心是主節(jié)點(diǎn)或主計(jì)算機(jī)之間的高速數(shù)據(jù)通信線路的骨干,由對(duì)數(shù)據(jù)和消息進(jìn)行路由的成千上萬的商業(yè)、政府、教育和其它計(jì)算機(jī)系統(tǒng)構(gòu)成。當(dāng)然,分布式數(shù)據(jù)處理系統(tǒng)100也可被實(shí)現(xiàn)為包括許多不同類型的網(wǎng)絡(luò),例如內(nèi)聯(lián)網(wǎng)、局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)等。如上所述,圖1 g在作為示例,而不是作為所公開的主題的不同實(shí)施例的架構(gòu)限制,因此,圖1中示出的特定部件不應(yīng)被視為對(duì)可實(shí)現(xiàn)本發(fā)明的說明性實(shí)施例的環(huán)境的限制。
[0025]現(xiàn)在參照?qǐng)D2,示出了可實(shí)現(xiàn)說明性實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。數(shù)據(jù)處理系統(tǒng)200是諸如圖1中的服務(wù)器104或客戶端110的計(jì)算機(jī)的示例,在該計(jì)算機(jī)中針對(duì)說明性實(shí)施例可存在實(shí)現(xiàn)處理的計(jì)算機(jī)可用程序代碼或指令。在該說明性示例中,數(shù)據(jù)處理系統(tǒng)200包括通信組織202,該通信組織202在處理器單元204、貯存器206、持久存儲(chǔ)器208、通信單元210、輸入/輸出(I/O)單元212和顯示器214之間提供通信。
[0026]處理器単元204用于運(yùn)行可加載到貯存器206的軟件指令。根據(jù)特定實(shí)現(xiàn)方式,處理器単元204可以是ー個(gè)或更多個(gè)處理器的集合,或者可以是多處理器內(nèi)核。另外,處理器単元204可使用一個(gè)或更多個(gè)異構(gòu)處理器系統(tǒng)來實(shí)現(xiàn),在異構(gòu)處理器系統(tǒng)中,主處理器與次級(jí)處理器一起存在于單個(gè)芯片上。作為另ー說明性示例,處理器単元204可以是包含同一類型的多個(gè)處理器的對(duì)稱多處理器(SMP)系統(tǒng)。
[0027]貯存器206和持久存儲(chǔ)器208是存儲(chǔ)設(shè)備的示例。存儲(chǔ)設(shè)備是能夠暫時(shí)和/或永久存儲(chǔ)信息的任意硬件。在這些示例中,貯存器206例如可以是隨機(jī)存取貯存器或者任意其它合適的易失性或非易失性存儲(chǔ)設(shè)備。根據(jù)特定實(shí)現(xiàn)方式,持久存儲(chǔ)器208可采用各種形式。例如,持久存儲(chǔ)器208可包含一個(gè)或更多個(gè)組件或設(shè)備。例如,持久存儲(chǔ)器208可以是硬盤驅(qū)動(dòng)器、閃存、可重寫光盤、可重寫磁帶或上述的ー些組合。持久存儲(chǔ)器208使用的介質(zhì)也可以是可移除的。例如,可移除硬盤驅(qū)動(dòng)器可用于持久存儲(chǔ)器208。
[0028]在這些示例中,通信単元210提供與其它數(shù)據(jù)處理系統(tǒng)或設(shè)備的通信。在這些示例中,通信単元210是網(wǎng)絡(luò)接ロ卡。通信単元210可通過使用物理和無線通信鏈路中的任ー個(gè)或二者來提供通信。
[0029]輸入/輸出單元212允許與可連接到數(shù)據(jù)處理系統(tǒng)200的其它設(shè)備進(jìn)行數(shù)據(jù)的輸入和輸出。例如,輸入/輸出單元212可通過鍵盤和鼠標(biāo)提供用于用戶輸入的連接。另外,輸入/輸出單元212可向打印機(jī)發(fā)送輸出。顯示器214提供向用戶顯示信息的機(jī)構(gòu)。
[0030]用于操作系統(tǒng)和應(yīng)用或程序的指令位于持久存儲(chǔ)器208上。這些指令可加載到貯存器206以被處理器單元204運(yùn)行??捎商幚砥鲄g元204使用計(jì)算機(jī)實(shí)現(xiàn)的指令來執(zhí)行不同實(shí)施例的處理,其中計(jì)算機(jī)實(shí)現(xiàn)的指令可位于諸如貯存器206的貯存器中。這些指令被稱為可由處理器単元204中的處理器讀取并運(yùn)行的程序代碼、計(jì)算機(jī)可用程序代碼或計(jì)算機(jī)可讀程序代碼。不同實(shí)施例中的程序代碼可被實(shí)施在諸如貯存器206或持久存儲(chǔ)器208的不同物理或有形計(jì)算機(jī)可讀介質(zhì)上。
[0031]程序代碼216以功能形式位于選擇性地可移除的計(jì)算機(jī)可讀介質(zhì)218上,并且可被加載到或傳送到數(shù)據(jù)處理系統(tǒng)200以被處理器單元204運(yùn)行。在這些示例中,程序代碼216和計(jì)算機(jī)可讀介質(zhì)218形成計(jì)算機(jī)程序產(chǎn)品220。在一個(gè)示例中,計(jì)算機(jī)可讀介質(zhì)218可以是有形形式,例如光盤或磁盤,該光盤或磁盤被插入或放置到作為持久存儲(chǔ)器208的一部分的驅(qū)動(dòng)器或其它設(shè)備中,以便傳送到諸如作為持久存儲(chǔ)器208的一部分的硬盤驅(qū)動(dòng)器的存儲(chǔ)設(shè)備上。以有形形式,計(jì)算機(jī)可讀介質(zhì)218也可采用持久存儲(chǔ)器的形式,例如連接到數(shù)據(jù)處理系統(tǒng)200的硬盤驅(qū)動(dòng)器、拇指驅(qū)動(dòng)器(thumb drive)或閃存。計(jì)算機(jī)可讀介質(zhì)218的有形形式也被稱為計(jì)算機(jī)可記錄存儲(chǔ)介質(zhì)。在一些情況下,計(jì)算機(jī)可記錄介質(zhì)218可以不是可移除的。
[0032]替選地,程序代碼216可通過與通信単元210的通信鏈路和/或通過與輸入/輸出単元212的連接從計(jì)算機(jī)可讀介質(zhì)218傳送到數(shù)據(jù)處理系統(tǒng)200。在說明性示例中,通信鏈路和/或連接可以是物理的或無線的。計(jì)算機(jī)可讀介質(zhì)也可采用非有形介質(zhì)的形式,例如包含程序代碼的通信鏈路或無線傳輸。針對(duì)數(shù)據(jù)處理系統(tǒng)200說明的不同組件并不意味著對(duì)可實(shí)現(xiàn)不同實(shí)施例的方式提供架構(gòu)限制。不同的說明性實(shí)施例可在如下數(shù)據(jù)處理系統(tǒng)中實(shí)現(xiàn),該數(shù)據(jù)處理系統(tǒng)包括附加到或替換針對(duì)數(shù)據(jù)處理系統(tǒng)200說明的組件的組件。圖2中所示的其它組件可與所示的說明性示例不同。作為ー個(gè)示例,數(shù)據(jù)處理系統(tǒng)200中的存儲(chǔ)設(shè)備是可存儲(chǔ)數(shù)據(jù)的任意硬件裝置。貯存器206、持久存儲(chǔ)器208和計(jì)算機(jī)可讀介質(zhì)218是有形形式的存儲(chǔ)設(shè)備的示例。
[0033]在另ー示例中,總線系統(tǒng)可用于實(shí)現(xiàn)通信組織202,并且可包括一條或更多條總線,例如系統(tǒng)總線或輸入/輸出總線。當(dāng)然,可使用在附連到總線系統(tǒng)的不同組件或設(shè)備之間提供數(shù)據(jù)傳送的任意合適類型的架構(gòu)來實(shí)現(xiàn)總線系統(tǒng)。另外,通信単元可包括用于發(fā)送和接收數(shù)據(jù)的一個(gè)或更多個(gè)設(shè)備,例如調(diào)制解調(diào)器或網(wǎng)絡(luò)適配器。另外,例如,貯存器可以是例如在可存在于通信組織202中的接口和貯存器控制器集線器中發(fā)現(xiàn)的貯存器206或高速緩存。
[0034]用于執(zhí)行本發(fā)明的操作的計(jì)算機(jī)程序代碼可以用一種或更多種編程語言的任意組合編寫,編程語目包括面向?qū)ο蟮木幊陶Z目(例如Java、Smalltalk、C++等)、和傳統(tǒng)的過程編程語言(例如“C”編程語言或類似的編程語言)。程序代碼可全部運(yùn)行在用戶的計(jì)算機(jī)上、部分運(yùn)行在用戶的計(jì)算機(jī)上,作為單獨(dú)的軟件封包,部分地運(yùn)行在用戶的計(jì)算機(jī)上并且部分地運(yùn)行在遠(yuǎn)程計(jì)算機(jī)上,或者全部運(yùn)行在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上。在后ー場景下,遠(yuǎn)程計(jì)算機(jī)可通過任意類型的網(wǎng)絡(luò)(包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN))連接到用戶的計(jì)算機(jī),或者可連接到外部計(jì)算機(jī)(例如,通過使用因特網(wǎng)服務(wù)提供商的因特網(wǎng))。
[0035]本領(lǐng)域技術(shù)人員將理解,圖1-2中的硬件可根據(jù)實(shí)現(xiàn)方式而變化。除了圖1-2中描繪的硬件以外,還可以使用其它內(nèi)部硬件或外設(shè),例如閃存、等同的非易失性存儲(chǔ)器或光盤驅(qū)動(dòng)器等,或者可以使用其它內(nèi)部硬件或外設(shè)來代替圖1-2中描繪的硬件。而且,在不偏離所公開的主題的精神和范圍的情況下,可將說明性實(shí)施例的處理應(yīng)用于除之前提到的SMP系統(tǒng)之外的多處理器數(shù)據(jù)處理系統(tǒng)。
[0036]諸如圖1所示的標(biāo)準(zhǔn)客戶端-服務(wù)器模式是這樣的模式,在該模式中客戶端機(jī)器與運(yùn)行在一個(gè)或更多個(gè)機(jī)器的集合上的因特網(wǎng)可訪問的基于網(wǎng)頁的門戶網(wǎng)站進(jìn)行通信。特別地,終端用戶操作能夠訪問門戶網(wǎng)站并與門戶網(wǎng)站進(jìn)行交互的因特網(wǎng)可連接設(shè)備(例如桌上型計(jì)算機(jī)、筆記本電腦、因特網(wǎng)使能的移動(dòng)設(shè)備等)。一般,每個(gè)客戶端或服務(wù)器機(jī)器是諸如圖2中所示的包括硬件和軟件的數(shù)據(jù)處理系統(tǒng),并且這些實(shí)體經(jīng)由諸如因特網(wǎng)、內(nèi)聯(lián)網(wǎng)、外聯(lián)網(wǎng)、專有網(wǎng)絡(luò)或者任何其它通信介質(zhì)或鏈路的網(wǎng)絡(luò)彼此進(jìn)行通信。數(shù)據(jù)處理系統(tǒng)ー般包括一個(gè)或更多個(gè)處理器、操作系統(tǒng)、一個(gè)或更多個(gè)應(yīng)用和一個(gè)或更多個(gè)實(shí)用工具。數(shù)據(jù)處理系統(tǒng)上的應(yīng)用提供對(duì)Web服務(wù)的本地支持,包括但不限于對(duì)HTTP、SOAP、XML、WSDL、UDDI和WSFL等的支持。關(guān)于SOAP、WSDL、UDDI和WSFL的信息可從萬維網(wǎng)聯(lián)盟(W3C)獲得,W3C負(fù)責(zé)開發(fā)并維護(hù)這些標(biāo)準(zhǔn);關(guān)于HTTP和XML的其它信息可從因特網(wǎng)工程任務(wù)組(IETF)獲得。假設(shè)熟悉了這些標(biāo)準(zhǔn)。
[0037]作為附加的背景,如在本文中使用的,“斷言”提供某個(gè)動(dòng)作的間接證據(jù)。斷言可提供身份、認(rèn)證、屬性、授權(quán)決策或其它信息和/或操作的間接證據(jù)。認(rèn)證斷言提供由不是認(rèn)證服務(wù)但是監(jiān)聽認(rèn)證服務(wù)的實(shí)體進(jìn)行的認(rèn)證的間接證據(jù)。如現(xiàn)有技術(shù)中已知的,安全斷言標(biāo)記語言(SAML)斷言是可與本發(fā)明一起使用的可能斷言格式的示例。SAML已由作為非盈利全球組織的結(jié)構(gòu)化信息標(biāo)準(zhǔn)推動(dòng)組織(OASIS)頒布。在“Assertion andProtocol for the OASIS Security Assertion Markup Language (SAML),,,CommitteeSpecificationOl, 05/31/2002 中對(duì) SAML 進(jìn)行了如下描述。
[0038]安全斷言標(biāo)記語言(SAML)是用于交換安全信息的基于XML的框架。該安全信息以關(guān)于主體的斷言形式來表達(dá),其中主體是具有某個(gè)安全域中的身份的實(shí)體(人或計(jì)算機(jī))。主體的典型示例是人,該人由他或她在特定因特網(wǎng)DNS域中的電子郵件地址來標(biāo)識(shí)。斷言可傳達(dá)關(guān)于由主體執(zhí)行的認(rèn)證動(dòng)作的信息、主體的屬性、和關(guān)于是否允許主體訪問特定資源的授權(quán)決策。斷言被表示為XML構(gòu)造并且具有嵌套結(jié)構(gòu),由此單個(gè)斷言可包含關(guān)于認(rèn)證、授權(quán)和屬性的若干不同的內(nèi)部語句。注意,包含認(rèn)證語句的斷言僅描述之前發(fā)生的認(rèn)證的動(dòng)作。斷言由SAML權(quán)威機(jī)構(gòu),即認(rèn)證權(quán)威機(jī)構(gòu)、屬性權(quán)威機(jī)構(gòu)和策略決策點(diǎn)來發(fā)布。SAML定義如下協(xié)議,通過該協(xié)議,客戶端可從SAML權(quán)威機(jī)構(gòu)請(qǐng)求斷言并從SAML權(quán)威機(jī)構(gòu)獲得響應(yīng)。由基于XML的請(qǐng)求和響應(yīng)消息格式組成的該協(xié)議可綁定到許多不同的基礎(chǔ)通信和傳輸協(xié)議;SAML當(dāng)前定義了一個(gè)經(jīng)由HTTP到SOAP的綁定。SAML權(quán)威機(jī)構(gòu)可在創(chuàng)建其響應(yīng)時(shí)使用諸如外部策略庫的各種信息源和在請(qǐng)求中作為輸入接收的斷言。因此,盡管客戶端總是消費(fèi)斷目,但SAML權(quán)威機(jī)構(gòu)可以是斷目的生廣者和消費(fèi)者。
[0039]SAML規(guī)范說明了斷言是提供由發(fā)布者做出的一個(gè)或更多個(gè)語句的信息的封裝。SAML允許發(fā)布者做出三種不同類型的斷言語句:認(rèn)證,其中規(guī)定的主體在特定時(shí)間通過特定方式被認(rèn)證;授權(quán),其中允許規(guī)定的主體訪問規(guī)定的資源的請(qǐng)求已被授權(quán)或拒絕;以及屬性,其中規(guī)定的主體與提供的屬性相關(guān)聯(lián)。
[0040]認(rèn)證是證實(shí)由用戶或用戶代表提供的證書集合的處理。通過驗(yàn)證用戶知道的某事、用戶具有的某物或用戶是什么(即,關(guān)于用戶的某些物理特性)來完成認(rèn)證。用戶知道的某事可包括共享秘密,例如用戶的密碼,或者通過驗(yàn)證僅特定用戶知道的某事,例如用戶的加密密鑰。用戶具有的某物可包括智能卡或硬件令牌。關(guān)于用戶的某些物理特性可包括生物特征輸入,例如指紋或視網(wǎng)膜圖。應(yīng)該注意,用戶一般(但不一定)是自然人;用戶可以是使用計(jì)算資源的機(jī)器、計(jì)算設(shè)備或其它類型的數(shù)據(jù)處理系統(tǒng)。還應(yīng)注意,用戶一般(但不一定)處理單個(gè)唯一標(biāo)識(shí)符;在某些場景中,多個(gè)唯一標(biāo)識(shí)符可與單個(gè)用戶相關(guān)聯(lián)。 [0041]認(rèn)證證書是在各種認(rèn)證協(xié)議中使用的挑戰(zhàn)/響應(yīng)信息的集合。例如,用戶名和密碼組合是認(rèn)證證書的最熟悉形式。其它形式的認(rèn)證證書可包括各種形式的挑戰(zhàn)/響應(yīng)信息、公鑰架構(gòu)(PKI)證書、智能卡、生物識(shí)別等。認(rèn)證證書有別于認(rèn)證斷言:認(rèn)證證書由用戶呈現(xiàn)為具有認(rèn)證服務(wù)器或服務(wù)的認(rèn)證協(xié)議序列的一部分,而認(rèn)證斷言是關(guān)于用戶的認(rèn)證證書的成功呈現(xiàn)和有效性的語句,該語句隨后在需要時(shí)在實(shí)體之間傳送。
[0042]聯(lián)合SSO
[0043]單點(diǎn)登錄(SSO)是使得用戶能夠認(rèn)證一次(例如通過提供用戶名和密碼)并獲得對(duì)跨多個(gè)系統(tǒng)的軟件資源的訪問的訪問控制機(jī)制。一般,SSO系統(tǒng)使得用戶能夠訪問企業(yè)或組織內(nèi)的資源。聯(lián)合單點(diǎn)登錄(F-SSO)跨多個(gè)企業(yè)擴(kuò)展了單點(diǎn)登錄的概念,因此在不同組織和企業(yè)之間建立了合作關(guān)系。F-SSO系統(tǒng)通常包括諸如SAML的協(xié)議,該協(xié)議允許ー個(gè)企業(yè)(例如身份提供商)向另ー企業(yè)(例如服務(wù)提供商)提供用戶的身份和其它屬性。換句話說,F(xiàn)-SSO系統(tǒng)使用合適的協(xié)議(一般是HTTP)以信任的方式幫助將用戶的證書從身份提供商傳輸?shù)椒?wù)提供商。圖3是圖示已知的聯(lián)合單點(diǎn)登錄(F-SSO)處理中的一般操作流程的框圖。如圖3所示,F(xiàn)-SSO處理300涉及身份提供商302、用戶應(yīng)用304和服務(wù)提供商306之間的通信。身份提供商302和服務(wù)提供商304包括F-SSO系統(tǒng)308,該F-SSO系統(tǒng)308包括對(duì)用戶進(jìn)行認(rèn)證、建立用戶證書、以及生成包括用戶信息的加密安全令牌(例如cookie)的邏輯。另外,服務(wù)提供商306還可包括一個(gè)或更多個(gè)目標(biāo)應(yīng)用310和312。目標(biāo)應(yīng)用可駐留在同一網(wǎng)絡(luò)環(huán)境內(nèi),或者可以是同一服務(wù)提供商306內(nèi)的不同網(wǎng)絡(luò)環(huán)境314和316的一部分(例如Apache、WebSphere--等)。用戶應(yīng)用304可包括向用戶呈現(xiàn)
[0044]在一個(gè)實(shí)施例中,如步驟I指示的,用戶應(yīng)用304首先對(duì)身份提供商302進(jìn)行認(rèn)證(例如提供用戶名和密碼)。在步驟2中,身份提供商的F-SSO系統(tǒng)308向用戶返回安全令牌。該安全令牌可以是時(shí)間敏感的(例如可包括時(shí)間戳)并且可以用密碼簽名。安全令牌可包括用戶的身份(例如用戶名)和身份提供商302希望向服務(wù)提供商306提供的其它屬性(例如用戶標(biāo)識(shí)號(hào))。用戶應(yīng)用304可使用任何合適的技術(shù)(例如HTTP請(qǐng)求)和由F-SSO協(xié)議定義的消息結(jié)構(gòu)(例如使用HTTP查詢字符串、HTTP POST數(shù)據(jù)等)向服務(wù)提供商的F-SSO系統(tǒng)呈現(xiàn)安全令牌(參照步驟3)。在步驟4中,服務(wù)提供商的F-SSO系統(tǒng)308證實(shí)安全令牌的密碼簽名,以確認(rèn)初始的令牌的真實(shí)性以及安全令牌的內(nèi)容是值得信任的。服務(wù)提供商的F-SSO系統(tǒng)還可從安全令牌提取用戶的身份和相關(guān)屬性,并生成包括用戶的身份和屬性的 F-SSO 屬性 cookie。[0045]在實(shí)現(xiàn)單點(diǎn)登錄(S卩,從身份提供商的F-SSO系統(tǒng)向服務(wù)提供商的F-SSO系統(tǒng)傳達(dá)用戶屬性)之后,如果用戶希望訪問以服務(wù)提供商306為宿主的目標(biāo)應(yīng)用(例如310),則用戶應(yīng)用304可將從服務(wù)提供商的F-SSO系統(tǒng)308獲得的F-SSO屬性cookie傳送到目標(biāo)應(yīng)用(參照步驟5)。替選地,屬性可被存儲(chǔ)在代理處,并且在用戶請(qǐng)求通過代理時(shí)被傳送,使得不需要cookie。在該示例實(shí)施例中,用戶屬性的傳送(例如在F-SSO cookie中)以可信任和安全的方式進(jìn)行,并可基于F-SSO規(guī)定的協(xié)議(一般為HTTP)執(zhí)行。如果F-SSO屬性cookie內(nèi)包含的數(shù)據(jù)被目標(biāo)應(yīng)用接受和理解(例如,如果目標(biāo)應(yīng)用能解密并檢索cookie的內(nèi)容),則目標(biāo)應(yīng)用(例如elO)證實(shí)該數(shù)據(jù)并創(chuàng)建針對(duì)用戶的會(huì)話。在一些實(shí)施例中,目標(biāo)應(yīng)用(例如310)理解F-SSO屬性cookie,或者目標(biāo)應(yīng)用可以是F-SSO處理的一部分(即,目標(biāo)應(yīng)用可不包括F-SSO系統(tǒng))。
[0046]云計(jì)算模型
[0047]作為附加的背景,云計(jì)算是服務(wù)傳送的模型,用于使得能夠?qū)膳渲糜?jì)算資源(例如網(wǎng)絡(luò)、網(wǎng)絡(luò)帶寬、服務(wù)器、處理、貯存器、存儲(chǔ)器、應(yīng)用、虛擬機(jī)和服務(wù))的共享池進(jìn)行方便、按需求的網(wǎng)絡(luò)訪問,其中可配置計(jì)算資源可以利用最小的管理工作或與服務(wù)提供商的交互快速地被供應(yīng)并釋放。該云模型可包括至少五個(gè)特性、至少三個(gè)服務(wù)模型和至少四個(gè)部署模型,全部都在 Peter Mell 和 Tim Grance 的 2009 年 10 月 7 日的“Draft NIST WorkingDefinition of Cloud Computing”中進(jìn)行了更具體的描述和定義。
[0048]特別地,下面是典型的特性:
[0049]按需自服務(wù)(0n-demand self-service):云消費(fèi)者可根據(jù)需要自動(dòng)地單方面供應(yīng)計(jì)算能力,例如服務(wù)器時(shí)間和網(wǎng)絡(luò)存儲(chǔ),而無需與服務(wù)提供商的人工交互。
[0050]廣泛的網(wǎng)絡(luò)訪問:能力在網(wǎng)絡(luò)上可獲得并且通過標(biāo)準(zhǔn)機(jī)制被訪問,該標(biāo)準(zhǔn)機(jī)制促進(jìn)通過異構(gòu)的瘦或胖客戶端平臺(tái)(例如移動(dòng)電話、膝上型計(jì)算機(jī)和PDA)進(jìn)行的使用。
[0051]資源池:提供商的計(jì)算資源形成池,以使用多租戶模型來服務(wù)多個(gè)消費(fèi)者,其中根據(jù)需求動(dòng)態(tài)地分配并重新分配不同的物理和虛擬資源。存在位置無關(guān)感覺,因?yàn)橄M(fèi)者通常對(duì)于提供的資源的精確位置不具有控制或了解,但是能以更高級(jí)別的抽象(例如,國家、州或數(shù)據(jù)中心)來指定位置。
[0052]快速弾性:能力可以快速并彈性地(在一些情況下自動(dòng)地)被供應(yīng)以迅速擴(kuò)大,并且可以快速地被釋放以迅速縮小。對(duì)于消費(fèi)者,可供應(yīng)的能力經(jīng)??雌饋硎菬o限的,并且可以在任何時(shí)間以任意量購買。
[0053]測量的服務(wù):云系統(tǒng)通過以適合于服務(wù)類型(例如存儲(chǔ)器、處理、帶寬和活躍用戶賬戶)的某個(gè)抽象級(jí)別調(diào)節(jié)計(jì)量能力來自動(dòng)控制并優(yōu)化資源使用。資源使用可被監(jiān)視、控制并報(bào)告,從而為提供商和消費(fèi)者兩者提供所利用的服務(wù)的透明度。
[0054]服務(wù)模型通常如下:
[0055]軟件即服務(wù)(SaaS):提供給消費(fèi)者的能力是使用在云架構(gòu)上運(yùn)行的提供商的應(yīng)用。通過諸如網(wǎng)絡(luò)瀏覽器的瘦客戶端接ロ(例如基于網(wǎng)絡(luò)的電子郵件)可從各種客戶端設(shè)備訪問應(yīng)用。消費(fèi)者不管理或控制基礎(chǔ)云架構(gòu),該基礎(chǔ)云架構(gòu)包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)、存儲(chǔ)器或甚至各個(gè)應(yīng)用能力,可能的例外是有限的特定于用戶的應(yīng)用配置設(shè)置。
[0056]平臺(tái)即服務(wù)(PaaS):提供給消費(fèi)者的能力是將使用由提供商支持的編程語言和エ具創(chuàng)建的消費(fèi)者創(chuàng)建或獲取的應(yīng)用部署到云架構(gòu)上。消費(fèi)者不管理或控制基礎(chǔ)云架構(gòu),該基礎(chǔ)云架構(gòu)包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)或存儲(chǔ)器,但對(duì)部署的應(yīng)用以及可能對(duì)作為環(huán)境配置的宿主的應(yīng)用進(jìn)行控制。
[0057]架構(gòu)即服務(wù)(IaaS):提供給消費(fèi)者的能力是供應(yīng)處理、存儲(chǔ)器、網(wǎng)絡(luò)和其它基本計(jì)算資源,其中消費(fèi)者能夠部署并運(yùn)行可包括操作系統(tǒng)和應(yīng)用的任意軟件。消費(fèi)者不管理或控制基礎(chǔ)云架構(gòu),但對(duì)系統(tǒng)和設(shè)備(例如操作系統(tǒng)、存儲(chǔ)器、部署的應(yīng)用等)進(jìn)行控制,并且可能對(duì)選擇的網(wǎng)絡(luò)組件(例如,主機(jī)防火墻)進(jìn)行有限的控制。
[0058]部署模型通常如下:
[0059]私有云:僅針對(duì)組織操作云架構(gòu)。它可由組織或第三方來管理,并且它可以是本地(on-premises)的或非本地(off-premises)的。
[0060]社區(qū)云:云架構(gòu)被若干組織共享,并且支持具有共享關(guān)注(例如任務(wù)、安全需求、策略和兼容性考慮)的特定社區(qū)。它可由組織或第三方來管理,并且它可被實(shí)現(xiàn)為本地(on-premises)的或非本地(off-premises)的。
[0061]公共云:云架構(gòu)可用于公眾或大型產(chǎn)業(yè)集團(tuán),并且由出售云服務(wù)的組織擁有。
[0062]混合云:云架構(gòu)是兩個(gè)或更多個(gè)云(私有、社區(qū)或公共)的合成,這些云保留唯一的實(shí)體,但是通過使得能夠?qū)崿F(xiàn)數(shù)據(jù)和應(yīng)用便攜性的標(biāo)準(zhǔn)或?qū)S屑夹g(shù)(例如用于云之間的負(fù)載均衡的云爆發(fā)(cloud bursting))綁定到一起。
[0063]云計(jì)算環(huán)境是面向服務(wù)的,關(guān)注于無國籍、低耦合、模塊化和語義互操作性。云計(jì)算的中心是包括互連節(jié)點(diǎn)的網(wǎng)絡(luò)的架構(gòu)。代表性云計(jì)算節(jié)點(diǎn)如以上圖2中所示。特別地,在云計(jì)算節(jié)點(diǎn)中存在計(jì)算機(jī)系統(tǒng)/服務(wù)器,該計(jì)算機(jī)系統(tǒng)/服務(wù)器可與許多其它的通用或?qū)S糜?jì)算系統(tǒng)環(huán)境或配置進(jìn)行操作??蛇m于與計(jì)算機(jī)系統(tǒng)/服務(wù)器使用的公知計(jì)算系統(tǒng)、環(huán)境和/或配置的示例包括但不限于個(gè)人計(jì)算機(jī)系統(tǒng)、服務(wù)器計(jì)算機(jī)系統(tǒng)、瘦客戶端、胖客戶端、手持或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程消費(fèi)電子設(shè)備、網(wǎng)絡(luò)PC、迷你計(jì)算機(jī)系統(tǒng)、大型計(jì)算機(jī)系統(tǒng)、和分布式云計(jì)算環(huán)境(包括以上系統(tǒng)或設(shè)備中的任一種)等。計(jì)算機(jī)系統(tǒng)/服務(wù)器可在正被計(jì)算機(jī)系統(tǒng)運(yùn)行的計(jì)算機(jī)系統(tǒng)可運(yùn)行指令(例如程序模塊)的一般上下文中進(jìn)行描述。通常,程序模塊可包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件、邏輯、數(shù)據(jù)結(jié)構(gòu)等。計(jì)算機(jī)系統(tǒng)/服務(wù)器可在分布式云計(jì)算環(huán)境中實(shí)現(xiàn),在分布式云計(jì)算環(huán)境中,由通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備來執(zhí)行任務(wù)。在分布式云計(jì)算環(huán)境中,程序模塊可位于本地和遠(yuǎn)程計(jì)算機(jī)系統(tǒng)存儲(chǔ)介質(zhì)(包括貯存器存儲(chǔ)設(shè)備)中。
[0064]現(xiàn)在參照?qǐng)D4,作為附加的背景,示出了由云計(jì)算環(huán)境提供的功能抽象層的集合。應(yīng)該預(yù)先理解,圖4所示的組件、層和功能旨在僅是說明性的,并且本發(fā)明的實(shí)施例不限于此。如所描繪的,提供以下層和對(duì)應(yīng)的功能:
[0065]硬件和軟件層400包括硬件和軟件組件。硬件組件的示例包括大型機(jī),在一個(gè)示例中是IBM? zSeries?系統(tǒng);基于Rise (精簡指令集計(jì)算機(jī))架構(gòu)的服務(wù)器,在一
個(gè)不例中是 IBM pSeries? 系統(tǒng);ibm xSeries? 系統(tǒng);ibm BladeCenter? 系統(tǒng);
存儲(chǔ)設(shè)備;網(wǎng)絡(luò)和聯(lián)網(wǎng)組件。軟件組件的示例包括網(wǎng)絡(luò)應(yīng)用服務(wù)器軟件,在一個(gè)示例中是IBM WebSphere?,應(yīng)用服務(wù)器軟件;以及數(shù)據(jù)庫軟件,在一個(gè)示例中是IBM DB2?數(shù)據(jù)庫軟件。(IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere 和 DB2 是在世界范圍的許多司法管轄區(qū)中注冊(cè)的國際商業(yè)機(jī)器公司的商標(biāo))。
[0066]虛擬層402提供抽象層,從該抽象層可提供虛擬實(shí)體的以下示例:虛擬服務(wù)器;虛擬存儲(chǔ)器;虛擬網(wǎng)絡(luò),包括虛擬專用網(wǎng);虛擬應(yīng)用和操作系統(tǒng);以及虛擬客戶端。
[0067]在一個(gè)示例中,管理層404可提供下述功能。資源供應(yīng)提供用來執(zhí)行云計(jì)算環(huán)境內(nèi)的任務(wù)的計(jì)算資源和其它資源的動(dòng)態(tài)取得。計(jì)量和定價(jià)提供在云計(jì)算環(huán)境內(nèi)利用資源時(shí)的成本跟蹤,以及用于消費(fèi)這些資源的賬單或發(fā)票。在一個(gè)示例中,這些資源可包括應(yīng)用軟件許可。安全性提供對(duì)云消費(fèi)者和任務(wù)的身份驗(yàn)證,以及對(duì)數(shù)據(jù)和其它資源的保護(hù)。用戶門戶網(wǎng)站為消費(fèi)者和系統(tǒng)管理員提供對(duì)云計(jì)算環(huán)境的訪問。服務(wù)等級(jí)管理提供云計(jì)算資源分配和管理,使得滿足需要的服務(wù)等級(jí)。服務(wù)等級(jí)協(xié)定(SLA)的規(guī)劃和實(shí)現(xiàn)提供云計(jì)算資源的預(yù)先布置和取得,其中根據(jù)SLA來預(yù)測對(duì)云計(jì)算資源的未來需求。
[0068]工作負(fù)載層406提供云計(jì)算環(huán)境可利用的功能的示例。從該層可提供的工作負(fù)載和功能的示例包括:映射和導(dǎo)航;軟件開發(fā)和生命周期管理;虛擬教室教育傳送;數(shù)據(jù)分析處理;交易處理;以及根據(jù)該公開內(nèi)容的教導(dǎo),富客戶端期望認(rèn)證的云應(yīng)用。
[0069]預(yù)先理解,盡管該公開內(nèi)容包括關(guān)于云計(jì)算的詳細(xì)描述,但這里記載的教導(dǎo)的實(shí)現(xiàn)不限于云計(jì)算環(huán)境。相反,本發(fā)明的實(shí)施例能夠結(jié)合現(xiàn)在已知或以后開發(fā)的任何其它類型的計(jì)算環(huán)境來實(shí)現(xiàn)。
[0070]因此,代表性的云計(jì)算環(huán)境具有高級(jí)功能組件的集合,包括前端身份管理器、業(yè)務(wù)支持服務(wù)(BSS)功能組件、操作支持服務(wù)(OSS)功能組件和計(jì)算云組件。身份管理器負(fù)責(zé)與請(qǐng)求客戶端相互聯(lián)系,以提供身份管理,并且該組件可利用一個(gè)或更多個(gè)已知系統(tǒng)(例如從New York 的 Armonk 的 IBM 公司可獲得的 Tivoli Federated Identity Manager (TFIM))來實(shí)現(xiàn)。在適當(dāng)?shù)沫h(huán)境下,TFIM可用于向其它云組件提供F-SS0。業(yè)務(wù)支持服務(wù)組件提供特定的管理功能,例如賬單支持。操作支持服務(wù)組件用于提供其它云組件(例如虛擬機(jī)(VM)實(shí)例)的供應(yīng)和管理。云組件代表主要計(jì)算資源,主要計(jì)算資源一般是用于運(yùn)行經(jīng)由云可訪問的目標(biāo)應(yīng)用410的多個(gè)虛擬機(jī)實(shí)例。一個(gè)或更多個(gè)數(shù)據(jù)庫用于存儲(chǔ)目錄、日志和其它工作數(shù)據(jù)。所有這些組件(包括前端身份管理器)都位于云“內(nèi)”,但這不是要求。在替選實(shí)施例中,身份管理器可在云外部操作。
[0071]僅作為示例,部署在云中的代表性企業(yè)應(yīng)用是諸如IBM? LotusLive的客戶端-服務(wù)器應(yīng)用,客戶端-服務(wù)器應(yīng)用提供在容易使用的基于網(wǎng)絡(luò)的環(huán)境中將網(wǎng)絡(luò)會(huì)議、消息收發(fā)和合作服務(wù)與社交網(wǎng)絡(luò)能力相結(jié)合的技術(shù)的云傳送套件。作為IBM? LotusLive
的組件,LotusLive Notes?提供了完全特征的電子郵件、日歷、聯(lián)系人管理和即時(shí)消息。用
戶可以以許多方式經(jīng)由因特網(wǎng)直接訪問服務(wù),例如使用網(wǎng)絡(luò)瀏覽器或“富”客戶端應(yīng)用(例如Notes富客戶端)。使用該服務(wù),企業(yè)將其電子郵件、日歷和/或合作架構(gòu)放置在云服務(wù)中,并且用戶使用Notes客戶端訪問他或她的電子郵件,執(zhí)行日歷操作,或幫助在線合作。在代表性的實(shí)施例中,Notes富客戶端是版本8.5.2或更高。
[0072]以上示例(使用LotusLive)僅是代表性的。下述技術(shù)不限于與部署在云環(huán)境內(nèi)的特定企業(yè)應(yīng)用一起使用。
[0073]圖5例示應(yīng)用部署時(shí)的代表性實(shí)施例。在該實(shí)施例中,云提供商500包括公共管理平臺(tái)組件的集合。這些組件包括身份管理器502、云BSS功能504和云OSS功能506的一個(gè)或更多個(gè)實(shí)例,所有這些都參照?qǐng)D4在以上進(jìn)行了描述。計(jì)算云508包括提供計(jì)算架構(gòu)的虛擬機(jī)實(shí)例,包括被應(yīng)用使用的存儲(chǔ)器510。在該示例中,公共管理平臺(tái)組件的集合還包括pam_ldap模塊507、目錄集成模塊(TDI)509、LDAP目錄服務(wù)512和安全令牌服務(wù)(未示出),其中,pam_ldap模塊507為Linux或UNIX服務(wù)器和工作臺(tái)提供對(duì)LDAP目錄進(jìn)行認(rèn)證的方式;目錄集成模塊(TDI) 509對(duì)駐留在異構(gòu)目錄、數(shù)據(jù)庫、文件、合作系統(tǒng)和應(yīng)用中的身份數(shù)據(jù)進(jìn)行變換并同步。安全令牌服務(wù)使用Web服務(wù)信任(WS-Trust)的安全消息機(jī)制,定義用于安全令牌的發(fā)布、交換和驗(yàn)證的附加擴(kuò)展。WS-Trust是通過定義請(qǐng)求/響應(yīng)協(xié)議來實(shí)現(xiàn)安全令牌互操作性的OASIS標(biāo)準(zhǔn)。WS-Trust協(xié)議允許Web服務(wù)客戶端向某受信任的權(quán)威機(jī)構(gòu)請(qǐng)求將特定的安全令牌交換為另一個(gè)。因此,如圖所示,WS-Trust客戶端511形成公共管理的一部分并且連接到客戶LDAP514 (通過客戶側(cè)WS-Trust客戶端)。在數(shù)據(jù)庫520中支持客戶的外部數(shù)據(jù)。公共管理平臺(tái)還包括數(shù)據(jù)倉庫505、日志數(shù)據(jù)庫517和共享LDAP515。經(jīng)由網(wǎng)絡(luò)瀏覽器501或經(jīng)由“富”客戶端(即,支持直接訪問客戶端的機(jī)器,例如CIFS (等))提供客戶端訪問。如圖所示,身份管理組件502通常經(jīng)由安全HTTP連接到云計(jì)算架構(gòu),而富客戶端通常經(jīng)由CIFS連接到存儲(chǔ)器510。
[0074]對(duì)于那些將具有由云提供商500管理的U/P的用戶,他們的F-SSO SAML斷言可包括U/P,或可僅能包括用戶名;在任一情況下,云提供商向用戶呈現(xiàn)簡單的交互以建立用于訪問云服務(wù)的云側(cè)密碼。用戶然后具有在云LDAP512處創(chuàng)建的賬戶,并且該賬戶被標(biāo)記為“本地認(rèn)證”用戶,而且用戶的密碼也由LDAP管理。當(dāng)用戶試圖訪問存儲(chǔ)器510時(shí),pam_Idap模塊507攔截U/P并且試圖驗(yàn)證它們。在該方法中,代理(例如TDI509)是該U/P驗(yàn)證請(qǐng)求的接收方。代理將首先確定這是否是本地用戶(因此進(jìn)行本地認(rèn)證);如果是,則代理試圖針對(duì)本地LDAP512驗(yàn)證U/P。如果用戶不是“本地”用戶,則代理生成WS-Trust請(qǐng)求,并且使用WS-Trust客戶端511請(qǐng)求從用戶的身份提供商(客戶LDAP514)驗(yàn)證用戶的密碼。在該方法中,不要求云提供商管理用戶的密碼,但是對(duì)于那些不希望建立完全代理解決方案的客戶仍可以這樣做。在以上示例中,WS-Trust的使用僅是代表性的。
[0075]認(rèn)證和授權(quán)插件模型
[0076]利用以上背景,現(xiàn)在描述本文中的主題。如上所述,盡管云計(jì)算提供了許多優(yōu)點(diǎn),但數(shù)據(jù)安全性是希望在云環(huán)境內(nèi)部署企業(yè)應(yīng)用的云客戶的主要關(guān)注。如圖5所示的部署圖示的,客戶的外部數(shù)據(jù)520必然暴露給云計(jì)算服務(wù)提供商。結(jié)果,不能絕對(duì)確保商業(yè)信息的完整性、保密性和隱私性。
[0077]本文中的主題處理并解決該問題。
[0078]如將看到的,如圖6所示,描述的主題可涉及若干實(shí)體。第一實(shí)體600是建立并維持云服務(wù)的云服務(wù)提供商,有時(shí)被稱為云計(jì)算環(huán)境。通常,該環(huán)境包括可配置計(jì)算資源的共享池,例如如圖4所示。第二實(shí)體是云客戶602,一般是租用可配置資源的某個(gè)子集以幫助整體或部分部署在云服務(wù)中的客戶應(yīng)用在云中運(yùn)行的企業(yè)。云客戶有時(shí)被稱為由云提供商提供的云服務(wù)的“租戶”或“客戶端”。在圖5提供的示例中的第二實(shí)體是期望在云中運(yùn)行其應(yīng)用(在示例中是LotusLive)或部分應(yīng)用的企業(yè)(例如業(yè)務(wù)實(shí)體)。第三實(shí)體604是公證人服務(wù),公證人服務(wù)是不同于并獨(dú)立于云服務(wù)實(shí)體600和云客戶(例如客戶602)的實(shí)體。公證人可以是已被創(chuàng)建為提供公證人功能的管理實(shí)體,或者可以是公共實(shí)體或私有實(shí)體。云服務(wù)提供商和/或云客戶可以與公證人相關(guān)聯(lián),但優(yōu)選地,對(duì)公證人的控制在系統(tǒng)中的其它實(shí)體外部。這種控制分離使得公證人能夠一方面相對(duì)于云服務(wù)提供商600、另一方面相對(duì)于云客戶602獨(dú)立地動(dòng)作。公證人服務(wù)的基本功能是管理已被服務(wù)提供商600分配給客戶602的資源組的實(shí)施,特別地,確保除非在公證人強(qiáng)制的特定環(huán)境下,否則這些資源組不能釋放給其它實(shí)體(或一般地回到共享池)。
[0079]如上所述,公證人服務(wù)604充當(dāng)證明人(或更一般地,授權(quán)第三方),可以優(yōu)選地以自動(dòng)方式證明客戶602、云提供商600和公證人之間的協(xié)定。除其它規(guī)定之外,該協(xié)定還規(guī)定分配給云客戶602的資源組或多個(gè)資源組(即,云資源)只能在特定情況下被釋放給其它客戶使用。一個(gè)示例情況是云環(huán)境管理員(與云服務(wù)提供商600相關(guān)聯(lián)的人或自動(dòng)處理)和云客戶管理員均登錄以核準(zhǔn)這些云資源的釋放,進(jìn)一步條件是在這種釋放之前應(yīng)擦除內(nèi)容(例如客戶的業(yè)務(wù)信息)。另一示例情況是接收許可公證人用戶(與公證人604相關(guān)聯(lián)的人或自動(dòng)處理)和云環(huán)境管理員的登錄,這可能在客戶違背云服務(wù)協(xié)定中的一些義務(wù)的情況下發(fā)生。然而,即使在后一場景中,資源組的釋放的條件也是擦除(現(xiàn)在之前的)客戶的信息。
[0080]涉及公證人服務(wù)的方法確保云環(huán)境管理員無法單方面收回分配給客戶的資源和/或查看客戶敏感信息,即使在客戶違反了服務(wù)協(xié)定并且要終止客戶的情況下也是如此。
[0081]根據(jù)本公開內(nèi)容的另一方面,認(rèn)證和授權(quán)“插件”模型在云計(jì)算環(huán)境內(nèi)實(shí)現(xiàn)。這在圖7中進(jìn)行了圖示。該插件安全模型替換或補(bǔ)充當(dāng)前的安全樣式,如以上參考圖5所述的,這潛在地將客戶的應(yīng)用數(shù)據(jù)暴露于安全風(fēng)險(xiǎn)中。在這方面,如圖7所示,云服務(wù)提供商700為客戶702 (在該圖中被圖示為“客戶端”)提供發(fā)現(xiàn)客戶自己的認(rèn)證和/或授權(quán)模塊705的方式。如上所述,系統(tǒng)還包括公證人704,公證人704幫助協(xié)定(每個(gè)被示出為租約708)的創(chuàng)建和實(shí)施。租約708與資源沙盒710相關(guān)聯(lián),資源沙盒710是共享池中的一個(gè)或更多個(gè)資源的集合。認(rèn)證和/或授權(quán)模塊705實(shí)施客戶期望實(shí)現(xiàn)的各認(rèn)證和/或授權(quán)功能,即使應(yīng)用本身被部署在云中。換句話說,在云中實(shí)施客戶自己的認(rèn)證和/或授權(quán)方案,而不需要云服務(wù)提供商的直接參與。為此,云服務(wù)提供商插件服務(wù)703使得模塊705能夠被插入到云服務(wù)中,但是云提供商對(duì)該模塊705的訪問被限制。特別地,不向云服務(wù)提供商授權(quán)超級(jí)用戶ID (或其它云系統(tǒng)訪問);相反,經(jīng)由模塊705實(shí)施對(duì)客戶數(shù)據(jù)的訪問,并且云環(huán)境管理員不向模塊705內(nèi)或與模塊705關(guān)聯(lián)的用戶注冊(cè)表(或其等同物)注冊(cè)。云服務(wù)提供商向云客戶的管理員分配資源組(或者在模塊注冊(cè)的情況下自動(dòng)分配這種資源組),但是服務(wù)提供商不被限制(一般借助插件模塊架構(gòu)并且特別地通過禁止用戶注冊(cè))獲得對(duì)客戶數(shù)據(jù)的許可訪問。因此,云環(huán)境管理員不能訪問分配給云客戶的資源。
[0082]云操作系統(tǒng)(平臺(tái))運(yùn)行時(shí)安全根據(jù)需要調(diào)用客戶的認(rèn)證和授權(quán)模塊705。為了幫助該插件架構(gòu),云服務(wù)提供應(yīng)用編程接口(API)707。API707實(shí)現(xiàn)可插拔認(rèn)證模塊(PAM)方案,可插拔認(rèn)證模塊(PAM)方案是將多個(gè)低級(jí)認(rèn)證方案(例如模塊705)集成到高級(jí)應(yīng)用編程接口的已知技術(shù)。PAM允許與基礎(chǔ)認(rèn)證系統(tǒng)獨(dú)立地編寫依賴于認(rèn)證的程序。關(guān)于可插拔認(rèn)證模塊的其它細(xì)節(jié),讀者可被指引到1995年10月的開放軟件基金會(huì)請(qǐng)求評(píng)論(RFC)86.0。替選方法是實(shí)現(xiàn)操作系統(tǒng)(OS)可插拔安全,例如Linux OS內(nèi)核可加載模塊等??衫萌魏纹渌寮軜?gòu)。
[0083]圖8是例示公證人服務(wù)804如何與云服務(wù)提供商800和云租戶802進(jìn)行交互的框圖。優(yōu)選地,公證人服務(wù)被實(shí)現(xiàn)為在計(jì)算環(huán)境內(nèi)運(yùn)行的自動(dòng)電子處理或處理集合。它可包括一個(gè)或更多個(gè)機(jī)器、服務(wù)器、應(yīng)用、處理、程序和實(shí)用工具。公證人服務(wù)804與公鑰架構(gòu)(PKI) 806相關(guān)聯(lián)(或訪問公鑰架構(gòu)(PKI) 806),公鑰架構(gòu)(PKI) 806實(shí)現(xiàn)或?qū)嵤┮阎墓裁荑€密碼協(xié)議以及諸如數(shù)字簽名、公鑰證書、公鑰密碼系統(tǒng)等技術(shù)。如圖8所示,公證人服務(wù)804幫助(安排)用于建立協(xié)定810的安全、不可否認(rèn)的數(shù)字簽名協(xié)議。通過使用已知的PKI方案,云提供商800或云租戶802都不可否認(rèn)協(xié)定810。公證人服務(wù)804在數(shù)據(jù)庫中維持運(yùn)行的協(xié)定,并且公證人優(yōu)選為被識(shí)別為具有實(shí)施或公開協(xié)定條款的權(quán)限的(云提供商800、租戶802中的)唯一實(shí)體??墒褂酶鞣N已知的密碼協(xié)議和方案來以此方式創(chuàng)建、維持、實(shí)施該協(xié)定。
[0084]特別地,在供應(yīng)期間,租戶與唯一 PKI證書相關(guān)聯(lián)。在為租戶供應(yīng)證書期間,PKI架構(gòu)806與公證人804交互,以創(chuàng)建租戶與租戶的PKI證書之間的關(guān)聯(lián)。安全地建立該關(guān)聯(lián)。當(dāng)公證人804需要提供協(xié)定或其證據(jù)(例如給法庭)時(shí),PKI系統(tǒng)使得法庭(或其它許可的政府或強(qiáng)制實(shí)體)能夠驗(yàn)證租戶與租戶的PKI證書之間的關(guān)聯(lián),從而建立形成協(xié)定的原始簽名的不可否認(rèn)性。PKI機(jī)制確保租戶無法否認(rèn)安全關(guān)聯(lián),特別是其在文件上的簽名(一般是數(shù)字簽名)。
[0085]將上述作為背景,并且參照?qǐng)D9,下面描述各種使用場景。這些場景僅是代表性的。
[0086]云服務(wù)提供商具有云環(huán)境管理員,云環(huán)境管理員為將應(yīng)用部署到云環(huán)境的客戶分配一個(gè)或更多個(gè)資源組。資源組包括一個(gè)或更多個(gè)云計(jì)算資源的集合,并且這樣的資源可以相當(dāng)?shù)囟喾N多樣。一般,資源包括處理器(CPU)、盤驅(qū)動(dòng)器(DASD)和貯存器。當(dāng)客戶部署應(yīng)用時(shí),即步驟900,云環(huán)境管理員為客戶的應(yīng)用和數(shù)據(jù)分配資源組(例如處理器、存儲(chǔ)器和貯存器)。在步驟902,客戶向云安全服務(wù)注冊(cè)其認(rèn)證和授權(quán)安全模塊。如上所述,然后使用該特定于客戶的安全模塊來控制什么人或?qū)嶓w可以訪問與所部署的應(yīng)用相關(guān)聯(lián)的信息。然而,云環(huán)境管理員沒有在客戶的安全模塊內(nèi)注冊(cè)(作為許可用戶);因此,云環(huán)境管理員不能訪問(或釋放給其它方或云的通用資源池)分配給云客戶的資源(即使管理員自己分配了這些資源)或相關(guān)聯(lián)的業(yè)務(wù)信息。在步驟904,租戶向公證人注冊(cè),并且在步驟906協(xié)商(形成)安全協(xié)定。以上步驟的次序僅是代表性的,并且可同時(shí)或按不同的順序執(zhí)行這些步驟中的一個(gè)或更多個(gè)。在步驟908,許可與云租戶相關(guān)聯(lián)的終端用戶訪問并使用應(yīng)用,假設(shè)他們已被特定于客戶的安全模塊認(rèn)證和/或授權(quán)了。
[0087]當(dāng)租戶向云服務(wù)提供商請(qǐng)求資源時(shí),開始替選場景。作為響應(yīng),云服務(wù)提供商準(zhǔn)備合同,然后租戶、提供商和公證人對(duì)該合同進(jìn)行數(shù)字簽名。一旦簽署了合同,服務(wù)提供商向客戶端分配資源,并且客戶端然后通過插件服務(wù)接口建立其認(rèn)證/授權(quán)機(jī)制。因?yàn)榭蛻舳私H客戶端訪問的資源許可,所以只有通過插件模塊有效地認(rèn)證的終端用戶可以訪問資源。如所述的,提供商被限制任何這樣的訪問。如果稍后客戶端違反協(xié)定或合同過期,則月艮務(wù)提供商向公證人發(fā)出對(duì)從客戶端移除資源的許可的請(qǐng)求。然后,公證人向服務(wù)提供商給予撤銷資源的許可,并且服務(wù)提供商擦除客戶數(shù)據(jù)并將資源返回到共享池(或?qū)⑵浞峙浣o另一客戶端)。在默認(rèn)場景的替選中,客戶端自己可通過移除分配給資源的許可而放棄資源(在其安全模塊中)。在這種情況下,一旦服務(wù)提供商接收到客戶端自己已移除許可的通知,則服務(wù)提供商可具有有限的權(quán)限以分配默認(rèn)的資源許可。該默認(rèn)供應(yīng)然后可使得服務(wù)提供商能夠訪問其自己的資源,可能用于管理或其它支持活動(dòng)。
[0088]參與實(shí)體之間的協(xié)定確保租戶的業(yè)務(wù)信息保持安全。因此,例如,除其它規(guī)定之夕卜,由租戶和服務(wù)提供商輸入的協(xié)定規(guī)定分配給云客戶的資源組或多個(gè)資源組(即,云資源)只有在特定情況下可被釋放給另一客戶使用。一個(gè)示例情況是云環(huán)境管理員和云客戶管理員均登錄以核準(zhǔn)釋放,進(jìn)一步條件是要求在這種釋放之前擦除內(nèi)容(例如客戶的業(yè)務(wù)信息)。另一示例情況是接收許可公證人用戶和云環(huán)境管理員的登錄,這可能在客戶違背云服務(wù)協(xié)議中的一些義務(wù)的情況下發(fā)生。然而,即使在這一場景中,資源組的釋放的條件也是擦除(現(xiàn)在之前的)客戶的信息。
[0089]因此,如果客戶端決定不繼續(xù)云使用,則在使用服務(wù)的租約被廢除或終止之前從提供商存儲(chǔ)器清除其客戶數(shù)據(jù),其中,廢除或終止僅可在公證人的之前的核準(zhǔn)的情況下發(fā)生。優(yōu)選地,安全地并且以無法被交易的任意方否認(rèn)的方式獲得該核準(zhǔn)。
[0090]如果云服務(wù)提供商被第三方獲取,則租戶可決定是否希望與新的擁有者繼續(xù)云使用,但是租戶不需要擔(dān)心其數(shù)據(jù)是受到損害的。新的擁有者將無法訪問該數(shù)據(jù),除非且直到租戶通過僅租戶管理和控制的安全模塊提供這種許可為止。
[0091]插件安全模型和獨(dú)立公證人服務(wù)的使用確保企業(yè)客戶的信息是安全的。插件模型允許云計(jì)算客戶在云中部署企業(yè)應(yīng)用和信息時(shí)保留對(duì)它們的企業(yè)信息的控制。當(dāng)在云中部署客戶的應(yīng)用軟件和信息時(shí),公證人模型保護(hù)客戶的隱私和訪問權(quán)限。
[0092]該技術(shù)可在公共云、私有云或混合(公共-私有)云的上下文內(nèi)使用。
[0093]客戶端的插件(B卩,客戶安全模塊)安裝在用于實(shí)施的每臺(tái)機(jī)器上。如在以上示例場景中所述的,插件可在協(xié)商合同之前或之后安裝。當(dāng)然,如圖7所示,任意數(shù)量的客戶端可同時(shí)使用該技術(shù),只要一個(gè)客戶端被限制訪問另一個(gè)客戶端的資源即可。為此,云提供商對(duì)分配給特定客戶端(并且與特定協(xié)定相關(guān)聯(lián))的資源進(jìn)行沙盒處理(sandbox)。
[0094]在描述的示例中,客戶安全模塊對(duì)特定客戶是唯一的,盡管這不是要求。在替選的場景中,服務(wù)提供商自己使得“租”給客戶端的安全模塊可用。無論是客戶端還是提供商提供安全模塊,如上所述,客戶端應(yīng)該(通過合適地向資源映射授權(quán)用戶)來控制哪個(gè)用戶能夠(經(jīng)由安全模塊)訪問協(xié)商的云資源。
[0095]在以上描述的實(shí)施例中,使用PKI來實(shí)施協(xié)定,這實(shí)現(xiàn)不可否認(rèn)性。然而,這不是限制,因?yàn)榭墒褂闷渌夹g(shù)來實(shí)施協(xié)定。因此,例如,在替選的實(shí)施例中,其它不同實(shí)體可用于該目的。被稱為“法庭”實(shí)體(類似于法律法庭)的該實(shí)體具有其自己的公鑰/私鑰對(duì)、以及數(shù)字證書。然后,可如下執(zhí)行協(xié)定。租戶使用它的秘密密鑰對(duì)協(xié)定文本進(jìn)行加密。云提供商使用其秘密密鑰對(duì)相同的協(xié)定進(jìn)行加密。然后,法庭實(shí)體對(duì)兩個(gè)加密文檔的聚合進(jìn)行簽名。為了驗(yàn)證協(xié)定,執(zhí)行逆處理。特別地,法庭使用它的公鑰驗(yàn)證聚合的文檔(兩個(gè)加密協(xié)定)上的簽名。然后,法庭使用提供商的公鑰對(duì)聚合的文檔的第一部分進(jìn)行解密,并且使用租戶的公鑰對(duì)聚合的文檔的第二部分進(jìn)行解密。然后,法庭實(shí)體將兩個(gè)文檔呈現(xiàn)給公證人。
[0096]關(guān)于云資源的支持服務(wù)可由服務(wù)提供商或客戶提供。因此,例如,在租約時(shí)段期間,并且如果租戶對(duì)機(jī)器具有完全控制,則客戶端可執(zhí)行任何必要的維護(hù)(例如,軟件補(bǔ)丁),可能在提供商的指導(dǎo)下。當(dāng)客戶端放棄其中的機(jī)器或資源(通過拔出它們的安全模塊或通過改變?cè)L問策略)時(shí),提供商可使用傳統(tǒng)的備份/恢復(fù)實(shí)用工具將資源恢復(fù)到已知的良好狀態(tài)。如果期望,則客戶端也可選擇安裝并維護(hù)其自己的虛擬操作系統(tǒng)(OS)映像;作為替選,提供商可向客戶端提供在租約保持有效時(shí)客戶端可更新的臨時(shí)OS映像。
[0097]當(dāng)租約結(jié)束(例如由于條款過期或在客戶端違反的情況下)時(shí),提供商通過移除客戶的安全插件(或禁止客戶對(duì)可能正在使用的任何通用模塊的使用)來收回資源。結(jié)果,并且因?yàn)樘峁┥虛碛匈Y源,默認(rèn)安全機(jī)制被激活,從而使得提供商能夠重新獲得完全訪問。當(dāng)協(xié)定工作時(shí),安全插件防止提供商訪問作為協(xié)定的對(duì)象的任何資源。盡管不需要,優(yōu)選地,在提供商試圖訪問(或采取其它某種不合適的行為)違反協(xié)定的資源的情況下,向公證人和/或客戶端提供通知。相反,提供商應(yīng)首先從公證人尋求這樣做的許可。一旦獲得了任何這種許可,提供商可廢除客戶端的訪問,如已描述的那樣。
[0098]為了幫助返回計(jì)算資源,公證人可具有根據(jù)需要卸除插件的“鑰匙”(或類似機(jī)制)。特別地,在客戶端違背的情況下,公證人向服務(wù)提供商提供鑰匙(或證書)以使得能夠?qū)①Y源返回到共享池。然而,并非總是需要使用這種鑰匙。例如,在客戶端僅使用提供商的硬件和OS資源、然后隨后打破合同的情況下,提供商(一旦從公證人獲得許可)僅需要備份客戶端的數(shù)據(jù),然后重新引導(dǎo)并重新格式化受影響的盤。在客戶端還安裝其自己的虛擬機(jī)、然后隨后打破合同的場景下,提供商(一旦獲得許可)可訪問系統(tǒng)管理程序(VM在系統(tǒng)管理程序上運(yùn)行)并移除VM。在這些情況下,提供商保持對(duì)基礎(chǔ)資源的充分訪問以幫助移除操作,盡管在任何情況下提供商都無法訪問客戶端的虛擬機(jī)內(nèi)的應(yīng)用。
[0099]與之相比,規(guī)矩的客戶端將自己(例如在協(xié)定終止的情況下)移除安全插件。
[0100]描述的主題具有許多優(yōu)點(diǎn)。利用該方法,云客戶在簽約到云環(huán)境時(shí)不放棄對(duì)它們的企業(yè)信息的控制。該方法確保云環(huán)境管理員(或一些其它未授權(quán)的人或?qū)嶓w)在沒有與公證人服務(wù)相關(guān)聯(lián)的客戶或許可第三方的許可的情況下無法取回資源組(或更一般地,一個(gè)或更多個(gè)云資源)。以此方式,云客戶對(duì)它們?cè)谠朴?jì)算環(huán)境中的信息具有完全控制,并且不存在云管理員或其它實(shí)體在沒有許可或授權(quán)的情況下可訪問客戶的信息的重大風(fēng)險(xiǎn)。如果云服務(wù)提供商被新的云公司獲取,或即使硬件資源被竊取,客戶的信息也保持被保護(hù),因?yàn)閮H可利用客戶自己的認(rèn)證和授權(quán)安全插件(即,通過客戶的認(rèn)證和/或授權(quán)檢查)來訪問和查看該信息。有利地,云管理員以及任何其它人或?qū)嶓w都不具有在云環(huán)境的操作系統(tǒng)中用于訪問或管理客戶數(shù)據(jù)的超級(jí)用戶ID。
[0101]公證人服務(wù)提供額外的優(yōu)點(diǎn)。如所述的,公證人服務(wù)幫助確保客戶數(shù)據(jù)保持安全,因?yàn)楣C人服務(wù)用來實(shí)施確保數(shù)據(jù)所在的資源僅可在給定情況下被釋放的(客戶、云提供商和公證人之間的)協(xié)定。如果任一方違背協(xié)定,則另一方可通過公證人廢除合同,公證人充當(dāng)可證實(shí)合同的獨(dú)立證明人。該方法確保云環(huán)境管理員無法單方面取回分配給客戶的資源和/或查看客戶敏感信息,即使在客戶違反了服務(wù)協(xié)定并且要終止客戶的情況下也是如此。另一方面,使用公證人服務(wù)還確保客戶無法不合理地利用云提供商,例如通過違反提供商的服務(wù)協(xié)定而仍然接收云服務(wù)。
[0102]該技術(shù)為云計(jì)算提供了新的安全模式,這確保對(duì)客戶信息的保護(hù)。云服務(wù)客戶通過插入云插件模型來管理其自己的安全認(rèn)證和授權(quán)服務(wù)。政府或第三方安全服務(wù)(公證人)以均衡所有參與者的利益的方式監(jiān)管環(huán)境內(nèi)的安全策略運(yùn)行。
[0103]以上描述的插件和公證人服務(wù)功能可被實(shí)現(xiàn)為單獨(dú)的方法,例如被處理器運(yùn)行的基于軟件的功能,或者可作為管理服務(wù)可用(包括作為經(jīng)由S0AP/XML接口的Web服務(wù))。這里描述的特定硬件和軟件實(shí)現(xiàn)細(xì)節(jié)僅用于說明性的目的,而不是旨在限制所描述的主題的范圍。
[0104]更一般地,在所公開的發(fā)明的上下文內(nèi)的計(jì)算設(shè)備各自是包括硬件和軟件的數(shù)據(jù)處理系統(tǒng)(例如如圖2所示的),并且這些實(shí)體經(jīng)由諸如因特網(wǎng)、內(nèi)聯(lián)網(wǎng)、外聯(lián)網(wǎng)、專用網(wǎng)絡(luò)或任何其它通信介質(zhì)或鏈路的網(wǎng)絡(luò)彼此通信。數(shù)據(jù)處理系統(tǒng)上的應(yīng)用提供對(duì)Web服務(wù)和其它已知服務(wù)和協(xié)議的本地支持,包括但不限于對(duì)HTTP、FTP、SMTP、SOAP、XML、WSDL、SAML,Liberty> Shibboleth、OpenID、WS-Federation、Cardspace> WS-Trust> UDDI 和 WSFL 等的支持。關(guān)于SOAP、WSDL、UDDI和WSFL的信息可從萬維網(wǎng)聯(lián)盟(W3C)獲得,W3C負(fù)責(zé)開發(fā)并維護(hù)這些標(biāo)準(zhǔn);關(guān)于HTTP、FTP、SMTP和XML的其它信息可從因特網(wǎng)工程任務(wù)組(IETF)獲得。假設(shè)熟悉了這些已知標(biāo)準(zhǔn)和協(xié)議。
[0105]本文中描述的方案可在除基于云的架構(gòu)之外的各種服務(wù)器側(cè)架構(gòu)中實(shí)現(xiàn),或與除基于云的架構(gòu)之外的各種服務(wù)器側(cè)架構(gòu)相結(jié)合來實(shí)現(xiàn)。這些包括但不限于簡單η層架構(gòu)、網(wǎng)絡(luò)入口、聯(lián)合系統(tǒng)等。
[0106]如以上示例所說明的,插件或公證人服務(wù)功能中的一個(gè)或更多個(gè)可以以云為宿主或在云外部。
[0107]更一般地,本文中描述的主題可采用全部硬件實(shí)施方式、全部軟件實(shí)施方式或包含硬件和軟件元件的實(shí)施方式的形式。在優(yōu)選實(shí)施例中,以軟件實(shí)現(xiàn)分層的登錄功能,軟件包括但不限于固件、駐留軟件、微代碼等。數(shù)據(jù)可被配置到數(shù)據(jù)結(jié)構(gòu)(例如陣列、鏈接表等)中并且被存儲(chǔ)在數(shù)據(jù)庫(例如計(jì)算機(jī)貯存器)中。此外,如上所述,本文中描述的身份提供商實(shí)例發(fā)現(xiàn)功能可采用計(jì)算機(jī)程序產(chǎn)品的形式,計(jì)算機(jī)程序產(chǎn)品可從計(jì)算機(jī)可使用或計(jì)算機(jī)可讀介質(zhì)訪問,計(jì)算機(jī)可使用或計(jì)算機(jī)可讀介質(zhì)提供用于由計(jì)算機(jī)或任何指令運(yùn)行系統(tǒng)使用或與之關(guān)聯(lián)的程序代碼。為了本說明書的目的,計(jì)算機(jī)可使用或計(jì)算機(jī)可讀介質(zhì)可以是可包含或存儲(chǔ)用于由指令運(yùn)行系統(tǒng)、裝置或設(shè)備使用或與之關(guān)聯(lián)的程序的任何裝置。介質(zhì)可以是電的、磁的、光的、電磁的、紅外線的或半導(dǎo)體系統(tǒng)(或裝置或設(shè)備)。計(jì)算機(jī)可讀介質(zhì)的示例包括半導(dǎo)體或固態(tài)存儲(chǔ)器、磁帶、可移除計(jì)算機(jī)盤、隨機(jī)存取貯存器(RAM)、只讀貯存器(ROM)、硬磁盤和光盤。光盤的當(dāng)前示例包括壓縮盤-只讀存儲(chǔ)器(⑶-ROM)、壓縮盤-讀/寫(⑶-R/W)和DVD。計(jì)算機(jī)可讀介質(zhì)是有形物品。
[0108]計(jì)算機(jī)程序產(chǎn)品可以是具有實(shí)現(xiàn)所描述的功能中的一個(gè)或更多個(gè)功能的程序指令(或程序代碼)的產(chǎn)品。這些指令或代碼可在經(jīng)由網(wǎng)絡(luò)從遠(yuǎn)程數(shù)據(jù)處理系統(tǒng)下載后被存儲(chǔ)在數(shù)據(jù)處理系統(tǒng)中的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中?;蛘?,這些指令或代碼可被存儲(chǔ)在服務(wù)器數(shù)據(jù)處理系統(tǒng)中的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中并適于經(jīng)由網(wǎng)絡(luò)被下載到遠(yuǎn)程數(shù)據(jù)處理系統(tǒng)以在遠(yuǎn)程系統(tǒng)內(nèi)的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中使用。
[0109]在代表性的實(shí)施例中,插件和公證人服務(wù)組件在專用計(jì)算機(jī)中實(shí)現(xiàn),優(yōu)選地以被一個(gè)或更多個(gè)處理器運(yùn)行的軟件來實(shí)現(xiàn)。所使用的相關(guān)聯(lián)數(shù)據(jù)被存儲(chǔ)在相關(guān)聯(lián)的數(shù)據(jù)庫中。軟件還被保持在與一個(gè)或更多個(gè)處理器相關(guān)聯(lián)的一個(gè)或更多個(gè)數(shù)據(jù)庫或存儲(chǔ)器中,并且軟件可被實(shí)現(xiàn)為一個(gè)或更多個(gè)計(jì)算機(jī)程序。
[0110]插件功能可被實(shí)現(xiàn)為現(xiàn)有的訪問管理器或策略管理解決方案的附屬或擴(kuò)展。
[0111]盡管以上描述了由本發(fā)明的特定實(shí)施例執(zhí)行的特定操作順序,但應(yīng)該理解,這種順序是示例性的,因?yàn)樘孢x實(shí)施例可按不同順序執(zhí)行操作,組合特定操作,交疊特定操作等。說明書中對(duì)給定實(shí)施例的提及指示所描述的實(shí)施例可包括特定特征、結(jié)構(gòu)或特性,但每個(gè)實(shí)施例不一定包括特定特征、結(jié)構(gòu)或特性。
[0112]最后,盡管已分開地描述了系統(tǒng)的給定組件,但本領(lǐng)域技術(shù)人員將理解,功能中的一些功能可在給定指令、程序序列、代碼部分等中組合或共享。
[0113]如本文中所使用的,“客戶端側(cè)”應(yīng)用應(yīng)該被廣義地解釋為指代應(yīng)用、與該應(yīng)用相關(guān)聯(lián)的頁、或由應(yīng)用的客戶端側(cè)請(qǐng)求調(diào)用的某些其它資源或功能。如本文中所使用的,“瀏覽器”不是旨在指代任何特定瀏覽器(例如Internet Explorer, Safari, FireFox等),而是應(yīng)該被廣義地解釋為指代能訪問并顯示因特網(wǎng)可訪問資源的任何客戶端側(cè)渲染引擎?!案弧笨蛻舳艘话阒复诜荋TTP的客戶端側(cè)應(yīng)用,例如SSH或CFIS客戶端。另外,盡管客戶端-服務(wù)器交互一般使用HTTP進(jìn)行,但這也并非限制。客戶端服務(wù)器交互可被格式化為遵循簡單對(duì)象訪問協(xié)議(SOAP)并且經(jīng)由HTTP (經(jīng)由公共因特網(wǎng))、FTP進(jìn)行傳輸,或者可使用
任何其它可靠的傳輸機(jī)制(例如IBM? MQSeries?技術(shù)和corba,用于經(jīng)由企業(yè)內(nèi)聯(lián)
網(wǎng)進(jìn)行傳輸)。本文中描述的任何應(yīng)用或功能可通過如下方式被實(shí)現(xiàn)為本地代碼:通過向另一應(yīng)用提供鉤子、通過幫助使用如插件的機(jī)制、通過鏈接到機(jī)制等。
[0114]本文中提及的“插件”不應(yīng)被視為限制。由插件提供的基本功能是攔截安全檢查。因此,插件一般是用于攔截安全檢查的任何代碼。
【權(quán)利要求】
1.一種用于在計(jì)算資源以可配置計(jì)算資源的共享池為宿主的環(huán)境中的驗(yàn)證和授權(quán)的方法,包括: 從第一實(shí)體接收對(duì)由第二實(shí)體管理的可配置計(jì)算資源的共享池的訪問的請(qǐng)求; 在第一實(shí)體、第二實(shí)體和不同于第一實(shí)體和第二實(shí)體的第三實(shí)體之間執(zhí)行協(xié)定的情況下,向第一實(shí)體分配資源組; 在由與可配置計(jì)算資源的共享池相關(guān)聯(lián)的第二實(shí)體操作的插件服務(wù)中注冊(cè)與第一實(shí)體相關(guān)聯(lián)的插件安全模塊;以及 限制除經(jīng)由所述插件安全模塊之外對(duì)所述資源組的訪問。
2.如權(quán)利要求1所述的方法,還包括:接收與第一實(shí)體的許可用戶相關(guān)聯(lián)的信息并存儲(chǔ)在所述資源組中。
3.如權(quán)利要求2所述的方法,還包括:在發(fā)生事件的情況下將所述資源組返回到所述共享池。
4.如權(quán)利要求3所述的方法,其中將所述資源組返回的步驟包括: 在發(fā)生事件的情況下,向第三方發(fā)出請(qǐng)求,所述請(qǐng)求尋求將第一實(shí)體從所述資源組解除關(guān)聯(lián)的許可;以及 從第三方接收響應(yīng),所述響應(yīng)指示第二實(shí)體具有將第一實(shí)體從所述資源組解除關(guān)聯(lián)的許可。
5.如權(quán)利要求4所述的方法,還包括:在將所述資源組返回到所述共享池之前,刪除與第一實(shí)體的許可用戶相關(guān)聯(lián)的信息。
6.如權(quán)利要求3所述的方法,其中將所述資源組返回的步驟包括: 接收與所述資源組相關(guān)聯(lián)的許可已被第一實(shí)體移除的指示;以及 在將所述資源組返回到所述共享池之前,刪除與第一實(shí)體的許可用戶相關(guān)聯(lián)的信息。
7.如權(quán)利要求1所述的方法,其中通過密碼確保所述協(xié)定,使得所述協(xié)定無法被第一實(shí)體或第二實(shí)體否認(rèn)。
8.一種用于在計(jì)算資源以可配置計(jì)算資源的共享池為宿主的環(huán)境中的驗(yàn)證和授權(quán)的裝置,包括: 處理器; 計(jì)算機(jī)存儲(chǔ)器,保持當(dāng)被所述處理器運(yùn)行時(shí)執(zhí)行如下方法的計(jì)算機(jī)程序指令,所述方法包括: 從第一實(shí)體接收對(duì)由第二實(shí)體管理的可配置計(jì)算資源的共享池的訪問的請(qǐng)求; 在第一實(shí)體、第二實(shí)體和不同于第一實(shí)體和第二實(shí)體的第三實(shí)體之間執(zhí)行協(xié)定的情況下,向第一實(shí)體分配資源組; 在由與可配置計(jì)算資源的共享池相關(guān)聯(lián)的第二實(shí)體操作的插件服務(wù)中注冊(cè)與第一實(shí)體相關(guān)聯(lián)的插件安全模塊;以及 限制除經(jīng)由所述插件安全模塊之外對(duì)所述資源組的訪問。
9.如權(quán)利要求8所述的裝置,其中所述方法還包括:接收與第一實(shí)體的許可用戶相關(guān)聯(lián)的信息并存儲(chǔ)在所述資源組中。
10.如權(quán)利要求8所述的裝置,其中所述方法還包括:在發(fā)生事件的情況下將所述資源組返回到所述共享池。
11.如權(quán)利要求10所述的裝置,其中將所述資源組返回的步驟包括: 在發(fā)生事件的情況下,向第三方發(fā)出請(qǐng)求,所述請(qǐng)求尋求將第一實(shí)體從所述資源組解除關(guān)聯(lián)的許可;以及 從第三方接收響應(yīng),所述響應(yīng)指示第二實(shí)體具有將第一實(shí)體從所述資源組解除關(guān)聯(lián)的許可。
12.如權(quán)利要求11所述的裝置,其中所述方法還包括:在將所述資源組返回到所述共享池之前,刪除與第一實(shí)體的許可用戶相關(guān)聯(lián)的信息。
13.如權(quán)利要求10所述的裝置,其中將所述資源組返回的步驟包括: 接收與所述資源組相關(guān)聯(lián)的許可已被第一實(shí)體移除的指示;以及 在將所述資源組返回到所述共享池之前,刪除與第一實(shí)體的許可用戶相關(guān)聯(lián)的信息。
14.如權(quán)利要求8所述的裝置,其中通過密碼確保所述協(xié)定,使得所述協(xié)定無法被第一實(shí)體或第二實(shí)體否認(rèn)。
15.一種計(jì)算機(jī)可讀介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品,用于在計(jì)算資源以可配置計(jì)算資源的共享池為宿主的環(huán)境中的驗(yàn)證和授權(quán)的數(shù)據(jù)處理系統(tǒng)中使用,所述計(jì)算機(jī)程序產(chǎn)品保持當(dāng)被所述數(shù)據(jù)處理系統(tǒng)運(yùn)行時(shí)執(zhí)行如下方法的計(jì)算機(jī)程序指令,所述方法包括: 從第一實(shí)體接收對(duì)由第二實(shí)體管理的可配置計(jì)算資源的共享池的訪問的請(qǐng)求; 在第一實(shí)體、第二實(shí)體和不同于第一實(shí)體和第二實(shí)體的第三實(shí)體之間執(zhí)行協(xié)定的情況下,向第一實(shí)體分配資源組; 在由與可配置計(jì)算資源的共享池相關(guān)聯(lián)的第二實(shí)體操作的插件服務(wù)中注冊(cè)與第一實(shí)體相關(guān)聯(lián)的插件安全模塊;以及` 限制除經(jīng)由所述插件安全模塊之外對(duì)所述資源組的訪問。
16.如權(quán)利要求15所述的計(jì)算機(jī)程序產(chǎn)品,其中所述方法還包括:接收與第一實(shí)體的許可用戶相關(guān)聯(lián)的信息并存儲(chǔ)在所述資源組中。
17.如權(quán)利要求16所述的計(jì)算機(jī)程序產(chǎn)品,其中所述方法還包括:在發(fā)生事件的情況下將所述資源組返回到所述共享池。
18.如權(quán)利要求17所述的計(jì)算機(jī)程序產(chǎn)品,其中將所述資源組返回的步驟包括: 在發(fā)生事件的情況下,向第三方發(fā)出請(qǐng)求,所述請(qǐng)求尋求將第一實(shí)體從所述資源組解除關(guān)聯(lián)的許可;以及 從第三方接收響應(yīng),所述響應(yīng)指示第二實(shí)體具有將第一實(shí)體從所述資源組解除關(guān)聯(lián)的許可。
19.如權(quán)利要求18所述的計(jì)算機(jī)程序產(chǎn)品,其中所述方法還包括:在將所述資源組返回到所述共享池之前,刪除與第一實(shí)體的許可用戶相關(guān)聯(lián)的信息。
20.如權(quán)利要求17所述的計(jì)算機(jī)程序產(chǎn)品,其中將所述資源組返回的步驟包括: 接收與所述資源組相關(guān)聯(lián)的許可已被第一實(shí)體移除的指示;以及 在將所述資源組返回到所述共享池之前,刪除與第一實(shí)體的許可用戶相關(guān)聯(lián)的信息。
21.如權(quán)利要求15所述的計(jì)算機(jī)程序產(chǎn)品,其中通過密碼確保所述協(xié)定,使得所述協(xié)定無法被第一實(shí)體或第二實(shí)體否認(rèn)。
22.一種在可配置計(jì)算資源的共享池中操作的裝置,包括: 處理器;計(jì)算機(jī)存儲(chǔ)器,保持計(jì)算機(jī)程序指令,所述計(jì)算機(jī)程序指令被所述處理器運(yùn)行以便:(i)提供應(yīng)用編程接ロ(API),所述應(yīng)用編程接ロ接收第一安全模塊和第二安全模塊作為插件,第一安全模塊與可配置計(jì)算資源的共享池的第一客戶端相關(guān)聯(lián),第二安全模塊與可配置計(jì)算資源的共享池的第二客戶端相關(guān)聯(lián),以及(ii)向第一客戶端和第二客戶端中的每個(gè)分配第一資源組和第二資源組,其中除被第一安全模塊許可之外限制對(duì)第一資源組的訪問,其中除被第二安全模塊許可之外限制對(duì)第二資源組的訪問。
23.如權(quán)利要求23所述的裝置,其中所述計(jì)算機(jī)程序指令被所述處理器運(yùn)行,以便:(iii)在給定的事件的情況下將資源組返回到所述共享池。
24.如權(quán)利要求23所述的裝置,其中所述給定的事件是從擔(dān)保所述資源組的返回的第三方公證接收到指示。
25.如權(quán)利要求24所述的裝置,其中所述計(jì)算機(jī)程序指令被所述處理器運(yùn)行,以便:(iv)在將所述資源組返回到所述共享池之前,從所述資源組刪除任何特定于客戶端的信息o
26.一種與可配置計(jì)算資源的共享池相關(guān)聯(lián)的裝置,所述共享池被服務(wù)提供商操作,并且包括已根據(jù)服務(wù)提供商、租戶和管理所述裝置的第三方之間的協(xié)定而分配給租戶使用的資源組,其中作為協(xié)定的結(jié)果,插件安全模塊與租戶相關(guān)聯(lián)并且用于限制除經(jīng)由插件安全模塊之外對(duì)所述資源組的訪問,所述裝置包括: 處理器; 計(jì)算機(jī)存儲(chǔ)器,保持計(jì)算機(jī)程序指令,所述計(jì)算機(jī)程序指令被所述處理器運(yùn)行以通過以下步驟來實(shí)施所述協(xié)定:(i)從所述服務(wù)提供商接收請(qǐng)求以在給定的事件的情況下將租戶從所述資源組解除關(guān)聯(lián),以及(ii)向所述服務(wù)提供商發(fā)出響應(yīng),所述響應(yīng)指示所述服務(wù)提供商具有將租戶從所述資源組解除關(guān)聯(lián)的許可。
【文檔編號(hào)】H04L9/32GK103563294SQ201280026313
【公開日】2014年2月5日 申請(qǐng)日期:2012年6月26日 優(yōu)先權(quán)日:2011年6月30日
【發(fā)明者】D·Y·常, M·本納塔, J·Y-C·常, V·溫卡塔拉瑪帕 申請(qǐng)人:國際商業(yè)機(jī)器公司