本發(fā)明涉及信息技術(shù)的領(lǐng)域,其更特定地包括用于驗(yàn)證的系統(tǒng)和技術(shù)。
背景技術(shù):
敏感信息需要預(yù)防未經(jīng)授權(quán)的訪問?;趩蝹€(gè)驗(yàn)證的傳統(tǒng)保護(hù)方法容易受到破壞。
附圖說明
圖1示出根據(jù)示范性實(shí)施例實(shí)現(xiàn)的客戶端-服務(wù)器系統(tǒng)和網(wǎng)絡(luò)的框圖。
圖2示出根據(jù)示范性實(shí)施例實(shí)現(xiàn)的示范性客戶端或計(jì)算機(jī)的更詳細(xì)圖。
圖3示出根據(jù)示范性實(shí)施例實(shí)現(xiàn)的客戶端計(jì)算機(jī)系統(tǒng)的系統(tǒng)框圖。
圖4示出根據(jù)示范性實(shí)施例實(shí)現(xiàn)的采用數(shù)據(jù)庫系統(tǒng)形式的數(shù)據(jù)源或數(shù)據(jù)服務(wù)。
圖5示出根據(jù)示范性實(shí)施例實(shí)現(xiàn)的用于選擇對話布局的系統(tǒng)500的示例的框圖。
圖6示出圖示根據(jù)示范性實(shí)施例可用于使能并行驗(yàn)證的示例系統(tǒng)的框圖。
圖7示出圖示根據(jù)示范性實(shí)施例可被執(zhí)行來驗(yàn)證對信息的請求的示例過程的流程圖。
圖8示出圖示根據(jù)示范性實(shí)施例可由客戶端計(jì)算機(jī)系統(tǒng)執(zhí)行來訪問存儲在本地(on-premised)存儲系統(tǒng)中的敏感文件的示例過程的流程圖。
具體實(shí)施方式
本文描述的一些實(shí)施例包括用于在虛擬私有云文件管理系統(tǒng)中的并行本地和云文件訪問驗(yàn)證的系統(tǒng)和方法。系統(tǒng)包括與本地驗(yàn)證機(jī)構(gòu)和基于云的驗(yàn)證機(jī)構(gòu)耦合的本地存儲系統(tǒng)。對訪問存儲在本地存儲系統(tǒng)中的文件的請求需要在授權(quán)訪問之前被本地驗(yàn)證機(jī)構(gòu)和基于云的驗(yàn)證機(jī)構(gòu)兩者所驗(yàn)證。
對于一些實(shí)施例,用于并行驗(yàn)證的方法包括從客戶端計(jì)算機(jī)系統(tǒng)接收下載請求來下載存儲在第一存儲系統(tǒng)中的文件。該第一存儲系統(tǒng)經(jīng)由網(wǎng)絡(luò)耦合于客戶端計(jì)算機(jī)系統(tǒng)。第一存儲系統(tǒng)經(jīng)由網(wǎng)絡(luò)與第二存儲系統(tǒng)耦合。下載的請求包括與第一存儲系統(tǒng)關(guān)聯(lián)的第一令牌和與第二存儲系統(tǒng)關(guān)聯(lián)的第二令牌。第一存儲系統(tǒng)配置成基于該第一令牌和第二令牌來驗(yàn)證下載請求?;诔晒︱?yàn)證,第一存儲系統(tǒng)配置成授權(quán)客戶端計(jì)算機(jī)系統(tǒng)來下載文件。
在詳細(xì)描述主旨之前,將首先描述可實(shí)現(xiàn)主旨所在的示范性計(jì)算機(jī)網(wǎng)絡(luò)。本領(lǐng)域內(nèi)技術(shù)人員將意識到在圖1中圖示的元件可根據(jù)系統(tǒng)實(shí)現(xiàn)而變化。參考圖1,示出分布式計(jì)算機(jī)網(wǎng)絡(luò)100的簡化框圖。計(jì)算機(jī)網(wǎng)絡(luò)100包括許多客戶端系統(tǒng)113、116和119,以及經(jīng)由多個(gè)通信鏈路128耦合于通信網(wǎng)絡(luò)124的服務(wù)器系統(tǒng)122。在系統(tǒng)中可存在任意數(shù)量的客戶端和服務(wù)器。通信網(wǎng)絡(luò)124提供允許分布式網(wǎng)絡(luò)100的各種組件彼此通信和交換信息的機(jī)構(gòu)。
通信網(wǎng)絡(luò)124自身可由許多互連計(jì)算機(jī)系統(tǒng)和通信鏈路組成。通信鏈路128可以是硬線鏈路、光鏈路、衛(wèi)星或其他無線通信網(wǎng)絡(luò)、波傳播鏈路或用于傳達(dá)信息的任何其他機(jī)構(gòu)。各種通信協(xié)議可用于便于圖1中示出的各種系統(tǒng)之間的通信。這些通信協(xié)議可包括tcp/ip、http協(xié)議、無線應(yīng)用協(xié)議(wap)、供應(yīng)商特定協(xié)議、定制協(xié)議及其他。盡管在一個(gè)實(shí)施例中,通信網(wǎng)絡(luò)124是互聯(lián)網(wǎng),在其他實(shí)施例中,通信網(wǎng)絡(luò)124可以是任何適合的通信網(wǎng)絡(luò),其包括局域網(wǎng)(lan)、廣域網(wǎng)(wan)、無線網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)、專用網(wǎng)絡(luò)、公用網(wǎng)絡(luò)、交換網(wǎng)絡(luò)和這些的組合及類似物。
圖1中的分布式計(jì)算機(jī)網(wǎng)絡(luò)100僅僅圖示實(shí)施例并且并不意在如權(quán)利要求中列舉的那樣限制本發(fā)明的范圍。本領(lǐng)域內(nèi)普通技術(shù)人員將認(rèn)識到其他變化、修改和備選。例如,超過一個(gè)服務(wù)器系統(tǒng)122可連接到通信網(wǎng)絡(luò)124。作為另一個(gè)示例,許多客戶端系統(tǒng)113、116和119可經(jīng)由接入提供商(未示出)或經(jīng)由某個(gè)其他服務(wù)器系統(tǒng)耦合于通信網(wǎng)絡(luò)124。
客戶端系統(tǒng)113、116和119典型地請求來自提供信息的服務(wù)器系統(tǒng)的信息。由于該原因,服務(wù)器系統(tǒng)典型地具有比客戶端系統(tǒng)更多的計(jì)算和存儲容量。然而,特定計(jì)算機(jī)系統(tǒng)既可充當(dāng)客戶端又充當(dāng)服務(wù)器,這取決于計(jì)算機(jī)系統(tǒng)是在請求還是提供信息。另外,盡管已經(jīng)使用客戶端-服務(wù)器環(huán)境描述本發(fā)明的方面,應(yīng)認(rèn)識到本發(fā)明還可在獨(dú)立計(jì)算機(jī)系統(tǒng)中體現(xiàn)。本發(fā)明的方面可使用客戶端-服務(wù)器環(huán)境或云計(jì)算環(huán)境來體現(xiàn)。
服務(wù)器122負(fù)責(zé)從客戶端系統(tǒng)113、116和119接收信息請求、執(zhí)行滿足請求所需要的處理并且將對應(yīng)于請求的結(jié)果轉(zhuǎn)發(fā)回到請求客戶端系統(tǒng)。滿足請求所需要的處理可由服務(wù)器系統(tǒng)122執(zhí)行或可備選地委托給連接到通信網(wǎng)絡(luò)124的其他服務(wù)器。
客戶端系統(tǒng)113、116和119使用戶能夠訪問并且查詢由服務(wù)器系統(tǒng)122存儲的信息。在特定實(shí)施例中,在客戶端系統(tǒng)上執(zhí)行的“web瀏覽器”應(yīng)用使用戶能夠選擇、訪問、檢索或查詢由服務(wù)器系統(tǒng)122存儲的信息。web瀏覽器的示例包括由microsoft?corporation提供的internetexplorer?瀏覽器程序和由mozilla?foundation提供的firefox?瀏覽器及其他。
圖2示出可在圖1中示出的分布式計(jì)算機(jī)網(wǎng)絡(luò)100中使用的示范性客戶端或服務(wù)器系統(tǒng)。在實(shí)施例中,用戶通過計(jì)算機(jī)工作站系統(tǒng)(例如在圖2中示出的)與系統(tǒng)接口。盡管圖2圖示計(jì)算機(jī)工作站,用戶可以通過例如移動(dòng)電話、便攜式計(jì)算機(jī)或計(jì)算機(jī)平板等移動(dòng)設(shè)備與系統(tǒng)接口。圖2示出計(jì)算機(jī)系統(tǒng)201,其包括監(jiān)視器203、屏幕205、柜207、鍵盤209和鼠標(biāo)211。鼠標(biāo)211可具有一個(gè)或多個(gè)按鈕,例如鼠標(biāo)按鈕213。柜207容置熟悉的計(jì)算機(jī)組件,其中的一些未被示出,例如處理器、存儲器、大容量存儲設(shè)備217及類似物。
大容量存儲設(shè)備217可包括大容量磁盤驅(qū)動(dòng)器、軟盤、磁盤、光盤、磁光盤、固定盤、硬盤、cd-rom、可刻錄cd、dvd、可刻錄dvd(例如,dvd-r、dvd+r、dvd-rw、dvd+rw、hd-dvd或blu-raydisc?)、閃速和其他非易失性固態(tài)存儲(例如,usb閃速驅(qū)動(dòng)器)、電池備份易失性存儲器、帶式存儲、閱讀器和其他相似介質(zhì),及這些的組合。
各種實(shí)現(xiàn)的計(jì)算機(jī)實(shí)現(xiàn)或計(jì)算機(jī)可執(zhí)行版本可使用計(jì)算機(jī)可讀介質(zhì)或非暫時(shí)性計(jì)算機(jī)可讀介質(zhì)來體現(xiàn)、存儲在其上或與之關(guān)聯(lián)。計(jì)算機(jī)可讀介質(zhì)可包括參與向一個(gè)或多個(gè)處理器提供指令以供執(zhí)行的任何介質(zhì)。這樣的介質(zhì)可采取許多形式,其包括但不限于非易失性、易失性和傳輸介質(zhì)。非易失性介質(zhì)包括例如閃速存儲器或光或磁盤。易失性介質(zhì)包括靜態(tài)或動(dòng)態(tài)存儲器,例如高速緩存存儲器或ram。傳輸介質(zhì)包括同軸電纜、銅線、光纖線路和設(shè)置在總線中的線。傳輸介質(zhì)還可以采取電磁、射頻、聲或光波的形式,例如在無線電波和紅外數(shù)據(jù)通信中生成的那些。
例如,軟件的二進(jìn)制、機(jī)器可執(zhí)行版本可存儲或駐存在ram或高速緩存存儲器中,或在大容量存儲設(shè)備217上。軟件的源代碼也可存儲或駐存在大容量存儲設(shè)備217(例如,硬盤、磁盤、帶或cd-rom)上。作為另外的示例,代碼可經(jīng)由線、無線電波或通過網(wǎng)絡(luò)(例如因特網(wǎng))傳輸。
圖3示出計(jì)算機(jī)系統(tǒng)201的系統(tǒng)框圖。與圖2中一樣,計(jì)算機(jī)系統(tǒng)201包括監(jiān)視器203、鍵盤209和大容量存儲設(shè)備217。計(jì)算機(jī)系統(tǒng)201進(jìn)一步包括子系統(tǒng),例如中央處理器302、系統(tǒng)存儲器304、輸入/輸出(i/o)控制器306、顯示適配器308、串行或通用串行總線(usb)端口312、網(wǎng)絡(luò)接口318和揚(yáng)聲器320。在實(shí)施例中,計(jì)算機(jī)系統(tǒng)包括額外或更少組件。例如,計(jì)算機(jī)系統(tǒng)可以包括不只一個(gè)處理器302(即,多處理器系統(tǒng))或系統(tǒng)可包括高速緩存存儲器。
例如322等箭頭代表計(jì)算機(jī)系統(tǒng)201的系統(tǒng)總線架構(gòu)。然而,這些箭頭圖示起到使子系統(tǒng)鏈接作用的任何互連方案。例如,揚(yáng)聲器320可以通過端口連接到其他子系統(tǒng)或具有到中央處理器302的內(nèi)部直接連接。處理器可包括多個(gè)處理器或多核處理器,其可準(zhǔn)許信息的并行處理。圖2中示出的計(jì)算機(jī)系統(tǒng)201只是適合的計(jì)算機(jī)系統(tǒng)的示例。適合使用的子系統(tǒng)的其他配置對于本領(lǐng)域內(nèi)技術(shù)人員將顯而易見。
計(jì)算機(jī)軟件產(chǎn)品可采用例如c、c++、c#、pascal、fortran、perl、matlab?(來自mathworks)、sas、spss、javascript?、ajax、java?、sql和xquery(專用于處理來自xml文件或可以視為xml、html或兩者的任何數(shù)據(jù)源的數(shù)據(jù)的查詢語言)等各種適合的編程語言中的任一個(gè)編寫。計(jì)算機(jī)軟件產(chǎn)品可以是具有數(shù)據(jù)輸入和數(shù)據(jù)顯示模塊的獨(dú)立應(yīng)用。備選地,計(jì)算機(jī)軟件產(chǎn)品可以是可例示為分布式對象的類。計(jì)算機(jī)軟件產(chǎn)品還可以是例如javabeans?(來自oraclecorporation)或企業(yè)javabeans?(來自oraclecorporation的ejb)等組件軟件。在特定實(shí)施例中,本發(fā)明提供計(jì)算機(jī)程序產(chǎn)品,其存儲例如計(jì)算機(jī)代碼等指令來對計(jì)算機(jī)編程以執(zhí)行描述的過程或技術(shù)中的任一個(gè)。
對于系統(tǒng)的操作系統(tǒng)可以是microsoftwindows?操作系統(tǒng)系列(例如,windows95?、98、me、windowsnt?、windows2000?、windowsxp?、windowsxp?x64版本、windowsvista?、windows7?、windowsce?、windowsmobile?)中的一個(gè)、linux、hp-ux、unix、sunos?、solaris?、macosx?、alphaos?、aix、irix32或irix64??墒褂闷渌僮飨到y(tǒng)。microsoftwindows?是microsoft?corporation的商標(biāo)。
此外,計(jì)算機(jī)可連接到網(wǎng)絡(luò)并且可使用該網(wǎng)絡(luò)與其他計(jì)算機(jī)接口。網(wǎng)絡(luò)可以是內(nèi)聯(lián)網(wǎng)、互聯(lián)網(wǎng)或因特網(wǎng)等。網(wǎng)絡(luò)可以是有線網(wǎng)絡(luò)(例如,使用銅)、電話網(wǎng)絡(luò)、分組網(wǎng)絡(luò)、光網(wǎng)絡(luò)(例如,使用光纖)或無線網(wǎng)絡(luò)或這些的任何組合。例如,數(shù)據(jù)和其他信息可使用無線網(wǎng)絡(luò)使用例如wi-fi(僅舉幾例,ieee標(biāo)準(zhǔn)802.11、802.11a、802.11b、802.11e、802.11g、802.11i和802.11n)等協(xié)議在計(jì)算機(jī)與系統(tǒng)的組件(或步驟)之間傳遞。例如,來自計(jì)算機(jī)的信號可至少部分無線地傳輸?shù)浇M件或其他計(jì)算機(jī)。
在實(shí)施例中,利用在計(jì)算機(jī)工作站系統(tǒng)上執(zhí)行的web瀏覽器,用戶通過例如因特網(wǎng)等網(wǎng)絡(luò)訪問萬維網(wǎng)(www)上的系統(tǒng)。web瀏覽器用于下載采用各種格式(其包括html、xml、文本、pdf和postscript)的web頁面或其他內(nèi)容,并且可用于將信息上傳到系統(tǒng)的其他部件。web瀏覽器可使用統(tǒng)一資源標(biāo)識符(url)來識別web上的資源以及在web上傳輸文件的超文本傳輸協(xié)議(http)。
圖4示出采用在圖1至3中示出的分布式計(jì)算機(jī)網(wǎng)絡(luò)100中可使用客戶端或服務(wù)器系統(tǒng)可訪問的數(shù)據(jù)庫系統(tǒng)的形式的數(shù)據(jù)源或數(shù)據(jù)服務(wù)。數(shù)據(jù)庫可以是數(shù)據(jù)庫管理系統(tǒng)的部分。一個(gè)適合的數(shù)據(jù)庫管理系統(tǒng)架構(gòu)是如示出的三層架構(gòu)。
數(shù)據(jù)庫管理系統(tǒng)的核心(中央存儲401(其保持或存儲數(shù)據(jù)庫或倉庫403))在第一層中。數(shù)據(jù)庫典型地駐存在一個(gè)或多個(gè)硬驅(qū)動(dòng)器上,并且大體上是較大計(jì)算機(jī)系統(tǒng)的部分。信息可采用多種格式存儲在數(shù)據(jù)庫中。示例是可擴(kuò)展標(biāo)記語言(xml)數(shù)據(jù)庫。xml數(shù)據(jù)庫是允許采用xml格式存儲數(shù)據(jù)的數(shù)據(jù)持久性軟件系統(tǒng)。另一個(gè)示例是關(guān)系數(shù)據(jù)庫管理系統(tǒng)(rdms),其使用表來存儲信息。
數(shù)據(jù)庫服務(wù)器405在第二層中。數(shù)據(jù)庫服務(wù)器是與數(shù)據(jù)庫交互的程序的實(shí)例。數(shù)據(jù)庫服務(wù)器的每個(gè)實(shí)例除其他特征可獨(dú)立查詢數(shù)據(jù)庫并且將信息存儲在數(shù)據(jù)庫中。根據(jù)實(shí)現(xiàn),數(shù)據(jù)庫服務(wù)器405可包括或可不包括用戶友好界面,例如圖形用戶界面。
應(yīng)用服務(wù)器407在第三層中??纱嬖诙鄠€(gè)應(yīng)用服務(wù)器。在實(shí)現(xiàn)中,應(yīng)用服務(wù)器向數(shù)據(jù)庫服務(wù)器提供用戶界面。通過示例,應(yīng)用服務(wù)器可以是因特網(wǎng)上的web應(yīng)用服務(wù)器或任何其他網(wǎng)絡(luò)。應(yīng)用服務(wù)器還可以是虛擬數(shù)據(jù)庫服務(wù)器或虛擬目錄服務(wù)器。應(yīng)用服務(wù)器可提供用戶友好機(jī)構(gòu)和界面用于通過數(shù)據(jù)庫服務(wù)器來訪問數(shù)據(jù)庫。在實(shí)現(xiàn)中,web瀏覽器409用于訪問應(yīng)用服務(wù)器。
在接著的描述中,將參考由一個(gè)或多個(gè)設(shè)備執(zhí)行的操作的動(dòng)作和符號表示來描述主旨,除非另外指示。如此,將理解這樣的動(dòng)作和操作(有時(shí)稱為計(jì)算機(jī)執(zhí)行的)包括處理單元對采用結(jié)構(gòu)化形式的數(shù)據(jù)的操縱。該操縱變換數(shù)據(jù)或使它維持在計(jì)算機(jī)的存儲器系統(tǒng)中的位點(diǎn)處,這采用本領(lǐng)域內(nèi)技術(shù)人員很好理解的方式重新配置或另外更改設(shè)備的操作。維持?jǐn)?shù)據(jù)所在的數(shù)據(jù)結(jié)構(gòu)是這樣的存儲器物理位點(diǎn),其具有由數(shù)據(jù)格式定義的特定性質(zhì)。然而,盡管在前面的上下文中描述主旨,這并不意在為限制性的,因?yàn)楸绢I(lǐng)域內(nèi)技術(shù)人員將意識到下文描述的各種動(dòng)作和操作還可在硬件中實(shí)現(xiàn)。
為了便于理解下文描述的主旨,從動(dòng)作序列方面描述許多方面。由權(quán)利要求限定的這些方面中的至少一個(gè)由電子硬件部件執(zhí)行。例如,將認(rèn)識到各種動(dòng)作可以由專用電路或電路、由一個(gè)或多個(gè)處理器執(zhí)行的程序指令或由兩者的組合執(zhí)行。本文的任何動(dòng)作序列的描述不意在暗指必須遵循對執(zhí)行該序列描述的特定順序。本文描述的所有方法可以采用任何適合的順序執(zhí)行,除非本文另外指示或另外與上下文明顯相抵觸。
圖5示出用于選擇根據(jù)一些實(shí)現(xiàn)所實(shí)現(xiàn)的對話布局的系統(tǒng)500的示例的框圖。在各種實(shí)現(xiàn)中,系統(tǒng)500可處理請求來優(yōu)化軟件應(yīng)用的對話布局,例如企業(yè)應(yīng)用。在一些實(shí)現(xiàn)中,系統(tǒng)500可包括服務(wù)器502、應(yīng)用模塊504、企業(yè)應(yīng)用506、web服務(wù)器508、網(wǎng)絡(luò)510、用戶界面優(yōu)化器512、渲染引擎514、對話庫516、存儲卷517a、存儲卷517b、分析引擎518、存儲設(shè)備522、存儲卷523a和存儲卷523b。此外,系統(tǒng)500可包括任意數(shù)量的客戶端,例如第一、第二和第三客戶端501a、501b和501c,其經(jīng)由網(wǎng)絡(luò)510訪問服務(wù)器502。
客戶端是具有硬件和軟件的通用計(jì)算機(jī),例如在上文描述的在圖1和3中示出的。例如,第一客戶端包括第一顯示器525a、第一應(yīng)用程序(例如,第一瀏覽器程序)527a、輸入設(shè)備、處理器、存儲器和存儲。相似地,第二客戶端包括第二顯示器525b、第二應(yīng)用程序(例如,第二瀏覽器程序)527b、輸入設(shè)備、處理器、存儲器和存儲。第三客戶端包括第三顯示器525c、第三應(yīng)用程序(例如,第三瀏覽器程序)527c、輸入設(shè)備、處理器、存儲器和存儲。
圖5示出三個(gè)客戶端。應(yīng)意識到企業(yè)可以具有任意數(shù)量的客戶端,例如幾十、幾百或幾千個(gè)客戶端??蛻舳藞?zhí)行可執(zhí)行代碼(或計(jì)算機(jī)可讀代碼),其體現(xiàn)如在該申請中描述的技術(shù)或算法。瀏覽器是可以請求、接收和處理來自用戶、服務(wù)器或兩者的數(shù)據(jù)的應(yīng)用程序。數(shù)據(jù)可以經(jīng)由顯示器示出。盡管圖5圖示在客戶機(jī)上顯示數(shù)據(jù),數(shù)據(jù)也可以在例如移動(dòng)電話、膝上型計(jì)算機(jī)或計(jì)算機(jī)平板等移動(dòng)設(shè)備上顯示。
在各種實(shí)現(xiàn)中,系統(tǒng)500可包括服務(wù)器502。該服務(wù)器包括與圖1和4中描述的組件相似的組件。在一些實(shí)現(xiàn)中,服務(wù)器502可包括用于運(yùn)行一個(gè)或多個(gè)服務(wù)器來滿足網(wǎng)絡(luò)510上的其他計(jì)算機(jī)和用戶的需求的硬件和軟件。從而,服務(wù)器502可包括能夠執(zhí)行軟件操作并且服務(wù)于web頁面的一個(gè)或多個(gè)處理器和存儲器。將意識到在一些實(shí)現(xiàn)中,服務(wù)器502可包括分布式或云計(jì)算網(wǎng)絡(luò)中的若干服務(wù)器。
在各種實(shí)現(xiàn)中,服務(wù)器502可包括應(yīng)用模塊,例如應(yīng)用模塊504。在一些實(shí)現(xiàn)中,應(yīng)用模塊504包括可用于執(zhí)行一個(gè)或多個(gè)軟件應(yīng)用的軟件和硬件。從而,應(yīng)用模塊可包括配置服務(wù)器502的功能性的軟件和/或固件指令。
根據(jù)各種實(shí)現(xiàn),應(yīng)用模塊504包括企業(yè)應(yīng)用506。在特定實(shí)現(xiàn)中,企業(yè)應(yīng)用506可包括軟件指令,其在由一個(gè)或多個(gè)處理器執(zhí)行時(shí)執(zhí)行與企業(yè)應(yīng)用關(guān)聯(lián)的一個(gè)或多個(gè)進(jìn)程。從而,企業(yè)應(yīng)用506可包括軟件指令,其在用戶執(zhí)行企業(yè)應(yīng)用進(jìn)程時(shí)配置由該用戶執(zhí)行的一個(gè)或多個(gè)任務(wù)。
在各種實(shí)現(xiàn)中,應(yīng)用模塊504可包括用于服務(wù)web頁面的應(yīng)用,例如web服務(wù)器508。在一些實(shí)現(xiàn)中,web服務(wù)器508使web頁面服務(wù)于由企業(yè)應(yīng)用的用戶操作的客戶機(jī)。從而,根據(jù)各種實(shí)現(xiàn),例如web服務(wù)器508等應(yīng)用可將web頁面和來自服務(wù)器502的存儲卷的其他內(nèi)容交付給客戶機(jī)的瀏覽器。從而,根據(jù)各種實(shí)現(xiàn),企業(yè)應(yīng)用通過網(wǎng)絡(luò)使用瀏覽器而對客戶機(jī)可訪問。例如,客戶端計(jì)算機(jī)系統(tǒng)501a-501c處的第一、第二和第三用戶通過使用瀏覽器來訪問應(yīng)用而分別登錄。應(yīng)用可需要用戶輸入用戶名和密碼使得用戶可以被驗(yàn)證。用戶可以是相同公司、組織、實(shí)體、合伙企業(yè)、合資企業(yè)的員工、同事、伙伴或成員或具有業(yè)務(wù)關(guān)系(例如,供應(yīng)商-制造商關(guān)系,或客戶-供應(yīng)商關(guān)系)等。
在各種實(shí)現(xiàn)中,系統(tǒng)500可包括用戶界面(ui)優(yōu)化器512。在一些實(shí)現(xiàn)中,ui優(yōu)化器512可配置成處理請求以在企業(yè)應(yīng)用過程中優(yōu)化對于一個(gè)或多個(gè)對話的對話布局。從而,ui優(yōu)化器512可經(jīng)由網(wǎng)絡(luò)510與例如客戶機(jī)或服務(wù)器502等其他實(shí)體通信并且接收請求來優(yōu)化對話布局。ui優(yōu)化器512可通過與可耦合于網(wǎng)絡(luò)的系統(tǒng)500的其他組件(例如分析引擎518和對話布局庫516)通信來處理請求。ui優(yōu)化器可經(jīng)由網(wǎng)絡(luò)510返回請求或?qū)φ埱蟮捻憫?yīng)。
在各種實(shí)現(xiàn)中,ui優(yōu)化器512可包括渲染引擎,例如渲染引擎514。在各種實(shí)現(xiàn)中,渲染引擎514可配置成將數(shù)據(jù)對象渲染成在能夠客戶機(jī)的顯示設(shè)備中顯示的渲染數(shù)據(jù)對象。例如,渲染引擎514可將中間數(shù)據(jù)結(jié)構(gòu)渲染成能夠由web瀏覽器顯示的超文本標(biāo)記語言(html)。從而,根據(jù)各種實(shí)現(xiàn),渲染引擎514可配置成將對話布局渲染成可在客戶機(jī)、移動(dòng)電話、膝上型計(jì)算機(jī)或計(jì)算機(jī)平板的web瀏覽器中顯示的對話。
在各種實(shí)現(xiàn)中,系統(tǒng)500可包括對話布局庫516。在一些實(shí)現(xiàn)中,對話布局庫516可包括一個(gè)或多個(gè)存儲卷,例如存儲卷517a和517b。在特定實(shí)現(xiàn)中,對話布局庫516可配置成存儲與各種對話布局關(guān)聯(lián)的信息,例如可在對話布局中顯示的內(nèi)容。例如,對話布局庫516可存儲一個(gè)或多個(gè)數(shù)據(jù)值,其標(biāo)識文本框內(nèi)容或控件的外觀和功能。從而,對話布局庫516可對于與可在本文描述的方法的各種不同階段使用的各種不同對話布局關(guān)聯(lián)的信息和內(nèi)容提供倉庫。
在各種實(shí)現(xiàn)中,系統(tǒng)500可包括分析引擎518。在一些實(shí)現(xiàn)中,分析引擎518可配置成動(dòng)態(tài)分析來自企業(yè)應(yīng)用的用戶的響應(yīng)并且選擇要提供給用戶的一個(gè)或多個(gè)對話布局。從而,分析引擎518可配置成跟蹤從用戶和系統(tǒng)500的其他組件接收的輸入,并且可進(jìn)一步配置成基于該跟蹤信息做出一個(gè)或多個(gè)決策。
在各種實(shí)現(xiàn)中,分析引擎518可配置成存儲與已經(jīng)做出的決策有關(guān)的數(shù)據(jù)和元數(shù)據(jù),以及用于做出決策的數(shù)據(jù)。從而,根據(jù)一些實(shí)現(xiàn),系統(tǒng)500可包括存儲系統(tǒng)522,其中存儲系統(tǒng)522可耦合于分析引擎518。在各種實(shí)現(xiàn)中,存儲系統(tǒng)522可包括一個(gè)或多個(gè)存儲卷,例如存儲卷523a和存儲卷523b。在特定實(shí)現(xiàn)中,存儲系統(tǒng)522可存儲由分析引擎518生成并且被分析引擎518使用的信息。從而,標(biāo)識由分析引擎518做出的決策以及由其測量的度量的一個(gè)或數(shù)據(jù)值可存儲在存儲系統(tǒng)522中。
圖6示出根據(jù)示范性實(shí)施例的框圖,其圖示使用與圖示在圖1至5中描述的可用于使能并行驗(yàn)證的組件相似的軟件和硬件組件的示例系統(tǒng)。圖600包括客戶端計(jì)算機(jī)系統(tǒng)605,其經(jīng)由網(wǎng)絡(luò)620耦合于異地(off-premise)存儲系統(tǒng)650。異地存儲系統(tǒng)650可與異地驗(yàn)證器655關(guān)聯(lián)。異地存儲系統(tǒng)650可配置成存儲與企業(yè)關(guān)聯(lián)的信息。異地驗(yàn)證器655可配置成驗(yàn)證訪問在異地存儲系統(tǒng)650中存儲的信息的請求。對于一些實(shí)施例,異地存儲系統(tǒng)650和異地驗(yàn)證器655可與由代表企業(yè)的云計(jì)算服務(wù)提供商管理的基于云的網(wǎng)絡(luò)645關(guān)聯(lián)?;谠频木W(wǎng)絡(luò)645可以是代表企業(yè)管理的私有云。企業(yè)的用戶或員工可使用客戶端計(jì)算機(jī)系統(tǒng)605來發(fā)送訪問在異地存儲系統(tǒng)650中存儲的信息的請求。在請求訪問存儲在異地存儲系統(tǒng)650中的信息時(shí),請求可包括異地令牌610,其可被異地驗(yàn)證器655用于驗(yàn)證請求并且授權(quán)訪問。傳統(tǒng)上,異地存儲系統(tǒng)650可配置成存儲與企業(yè)關(guān)聯(lián)的敏感以及非敏感信息。因?yàn)樾畔⒖杀环菃T工、外部合約人或甚至心懷不滿的員工訪問,這可造成對敏感信息的潛在未經(jīng)授權(quán)訪問。
對于一些實(shí)施例,敏感信息可存儲在耦合于網(wǎng)絡(luò)620的本地存儲系統(tǒng)630中。本地存儲系統(tǒng)630可與本地驗(yàn)證器635關(guān)聯(lián),其配置成驗(yàn)證訪問存儲在異地存儲系統(tǒng)630中的信息的請求。對于一些實(shí)施例,本地存儲系統(tǒng)630和本地驗(yàn)證器635可連接到內(nèi)聯(lián)網(wǎng)或本地網(wǎng)絡(luò)625。例如,本地存儲系統(tǒng)630可在企業(yè)的數(shù)據(jù)中心被本地定位和管理。
對于一些實(shí)施例,來自客戶端計(jì)算機(jī)系統(tǒng)605的訪問存儲在本地存儲系統(tǒng)630中的信息的請求可包括本地令牌615和異地令牌610。本地令牌615和異地令牌610可包括在http(超文本傳輸協(xié)議)報(bào)頭中,其形成訪問存儲在本地存儲系統(tǒng)630中的信息的請求。本地和異地令牌615和610也可稱為訪問令牌。根據(jù)如何使用客戶端計(jì)算機(jī)系統(tǒng)605,本地和異地令牌615和610可以是用戶訪問令牌或應(yīng)用訪問令牌。這些訪問令牌610和615可從本地存儲系統(tǒng)625和異地存儲系統(tǒng)635獲得來對本地和異地存儲系統(tǒng)625和635提供安全訪問。
對于一些實(shí)施例,為了對敏感信息提供更好的保護(hù),訪問存儲在本地存儲系統(tǒng)630中的敏感信息的所有請求需要本地令牌615和異地令牌610兩者。在本地存儲系統(tǒng)630接收請求時(shí),異地令牌610和本地令牌615可從請求的http報(bào)頭提取并且發(fā)送到相應(yīng)的異地驗(yàn)證器655和本地驗(yàn)證器635用于兩個(gè)驗(yàn)證。對于一些實(shí)施例,請求的驗(yàn)證可由異地驗(yàn)證器655和本地驗(yàn)證器635兩者并行執(zhí)行,并且僅在兩個(gè)驗(yàn)證都成功時(shí)批準(zhǔn)對信息的訪問。對于一些實(shí)施例,在存在訪問加密文件的請求時(shí)也可應(yīng)用并行驗(yàn)證方法。例如,本地存儲系統(tǒng)630可使用安全斷言標(biāo)記語言(saml)將本地令牌615發(fā)送到本地驗(yàn)證器655。saml是基于xml的開放標(biāo)準(zhǔn)數(shù)據(jù)格式,用于在多方之間交換驗(yàn)證和授權(quán)數(shù)據(jù)。備選地,本地存儲系統(tǒng)630可使用輕量目錄訪問協(xié)議(ldap)或其他方法來與本地驗(yàn)證器635通信。并行驗(yàn)證方法可使在本地驗(yàn)證或異地驗(yàn)證中的任一個(gè)受損害的情況下對敏感信息的未經(jīng)授權(quán)的訪問的風(fēng)險(xiǎn)降低。
圖7示出根據(jù)示范性實(shí)施例的流程圖,其圖示可被執(zhí)行來驗(yàn)證對信息的請求的示例過程。操作可由例如圖6中示出的存儲系統(tǒng)630等本地存儲系統(tǒng)執(zhí)行。過程可在接收對存儲在本地存儲系統(tǒng)中的文件的下載請求或訪問請求時(shí)在框705處開始。本地存儲系統(tǒng)可配置成存儲敏感信息,并且因此需要額外安全保護(hù)來防止未經(jīng)授權(quán)的訪問。這可包括執(zhí)行本地驗(yàn)證和異地驗(yàn)證。這可通過要求與本地存儲系統(tǒng)關(guān)聯(lián)的所有下載請求包括兩個(gè)令牌(例如圖6中示出的令牌610和615)而實(shí)現(xiàn)。兩個(gè)令牌可與下載請求一起發(fā)送。
在框710處,執(zhí)行測試來確定下載請求是否包括必要的令牌。如果下載請求不包括令牌或僅包括一個(gè)令牌,拒絕下載請求,如在框735中示出的?;诎▋蓚€(gè)令牌的下載請求,過程從框710繼續(xù)到框715,其中識別兩個(gè)令牌來確定要用于本地驗(yàn)證的令牌和要用于異地驗(yàn)證的令牌。在框720處,本地存儲系統(tǒng)配置成促使使用這兩個(gè)令牌來執(zhí)行本地驗(yàn)證和異地驗(yàn)證。這可包括向本地驗(yàn)證器發(fā)送本地令牌和向異地驗(yàn)證器發(fā)送異地令牌。兩個(gè)驗(yàn)證可并行執(zhí)行。
在框725處,執(zhí)行測試來確定是否成功完成本地和異地驗(yàn)證兩者。成功完成可意指下載請求被證實(shí)為合法的并且來自授權(quán)用戶或授權(quán)客戶端計(jì)算機(jī)系統(tǒng)。如果存在成功完成,過程可繼續(xù)到框730,其中下載請求被授權(quán)并且下載操作可開始。如果從框725用本地和異地驗(yàn)證器中的任一個(gè)或兩個(gè)確定驗(yàn)證失敗,可拒絕借用請求,如在框735中示出的。
圖8示出根據(jù)示范性實(shí)施例的流程圖,其圖示可由客戶端計(jì)算機(jī)系統(tǒng)執(zhí)行來訪問存儲在本地存儲系統(tǒng)中的敏感文件的示例過程。操作可由圖6中示出的客戶端計(jì)算機(jī)系統(tǒng)605執(zhí)行。過程可在客戶端計(jì)算機(jī)系統(tǒng)從本地存儲系統(tǒng)獲得訪問令牌時(shí)在框805處開始。在框810處,客戶端計(jì)算機(jī)系統(tǒng)從異地存儲系統(tǒng)獲得訪問令牌。在框815處,兩個(gè)令牌可添加到下載請求。例如,它們可嵌入http報(bào)頭中。在框820處,下載請求從客戶端計(jì)算機(jī)系統(tǒng)發(fā)送到本地存儲系統(tǒng)。本地存儲系統(tǒng)然后可向本地驗(yàn)證器發(fā)送本地令牌并且向異地驗(yàn)證器發(fā)送異地令牌以用于驗(yàn)證。
在上文以及整個(gè)描述中,闡述許多特定細(xì)節(jié)以便提供對該公開的實(shí)施例的全面理解。然而,實(shí)施例可在沒有這些特定細(xì)節(jié)的情況下實(shí)踐,這對于本領(lǐng)域內(nèi)普通技術(shù)人員將是明顯的。在其他實(shí)例中,采用框圖形式示出眾所周知的結(jié)構(gòu)和設(shè)備以便于解釋。優(yōu)選實(shí)施例的描述不意在限制附于此的權(quán)利要求的范圍。此外,在本文公開的方法中,公開各種步驟,其圖示實(shí)施例的功能中的一些。這些步驟僅僅是示例,并且不以任何方式意在為限制性的??深A(yù)想其他步驟和功能而不偏離該公開或?qū)嵤├姆秶?/p>