專利名稱:數(shù)據(jù)服務(wù)器、數(shù)據(jù)管理方法和數(shù)據(jù)管理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于當(dāng)數(shù)據(jù)項被從一個服務(wù)器移動到另一個服務(wù)器并且用戶請求原始服務(wù)器提供該數(shù)據(jù)項時使該用戶能夠獲得該數(shù)據(jù)項的技術(shù),具體而言,本發(fā)明涉及傳送關(guān)于服務(wù)器的用戶驗證。
背景技術(shù):
按照慣例,在本領(lǐng)域中可以得到以下技術(shù)。數(shù)據(jù)管理系統(tǒng)通過為每個文件附加一個被稱為“句柄”的唯一標(biāo)識符來管理文件。該數(shù)據(jù)管理系統(tǒng)向用戶提供用于指定系統(tǒng)的服務(wù)器名稱和文件句柄的虛擬URL、而不是提供通常采用的表示該文件的位置(所位于的服務(wù)器和該服務(wù)器內(nèi)該文件路徑名的結(jié)合)的URL,作為該文件的URL(統(tǒng)一資源定位符)。當(dāng)用戶利用該虛擬URL訪問系統(tǒng)時,系統(tǒng)根據(jù)句柄識別出文件的位置,并將文件提供給用戶。利用該技術(shù),即使當(dāng)文件被移動到該數(shù)據(jù)管理系統(tǒng)上的任意位置(目錄)時,也可以響應(yīng)用戶的請求而找到該文件。
然而,該技術(shù)只限于獲取一個數(shù)據(jù)管理系統(tǒng)內(nèi)管理的文件或內(nèi)容的位置,因此,例如,不能處理在網(wǎng)絡(luò)上的多個數(shù)據(jù)管理系統(tǒng)之間移動該文件或該內(nèi)容的位置的情況。
作為即使當(dāng)文件或內(nèi)容已經(jīng)在多個數(shù)據(jù)管理服務(wù)器之間進行了移動時也能夠使用戶通過找到該文件或內(nèi)容的位置來獲得該文件或內(nèi)容的方法,可以考慮這樣一種方法,其中將移動目的地的URL注冊在該數(shù)據(jù)項被移出的服務(wù)器中,并且當(dāng)用戶請求該移動發(fā)起端服務(wù)器提供該數(shù)據(jù)項時,該服務(wù)器將該請求重定向為該移動目的地的URL(HTTP重定向)。然而,該方法在各數(shù)據(jù)管理服務(wù)器的用戶驗證方面存在一個問題。更具體而言,即使當(dāng)用戶在成功完成用戶驗證的情況下請求數(shù)據(jù)移動發(fā)起端服務(wù)器提供該數(shù)據(jù)項時,如果該請求被重定向,考慮到該用戶在該移動目的地服務(wù)器未獲驗證,則該請求可能會被拒絕。即使不出現(xiàn)這種情況,該用戶也必須在該移動目的地處被重新驗證,這給用戶帶來不便。
作為在多個設(shè)備之間傳送用戶驗證的技術(shù),可以使用以下方法。具體而言,提供一個管理登錄狀態(tài)的服務(wù)器,并且以集中的方式控制用戶的登錄狀態(tài)。當(dāng)用戶訪問每個應(yīng)用時,該應(yīng)用向該中央服務(wù)器發(fā)送一個查詢,從而在各個應(yīng)用之間傳送該登錄狀態(tài)。
該現(xiàn)有技術(shù)方法需要提供一個服務(wù)器來管理登錄狀態(tài),并且存在當(dāng)該服務(wù)器中發(fā)生問題時該系統(tǒng)就不能工作的問題。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個方面,提供了一個數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成一個數(shù)據(jù)管理系統(tǒng),所述數(shù)據(jù)服務(wù)器包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從客戶機接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向所述客戶機提供所請求的數(shù)據(jù)項;重定向部分,當(dāng)在所述數(shù)據(jù)管理部分中沒有找到所請求的數(shù)據(jù)項時,檢測所述數(shù)據(jù)管理系統(tǒng)中存儲有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器,接收來自該數(shù)據(jù)服務(wù)器的臨時驗證信息,并向所述客戶機發(fā)送用于在該數(shù)據(jù)服務(wù)器中識別所請求數(shù)據(jù)項的信息和所述臨時驗證信息。
根據(jù)本發(fā)明的另一方面,提供了一個數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成數(shù)據(jù)管理系統(tǒng),所述數(shù)據(jù)服務(wù)器包括用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從客戶機接收到數(shù)據(jù)請求時,在數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向所述客戶機提供所請求的數(shù)據(jù)項;查詢響應(yīng)部分,當(dāng)從所述數(shù)據(jù)管理系統(tǒng)中的另一數(shù)據(jù)服務(wù)器接收到關(guān)于所請求數(shù)據(jù)項是否存在的查詢時,搜索所述數(shù)據(jù)管理部分,并且,當(dāng)找到所請求的數(shù)據(jù)項時,生成臨時驗證信息,將該臨時驗證信息存儲在臨時驗證信息存儲部分中,并將該臨時驗證信息通知給所述另一數(shù)據(jù)服務(wù)器。
根據(jù)本發(fā)明的另一方面,提供了第一數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成數(shù)據(jù)管理系統(tǒng),所述第一數(shù)據(jù)服務(wù)器包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從用戶接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向客戶機提供所請求的數(shù)據(jù)項;重定向部分,當(dāng)在所述數(shù)據(jù)管理部分沒有找到所請求的數(shù)據(jù)項時,檢測所述數(shù)據(jù)管理系統(tǒng)中存儲有所請求數(shù)據(jù)項的第二數(shù)據(jù)服務(wù)器,生成用于所請求數(shù)據(jù)項的臨時驗證信息,生成重定向信息,并將該重定向信息返回到所述客戶機,該重定向信息包括用于在所述第二數(shù)據(jù)服務(wù)器中識別所請求數(shù)據(jù)項的信息、用于所請求數(shù)據(jù)項的臨時驗證信息和所述第一數(shù)據(jù)服務(wù)器的服務(wù)器識別信息。
根據(jù)本發(fā)明的另一方面,提供了第二數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成數(shù)據(jù)管理系統(tǒng),所述第二數(shù)據(jù)服務(wù)器包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從用戶接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向客戶機提供所請求的數(shù)據(jù)項;重定向驗證部分,當(dāng)從未完成用戶驗證的客戶機接收到數(shù)據(jù)請求時,向由從該數(shù)據(jù)請求中提取的服務(wù)器識別信息指示的第一數(shù)據(jù)服務(wù)器發(fā)送關(guān)于從該數(shù)據(jù)請求中提取的臨時驗證信息有效性的查詢,并且,當(dāng)接收到指示該臨時驗證信息有效的查詢響應(yīng)時,接受該數(shù)據(jù)請求,而不使所述客戶機執(zhí)行用戶驗證過程。
根據(jù)本發(fā)明的另一方面,提供了一種由數(shù)據(jù)服務(wù)器執(zhí)行的數(shù)據(jù)管理方法,所述數(shù)據(jù)服務(wù)器與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成一個數(shù)據(jù)管理系統(tǒng),所述方法包括當(dāng)從已成功驗證過的客戶機接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)服務(wù)器中搜索該數(shù)據(jù)請求中所請求的數(shù)據(jù)項;當(dāng)找到所請求的數(shù)據(jù)項時,提供所請求的數(shù)據(jù)項;當(dāng)沒有找到所請求的數(shù)據(jù)項時,通過向另一數(shù)據(jù)服務(wù)器發(fā)送關(guān)于所請求數(shù)據(jù)項是否存在的查詢,將具有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器識別為轉(zhuǎn)移目的地服務(wù)器;從所述轉(zhuǎn)移目的地服務(wù)器接收臨時驗證信息;向所述客戶機返回重定向信息,該重定向信息包括用于在所述轉(zhuǎn)移目的地服務(wù)器中識別所請求數(shù)據(jù)項的訪問信息和所述臨時驗證信息。
根據(jù)本發(fā)明的另一方面,提供了一種由數(shù)據(jù)服務(wù)器執(zhí)行的數(shù)據(jù)管理方法,所述數(shù)據(jù)服務(wù)器與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成一個數(shù)據(jù)管理系統(tǒng),所述方法包括當(dāng)從已成功驗證過的用戶接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)服務(wù)器中搜索該數(shù)據(jù)請求中所請求的數(shù)據(jù)項;當(dāng)找到所請求的數(shù)據(jù)項時,向所述客戶機提供所請求的數(shù)據(jù)項;當(dāng)沒有找到所請求的數(shù)據(jù)項時,通過向另一數(shù)據(jù)服務(wù)器發(fā)送關(guān)于所請求數(shù)據(jù)項是否存在的查詢,將具有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器識別為轉(zhuǎn)移目的地服務(wù)器;生成用于所請求數(shù)據(jù)項的臨時驗證信息;生成重定向信息并將該重定向信息返回到所述客戶機,該重定向信息包括用于在所述轉(zhuǎn)移目的地服務(wù)器中識別所請求數(shù)據(jù)項的訪問信息、用于所請求數(shù)據(jù)項的臨時驗證信息和所述數(shù)據(jù)服務(wù)器的服務(wù)器識別信息。
根據(jù)本發(fā)明的另一方面,提供了一種數(shù)據(jù)管理系統(tǒng),包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從客戶機接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,將所請求的數(shù)據(jù)項提供給所述客戶機;重定向部分,當(dāng)在所述數(shù)據(jù)管理部分中沒有找到所請求的數(shù)據(jù)項時,檢測所述數(shù)據(jù)管理系統(tǒng)中存儲有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器,接收來自該數(shù)據(jù)服務(wù)器的臨時驗證信息,并向所述客戶機發(fā)送用于在該數(shù)據(jù)服務(wù)器中識別所請求數(shù)據(jù)項的信息和所述臨時驗證信息;查詢響應(yīng)部分,當(dāng)從所述數(shù)據(jù)管理系統(tǒng)中的另一數(shù)據(jù)服務(wù)器接收到關(guān)于所請求數(shù)據(jù)項是否存在的查詢時,搜索所述數(shù)據(jù)管理部分,并且當(dāng)找到所請求的數(shù)據(jù)項時,生成臨時驗證信息,將該臨時驗證信息存儲在臨時驗證信息存儲部分中,并將該臨時驗證信息通知給所述另一數(shù)據(jù)服務(wù)器。
通過以下結(jié)合附圖的詳細說明,本發(fā)明的這些和其他方面將變得很明顯,其中相似部分具有相同的參考標(biāo)號,其中圖1是表示一個數(shù)據(jù)管理系統(tǒng)的示意圖;圖2是表示數(shù)據(jù)管理部分中數(shù)據(jù)項的管理信息的結(jié)構(gòu)示意圖;圖3是舉例說明虛擬URL的示意圖;圖4是表示當(dāng)從客戶機接收數(shù)據(jù)請求信息時由數(shù)據(jù)服務(wù)器執(zhí)行的處理的流程圖;圖5是表示當(dāng)從另一數(shù)據(jù)服務(wù)器接收查詢時由該數(shù)據(jù)服務(wù)器執(zhí)行的處理的流程圖;圖6是說明圖1系統(tǒng)的操作的示意圖;圖7是說明圖1系統(tǒng)的操作的示意圖;圖8是說明圖1系統(tǒng)的操作的示意圖;圖9是表示使用用戶驗證傳送機制的數(shù)據(jù)服務(wù)器的示例性結(jié)構(gòu)的示意圖;圖10是表示由用戶信息管理部分管理的用戶信息的示例性數(shù)據(jù)內(nèi)容的示意圖;圖11是表示由訪問權(quán)限管理部分管理的訪問權(quán)信息的示例性數(shù)據(jù)內(nèi)容的示意圖;圖12是表示由臨時ID存儲部分管理的數(shù)據(jù)內(nèi)容的示意圖;圖13是表示數(shù)據(jù)管理系統(tǒng)中的處理的流程圖;圖14是表示當(dāng)從客戶機接收數(shù)據(jù)請求信息時數(shù)據(jù)服務(wù)器的一部分處理的流程圖;圖15是表示當(dāng)從客戶機接收數(shù)據(jù)請求信息時數(shù)據(jù)服務(wù)器的剩余部分處理的流程圖;
圖16是表示當(dāng)從另一數(shù)據(jù)服務(wù)器接收查詢時一個數(shù)據(jù)服務(wù)器的處理的流程圖;圖17是表示另一實施例中的處理的流程圖;圖18是說明當(dāng)使用多個LDAP服務(wù)器執(zhí)行用戶管理時的一個可選實施例的示意圖;以及圖19是表示一個用戶ID的映射信息的例子的流程圖。
具體實施例方式
圖1是表示的一個示例性數(shù)據(jù)管理系統(tǒng)的結(jié)構(gòu)示意圖。如圖1所示,該系統(tǒng)包括多個數(shù)據(jù)服務(wù)器10-1、10-2、...,這些數(shù)據(jù)服務(wù)器連接到網(wǎng)絡(luò)20,如LAN(局域網(wǎng))或因特網(wǎng)(下文中簡稱為“數(shù)據(jù)服務(wù)器10”,除非必須區(qū)分這些數(shù)據(jù)服務(wù)器;對于數(shù)據(jù)服務(wù)器10內(nèi)的模塊也是如此)。該系統(tǒng)響應(yīng)于來自網(wǎng)絡(luò)20上的客戶機30的數(shù)據(jù)請求,提供所請求的數(shù)據(jù)項。
每個數(shù)據(jù)服務(wù)器10包括數(shù)據(jù)管理部分12、檢測部分14和查詢部分16。在數(shù)據(jù)管理部分12中存儲了一個或多個數(shù)據(jù)項,并可以將這些數(shù)據(jù)項提供給客戶機30(下文中,將數(shù)據(jù)項簡稱為“數(shù)據(jù)”)。數(shù)據(jù)管理部分12管理每個所存儲的數(shù)據(jù)項,每個數(shù)據(jù)項對應(yīng)于一個全局唯一數(shù)據(jù)ID(標(biāo)識符)。例如,該全局唯一數(shù)據(jù)ID可以是已知為UUID(通用唯一標(biāo)識符)或GUID(全局唯一標(biāo)識符)的128比特的標(biāo)識符。UUID包括生成UUID的時間,機器中配備的網(wǎng)卡的MAC(媒體訪問控制)地址,用于生成UUID的,等等,以確保全局唯一性。當(dāng)該系統(tǒng)的數(shù)據(jù)ID是與數(shù)據(jù)項的位置信息無關(guān)的標(biāo)識符時,URL利用具有該數(shù)據(jù)項的數(shù)據(jù)服務(wù)器10的主機名和指示該數(shù)據(jù)項在數(shù)據(jù)服務(wù)器10中的實際存儲位置的路徑名,唯一地指定該數(shù)據(jù)項。
圖2表示由數(shù)據(jù)管理部分12管理的每個數(shù)據(jù)項的管理信息的數(shù)據(jù)結(jié)構(gòu)。如圖2所示,數(shù)據(jù)管理部分12通過使數(shù)據(jù)項的數(shù)據(jù)ID 102與指示該數(shù)據(jù)項在數(shù)據(jù)服務(wù)器10內(nèi)的位置的鏈接信息104相互關(guān)聯(lián)來管理每個所存儲的數(shù)據(jù)項。在該示例性結(jié)構(gòu)中,數(shù)據(jù)ID用UUID表示,鏈接信息用數(shù)據(jù)項的路徑名表示。
當(dāng)要存儲一個新數(shù)據(jù)項時,數(shù)據(jù)管理部分12生成一個全局唯一數(shù)據(jù)ID,并通過使該數(shù)據(jù)ID與指示該數(shù)據(jù)項存儲位置的鏈接信息相互關(guān)聯(lián)來管理該數(shù)據(jù)項。當(dāng)從數(shù)據(jù)服務(wù)器10刪除一個所管理的數(shù)據(jù)項時,該數(shù)據(jù)管理部分12也刪除該被刪除數(shù)據(jù)項的管理信息。
當(dāng)要在數(shù)據(jù)管理部分12中存儲已經(jīng)附加有數(shù)據(jù)ID的數(shù)據(jù)項時(例如,當(dāng)由一個數(shù)據(jù)服務(wù)器管理的數(shù)據(jù)項被移動到另一個數(shù)據(jù)服務(wù)器時),該數(shù)據(jù)管理部分12不向該數(shù)據(jù)項附加新的數(shù)據(jù)ID,而是通過將該數(shù)據(jù)項的鏈接信息與已經(jīng)附加的數(shù)據(jù)ID相互關(guān)聯(lián)來管理該數(shù)據(jù)項。
檢測部分14是用于檢測網(wǎng)絡(luò)20上存在的其它數(shù)據(jù)服務(wù)器10的單元。
查詢部分16是用于向另一數(shù)據(jù)服務(wù)器10發(fā)送一個查詢以確定另一數(shù)據(jù)服務(wù)器10是否具有客戶機30所請求的數(shù)據(jù)項的單元。查詢部分16還有對來自另一數(shù)據(jù)服務(wù)器10的查詢部分16的查詢做出響應(yīng)的功能。
在該系統(tǒng)中,當(dāng)客戶機30從該系統(tǒng)請求數(shù)據(jù)時,客戶機30通過虛擬URL 110指定數(shù)據(jù)項,該虛擬URL 110包括管理該數(shù)據(jù)項的數(shù)據(jù)服務(wù)器10的主機名112和該數(shù)據(jù)項的數(shù)據(jù)ID 114,如圖3所示。因為虛擬URL 100是URL,所以虛擬URL 100包含關(guān)于協(xié)議、端口等的信息,但是這里不對這些方面進行說明。因為全局唯一數(shù)據(jù)ID的位數(shù)比圖3中所示的數(shù)據(jù)ID 114的位數(shù)長的多,所以圖3中省略了數(shù)據(jù)ID的一部分。圖3中所示的虛擬URL指示一個數(shù)據(jù)項,該數(shù)據(jù)項由名為“foo.fx.co.jp”的數(shù)據(jù)服務(wù)器管理,并具有數(shù)據(jù)ID“12345...67890”。該圖3的虛擬URL中,主機名112與數(shù)據(jù)ID 114之間的“get”表示數(shù)據(jù)服務(wù)器10提供的一種方法的名稱。當(dāng)數(shù)據(jù)服務(wù)器10允許客戶機30執(zhí)行與該數(shù)據(jù)服務(wù)器10管理的數(shù)據(jù)項相關(guān)的多種類型的操作時,該虛擬URL被配置成包括指示該操作的方法。另一方面,當(dāng)數(shù)據(jù)服務(wù)器10只是向客戶機30提供所請求的數(shù)據(jù)項時,則不需要包括這樣一種方法的描述。
當(dāng)客戶機30(例如,網(wǎng)絡(luò)瀏覽器)通過虛擬URL 100請求一個數(shù)據(jù)項時,包括數(shù)據(jù)ID 114的數(shù)據(jù)請求信息被發(fā)送到由主機名112指示的服務(wù)器。
接下來,參考圖4說明當(dāng)數(shù)據(jù)服務(wù)器10從客戶機30接收數(shù)據(jù)請求信息時所執(zhí)行的處理。在下文的描述中,為簡單起見,將該處理說明為由數(shù)據(jù)服務(wù)器10-1執(zhí)行的處理,但是由其它數(shù)據(jù)服務(wù)器執(zhí)行的處理與所描述的處理相似。
在該處理中,數(shù)據(jù)服務(wù)器10-1從來自客戶機30的數(shù)據(jù)請求信息中提取出數(shù)據(jù)ID(S100),并在數(shù)據(jù)管理部分12-1中搜索與該數(shù)據(jù)ID對應(yīng)的實際數(shù)據(jù)項的鏈接信息(S102)。當(dāng)找到與該數(shù)據(jù)ID對應(yīng)的鏈接信息時(當(dāng)步驟S104中的判斷結(jié)果為“是”時),數(shù)據(jù)服務(wù)器10-1從數(shù)據(jù)服務(wù)器10-1內(nèi)的存儲裝置中獲得由該鏈接信息指示的實際數(shù)據(jù)項,并將所獲得的數(shù)據(jù)項提供給客戶機30(S114)。
另一方面,當(dāng)沒有找到與數(shù)據(jù)ID對應(yīng)的鏈接信息時(當(dāng)步驟S104中的判斷結(jié)果為“否”時),數(shù)據(jù)服務(wù)器10-1命令檢測部分14-1檢測部分構(gòu)成當(dāng)前系統(tǒng)的其它數(shù)據(jù)服務(wù)器10-2等,檢測部分14-1響應(yīng)于該命令,檢測其它數(shù)據(jù)服務(wù)器(S106)。例如,檢測部分14-1可以通過向網(wǎng)絡(luò)20廣播用于檢測其他服務(wù)器的預(yù)定消息,來實現(xiàn)由檢測部分14-1對其它數(shù)據(jù)服務(wù)器10-2等的檢測。每個數(shù)據(jù)服務(wù)器10的檢測部分14具有一個協(xié)議,來識別用于檢測其他服務(wù)器的消息和響應(yīng)該消息的。換言之,接收到用于檢測其他服務(wù)器的該消息的另一個數(shù)據(jù)服務(wù)器10-2的檢測部分14-2根據(jù)該協(xié)議,發(fā)送包括該數(shù)據(jù)服務(wù)器10-2的服務(wù)器ID(標(biāo)識符)的響應(yīng)。例如,IP地址或主機名可以用作服務(wù)器ID。已經(jīng)發(fā)送了用于檢測其他服務(wù)器的該消息的檢測部分14-1從數(shù)據(jù)服務(wù)器10-2接收響應(yīng),并獲得該響應(yīng)中包含的服務(wù)器ID。通過這種方式,可以找到部分組成當(dāng)前系統(tǒng)的另一個數(shù)據(jù)服務(wù)器10-2。
當(dāng)找到另一個數(shù)據(jù)服務(wù)器10-2時,數(shù)據(jù)服務(wù)器10-1命令查詢部分16-1向該找到的數(shù)據(jù)服務(wù)器10-2發(fā)送一個查詢。響應(yīng)于該命令,查詢部分16-1向數(shù)據(jù)服務(wù)器10-2發(fā)送一條數(shù)據(jù)查詢,該查詢包括來自客戶機30的數(shù)據(jù)請求中所包含的數(shù)據(jù)標(biāo)識符,并查詢數(shù)據(jù)服務(wù)器10-2是否具有與該數(shù)據(jù)標(biāo)識符相對應(yīng)的數(shù)據(jù)項(S108)。稍后描述接收到該查詢的數(shù)據(jù)服務(wù)器10-2的查詢部分16-2的操作。
當(dāng)查詢結(jié)果表示該查詢被發(fā)送至的數(shù)據(jù)服務(wù)器10-2沒有該數(shù)據(jù)項時(當(dāng)步驟S110的判斷結(jié)果為“否”時),數(shù)據(jù)服務(wù)器10-1重復(fù)另一個數(shù)據(jù)服務(wù)器(S106)的檢測和查詢的發(fā)送(S108)。重復(fù)步驟S106和S108,直到找到具有該數(shù)據(jù)項的數(shù)據(jù)服務(wù)器10為止。
雖然圖4示出的過程中在步驟S106檢測到一個數(shù)據(jù)服務(wù)器并在步驟S108向該數(shù)據(jù)服務(wù)器發(fā)送一個查詢,但是本發(fā)明不限于這種配置,例如,還可以在步驟S106通過廣播來檢測能被檢測的所有數(shù)據(jù)服務(wù)器10,存儲這些找到的數(shù)據(jù)服務(wù)器10,并在步驟S108中順序地向每個數(shù)據(jù)服務(wù)器10發(fā)送查詢。
當(dāng)查詢結(jié)果表示該查詢被發(fā)送至的數(shù)據(jù)服務(wù)器10-2具有該數(shù)據(jù)項時(當(dāng)步驟S110的判斷結(jié)果為“是”時),數(shù)據(jù)服務(wù)器10-1向客戶機30返回包含數(shù)據(jù)服務(wù)器10-2的服務(wù)器ID的重定向信息(S112)。例如,可以根據(jù)HTTP(超文本傳送協(xié)議)中的普通重定向方法來實現(xiàn)該重定向信息的返回。即,數(shù)據(jù)服務(wù)器10-1向客戶機30返回的重定向信息包括指示重定向的狀態(tài)碼,如302(臨時移動)和指示重定向目的地的URL的位置字段。包含在重定向信息中的該重定向目的地的URL是上述虛擬URL,該虛擬URL包含作為重定向目的地的數(shù)據(jù)服務(wù)器10-2的服務(wù)器ID和所請求數(shù)據(jù)項的數(shù)據(jù)標(biāo)識符。因為在發(fā)送該查詢期間該重定向目的地的服務(wù)器ID已經(jīng)是已知的,且所請求數(shù)據(jù)項的數(shù)據(jù)標(biāo)識符也是已知的,所以,數(shù)據(jù)服務(wù)器10-1可以生成包含這些信息的虛擬URL。
接收到重定向信息的客戶機30根據(jù)HTTP,向由該重定向信息中的服務(wù)器ID指示的數(shù)據(jù)服務(wù)器10-2發(fā)送包含該重定向信息內(nèi)的數(shù)據(jù)標(biāo)識符的數(shù)據(jù)請求。
接下來,參考圖5描述當(dāng)一個數(shù)據(jù)服務(wù)器接收到來自另一個數(shù)據(jù)服務(wù)器的查詢時該數(shù)據(jù)服務(wù)器所執(zhí)行的處理。在下文的描述中,為簡單起見,將該處理描述成由數(shù)據(jù)服務(wù)器10-2執(zhí)行的處理,但是其它數(shù)據(jù)服務(wù)器執(zhí)行相似的處理。
當(dāng)數(shù)據(jù)服務(wù)器10-2的查詢部分16-2接收到來自數(shù)據(jù)服務(wù)器10-1的查詢部分16-1的數(shù)據(jù)查詢時,查詢部分16-2從該數(shù)據(jù)查詢的信息中提取該目標(biāo)數(shù)據(jù)項的數(shù)據(jù)ID(S200),并在數(shù)據(jù)管理部分12-2中搜索與該數(shù)據(jù)ID相對應(yīng)的鏈接信息(S202)。當(dāng)作為搜索的結(jié)果在數(shù)據(jù)管理部分12-2中找到與該數(shù)據(jù)ID對應(yīng)的鏈接信息時(當(dāng)步驟S204的判斷結(jié)果為“是”時),查詢部分16-2向發(fā)送該查詢的數(shù)據(jù)服務(wù)器10-1返回一條消息,表明數(shù)據(jù)服務(wù)10-2具有作為查詢目標(biāo)的數(shù)據(jù)項(S206)。另一方面,當(dāng)沒有找到該鏈接信息時(當(dāng)步驟S204中的判斷結(jié)果為“否”時),查詢部分16-2向數(shù)據(jù)服務(wù)器10-1返回一條信息,表明數(shù)據(jù)服務(wù)器10-2沒有作為查詢目標(biāo)的數(shù)據(jù)項(S208)。
或者,在步驟206中,查詢部分16-2不是向查詢發(fā)起端返回存在作為查詢目標(biāo)的數(shù)據(jù)項的信息,而是返回作為查詢目標(biāo)的數(shù)據(jù)項的虛擬URL(即,該虛擬URL包括具有該數(shù)據(jù)項的數(shù)據(jù)服務(wù)器10-2的服務(wù)器ID和該數(shù)據(jù)項的數(shù)據(jù)標(biāo)識符)。在這種配置中,在步驟S112中,發(fā)送該查詢的數(shù)據(jù)服務(wù)器10-1可以向客戶機30返回由數(shù)據(jù)服務(wù)器10-2提供的虛擬URL。
現(xiàn)在參考圖6-8描述上述數(shù)據(jù)管理系統(tǒng)的操作。
如圖6所示,當(dāng)數(shù)據(jù)服務(wù)器10-1具有從客戶機30發(fā)送到數(shù)據(jù)服務(wù)器10-1的數(shù)據(jù)請求(1)的目標(biāo)數(shù)據(jù)項時,數(shù)據(jù)服務(wù)器10-1向客戶機30提供該目標(biāo)數(shù)據(jù)項(2)。
另一方面,如圖7所示,當(dāng)從客戶機30發(fā)送到數(shù)據(jù)服務(wù)器10-1的數(shù)據(jù)請求(1)的目標(biāo)數(shù)據(jù)項不存在于數(shù)據(jù)服務(wù)器10-1中時,檢測部分14-1檢測另一數(shù)據(jù)服務(wù)器10-2,并向數(shù)據(jù)服務(wù)器10-2發(fā)送數(shù)據(jù)查詢(3)。當(dāng)查詢結(jié)果表示數(shù)據(jù)服務(wù)器10-2具有所請求的數(shù)據(jù)項時,數(shù)據(jù)服務(wù)器10-2將來自客戶機30的數(shù)據(jù)請求重定向到數(shù)據(jù)服務(wù)器10-2(4)。響應(yīng)于該重定向的數(shù)據(jù)請求,數(shù)據(jù)服務(wù)器10-2向客戶機30提供所請求的數(shù)據(jù)項(5)。
圖8表示客戶機30請求的數(shù)據(jù)項既不在數(shù)據(jù)服務(wù)器10-1中也不在數(shù)據(jù)服務(wù)器10-2中而是在數(shù)據(jù)服務(wù)器10-3中的情況。在這種情況中(2),對于由檢測部分14-1檢測的數(shù)據(jù)服務(wù)器10-2和10-3,查詢部分16-1首先向服務(wù)器10-2發(fā)送查詢,并接收到數(shù)據(jù)服務(wù)器10-2沒有該數(shù)據(jù)項的響應(yīng)(3)。然后,查詢部分16-1向下一個數(shù)據(jù)服務(wù)器10-3發(fā)送查詢,并接收到數(shù)據(jù)服務(wù)器10-3具有該數(shù)據(jù)項的響應(yīng)(4)。數(shù)據(jù)服務(wù)器10-1將來自客戶機30的該數(shù)據(jù)請求重定向到數(shù)據(jù)服務(wù)器10-3(5)。響應(yīng)于該重定向的數(shù)據(jù)請求,數(shù)據(jù)服務(wù)器10-3向客戶機30提供所請求的數(shù)據(jù)項(6)。
如上所述,在本系統(tǒng)中,每個數(shù)據(jù)服務(wù)器10搜尋具有客戶機30所請求的數(shù)據(jù)項的數(shù)據(jù)服務(wù)器10,并將該請求重定向到找到的數(shù)據(jù)服務(wù)器10。從而,因為即使不提供中央管理服務(wù)器時也能夠找到所請求的數(shù)據(jù)項,所以,與現(xiàn)有技術(shù)相比,由于服務(wù)器故障而不能獲取數(shù)據(jù)的問題可以得到有效的抑制。
在本系統(tǒng)中,即使由于數(shù)據(jù)項在數(shù)據(jù)服務(wù)器10之間被移動而導(dǎo)致該數(shù)據(jù)項的位置改變時,客戶機30也能夠利用已有的虛擬URL來訪問該數(shù)據(jù)項,從而使得最初管理該數(shù)據(jù)項的數(shù)據(jù)服務(wù)器10,即與該虛擬URL中的服務(wù)器ID對應(yīng)的數(shù)據(jù)服務(wù)器10,接收到訪問請求,并搜尋當(dāng)前具有該數(shù)據(jù)項的數(shù)據(jù)服務(wù)器10。因此,客戶機30能夠利用客戶機30已有的虛擬URL來獲得該數(shù)據(jù)項。
一些已知的數(shù)據(jù)服務(wù)器例如可以具有經(jīng)由電子郵件向用戶分配URL的功能,該URL可以檢查當(dāng)服務(wù)器上的數(shù)據(jù)項改變時出現(xiàn)的變化,例如當(dāng)新存儲了一個數(shù)據(jù)項時出現(xiàn)的變化。然而,當(dāng)該服務(wù)器上的數(shù)據(jù)項被移動到另一服務(wù)器時,已分配的URL就變得不可用。但是當(dāng)采用本系統(tǒng)的機制時,即使在這種情況下,客戶機也可以利用數(shù)據(jù)移動之前分配的虛擬URL來獲得該數(shù)據(jù)項。另外,一般情況下,由于要管理的數(shù)據(jù)量的增加,必須劃分數(shù)據(jù)服務(wù)器10。根據(jù)本系統(tǒng),在這種情況下,即使在劃分之前分配給用戶的虛擬URL也可以在劃分之后使用。
現(xiàn)在描述一個將根據(jù)本發(fā)明的用戶驗證傳送方法應(yīng)用在上述數(shù)據(jù)管理系統(tǒng)中的實施例。
圖9是該實施例中數(shù)據(jù)服務(wù)器10A的功能框圖。在圖9中,與圖1中所示相似的那些部分具有相同的參考標(biāo)號,因此不再對這些部分進行重復(fù)說明。
在該實施例中,除了圖1所示數(shù)據(jù)服務(wù)器10中包括的數(shù)據(jù)管理部分12、檢測部分14和查詢部分16以外,每個數(shù)據(jù)服務(wù)器10A還包括登錄處理器部分40、用戶信息管理部分42、訪問權(quán)限管理部分44和臨時ID存儲部分46。與圖1所示系統(tǒng)相似,該實施例的數(shù)據(jù)管理系統(tǒng)由具有這種結(jié)構(gòu)并經(jīng)由網(wǎng)絡(luò)互相協(xié)作的多個數(shù)據(jù)服務(wù)器10A構(gòu)成。
登錄處理器部分40管理用戶在數(shù)據(jù)服務(wù)器10A上的登錄處理。
用戶信息管理部分42管理與數(shù)據(jù)服務(wù)器10A有關(guān)的用戶注冊信息。圖10示出了在用戶信息管理部分42中注冊的用戶信息的示例性數(shù)據(jù)內(nèi)容。在圖10的該示例性配置中,對應(yīng)于每個用戶的用戶ID202,存儲了諸如用戶的姓204、用戶的名206之類的個人信息和諸如密碼之類的驗證信息208。也可以包括個人信息的其他例子,例如用戶的電子郵件地址和用戶的頭銜。在該示例性配置中,因為使用UUID作為用戶ID 202,所以可以使用對于構(gòu)成該數(shù)據(jù)管理系統(tǒng)的所有數(shù)據(jù)服務(wù)器10A統(tǒng)一的用戶ID來識別該用戶。在用戶信息管理部分42中注冊的用戶的集合不需要在所有數(shù)據(jù)服務(wù)器10A之間進行匹配。每個數(shù)據(jù)服務(wù)器10A單獨在用戶信息管理部分42中注冊用戶就已經(jīng)足夠了。當(dāng)不具有注冊用戶ID的用戶訪問該系統(tǒng)時,登錄處理器部分40進行控制,以禁止該用戶登錄,或允許作為具有“訪客”權(quán)限的用戶登錄,“訪客”權(quán)限在多種類型的操作中是受限的。
訪問權(quán)限管理部分44管理與存儲在數(shù)據(jù)管理部分12中的每個數(shù)據(jù)項有關(guān)的各用戶的訪問權(quán)限。圖11示出了由訪問權(quán)限管理部分44管理的數(shù)據(jù)內(nèi)容的一個例子。在該示例性配置中,對于與每個數(shù)據(jù)項對應(yīng)的每個數(shù)據(jù)ID 222(UUID),注冊關(guān)于一個數(shù)據(jù)項的訪問權(quán)限信息224。該訪問權(quán)限信息224包括被授予與數(shù)據(jù)ID 222對應(yīng)的數(shù)據(jù)項的訪問權(quán)限的每個用戶的用戶ID,以及授予該用戶的訪問權(quán)限的內(nèi)容。該訪問權(quán)限的內(nèi)容被表示為諸如R(讀權(quán)限)、W(寫權(quán)限)和M(管理數(shù)據(jù)的權(quán)限)的各權(quán)限的組合。例如,“RW”表示用戶具有讀和寫的權(quán)限。這里描述的訪問權(quán)限的類型是示例性的,而這些類型不限于以上描述的那些。例如,數(shù)據(jù)服務(wù)器10A的管理員將訪問權(quán)限信息注冊在訪問權(quán)限管理部分44中。
臨時ID存儲部分46存儲和管理臨時ID,該臨時ID是分配給用戶的表示對于各數(shù)據(jù)項的臨時訪問允許的標(biāo)志符。圖12示出了由臨時ID存儲部分46存儲和管理的數(shù)據(jù)內(nèi)容的例子。在該示例性配置中,對于每個臨時ID 242,存儲了被授予臨時訪問權(quán)限的用戶的用戶ID244和該臨時ID 242的屆滿時間246。
現(xiàn)在參考圖13描述該實施例的系統(tǒng)中的處理的整個流程。圖13所示的每個數(shù)據(jù)服務(wù)器10A-1和10A-2采用圖9所示數(shù)據(jù)服務(wù)器10A的形式。
如圖13所示,在該實施例中,(1)數(shù)據(jù)服務(wù)器10A-1從客戶機30接收與圖3所示的URL對應(yīng)的數(shù)據(jù)請求,該數(shù)據(jù)請求指定了一個數(shù)據(jù)項的UUID。假定在發(fā)送該請求之前已經(jīng)成功完成了用戶驗證且該用戶已經(jīng)登錄。
(2)數(shù)據(jù)服務(wù)器10A-1在它的數(shù)據(jù)管理部分12中搜索具有該UUID的數(shù)據(jù)項,當(dāng)數(shù)據(jù)服務(wù)器10A-1不能找到該數(shù)據(jù)項時,該數(shù)據(jù)服務(wù)器10A-1通過檢測部分14檢測網(wǎng)絡(luò)20上的另一數(shù)據(jù)服務(wù)器10A-2。
(3)當(dāng)找到另一數(shù)據(jù)服務(wù)器10A-2時,數(shù)據(jù)服務(wù)器10A-1的查詢部分16向服務(wù)器10A-2發(fā)送一個數(shù)據(jù)查詢,該數(shù)據(jù)查詢包括所請求數(shù)據(jù)項的UUID(data_uuid)、請求用戶的UUID(user_uuid)和該用戶請求的對于該數(shù)據(jù)項的操作內(nèi)容。例如,該操作內(nèi)容是該數(shù)據(jù)項的讀、該數(shù)據(jù)項的寫等等,并且該用戶命令數(shù)據(jù)服務(wù)器10A-1進行操作。
(4)接收到該查詢的數(shù)據(jù)服務(wù)器10A-2的查詢部分16在它自己的數(shù)據(jù)管理部分12中搜索作為所請求數(shù)據(jù)項的該數(shù)據(jù)項(data ID=data_uuid),當(dāng)找到該數(shù)據(jù)項時,通過訪問權(quán)限管理部分44檢查請求該數(shù)據(jù)項的用戶的訪問權(quán)限(user ID=user_uuid)。對于該請求用戶對于所請求數(shù)據(jù)項的訪問權(quán)限,如果該用戶所請求的操作需要的訪問權(quán)限存儲在訪問權(quán)限管理部分44中,則該數(shù)據(jù)服務(wù)器確定該用戶具有訪問權(quán)限。在以下的描述中,假定數(shù)據(jù)服務(wù)器10A-2具有所請求的數(shù)據(jù)項,并確定該請求用戶具有對于該數(shù)據(jù)操作的訪問權(quán)限。
(5)這種情況下,數(shù)據(jù)服務(wù)器10A-2的查詢部分16生成一個臨時ID(oid),并將該臨時ID(oid)與該請求用戶的用戶ID(user_uuid)相對應(yīng)地存儲在臨時ID存儲部分46中。查詢部分16生成一個至少在數(shù)據(jù)服務(wù)器10A-2內(nèi)唯一的ID,作為臨時ID。在該過程中,通過在當(dāng)前時間上加一個預(yù)定的有效期限(例如,幾分鐘)而得到一個時間,將該時間存儲在臨時ID存儲部分46中,作為屆滿時間246。
(6)數(shù)據(jù)服務(wù)器10A-2的查詢部分16向進行查詢的數(shù)據(jù)服務(wù)器10A-1返回重定向信息,該重定向信息包括數(shù)據(jù)管理部分12中的所請求數(shù)據(jù)項的虛擬URL(redirect_url)和所生成的臨時ID(oid)。例如,所請求數(shù)據(jù)項的URL是包括數(shù)據(jù)服務(wù)器10A-2的服務(wù)器ID和所請求數(shù)據(jù)項的數(shù)據(jù)標(biāo)識符的虛擬URL。例如,臨時ID(oid)可以在URL的查詢部分中進行描述。
(7)數(shù)據(jù)服務(wù)器10A-1向客戶機30返回重定向信息,該重定向信息包括指示重定向的諸如302(臨時移動)之類的狀態(tài)碼和位置字段,該位置字段包括重定向目的地的URL(redirect_url)和臨時ID(oid)。根據(jù)HTTP,接收到該重定向信息的客戶機30向由該重定向信息中的服務(wù)器ID指示的數(shù)據(jù)服務(wù)器10A-2發(fā)送一個數(shù)據(jù)請求,該數(shù)據(jù)請求包括該重定向信息中的數(shù)據(jù)標(biāo)識符。在該過程中,臨時ID(oid)也被發(fā)送至數(shù)據(jù)服務(wù)器10A-2。
(8)數(shù)據(jù)服務(wù)器10A-2在臨時ID存儲部分46中搜索該數(shù)據(jù)請求中包括的臨時ID(oid),當(dāng)找到該臨時ID時,數(shù)據(jù)服務(wù)器10A-2檢查是否已經(jīng)到達該臨時ID的屆滿時間。當(dāng)找到該臨時ID且沒有到達該屆滿時間時,該臨時ID有效。在這種情況下,數(shù)據(jù)服務(wù)器10A-2確定與來自臨時ID存儲部分46的該臨時ID(oid)相對應(yīng)的用戶ID(user_uuid)。數(shù)據(jù)服務(wù)器10A-2將該用戶ID發(fā)送至登錄處理器部分40,以執(zhí)行登錄處理。登錄處理器部分40為該用戶ID執(zhí)行登錄處理,并識別出該數(shù)據(jù)請求來自該用戶ID。具體而言,當(dāng)數(shù)據(jù)請求中包含的臨時ID有效時,登錄處理部分40假定該用戶驗證成功的同時允許用戶登錄,而不需要進行正常的用戶驗證過程,其中提示用戶輸入諸如密碼之類的驗證信息。
(9)數(shù)據(jù)服務(wù)器10A-2從數(shù)據(jù)管理部分12提取所請求的數(shù)據(jù)項,并將所請求的數(shù)據(jù)項提供給客戶機30。當(dāng)基于臨時ID的登錄處理完成時,數(shù)據(jù)服務(wù)器10A-2從臨時ID存儲部分46刪除關(guān)于該臨時ID的記錄?;蛘撸部梢耘渲脭?shù)據(jù)服務(wù)器10A-2,從而將指示臨時ID無效的信息存儲在臨時ID存儲部分46中,而不是刪除該記錄。
前面已經(jīng)描述了由整個系統(tǒng)執(zhí)行的處理?,F(xiàn)在,從每個數(shù)據(jù)服務(wù)器10A的角度來描述處理。
參考圖14和15,將描述當(dāng)從客戶機接收數(shù)據(jù)請求時數(shù)據(jù)服務(wù)器10A的處理。
假定該數(shù)據(jù)請求需要用戶驗證(即,對于所請求的數(shù)據(jù)項施加了訪問限制)。對于沒有訪問限制的數(shù)據(jù)項(即,訪客可以得到的數(shù)據(jù)項)的請求,不進行關(guān)于用戶驗證是否成功的判斷。
該過程從圖14所示的步驟開始。具體而言,當(dāng)數(shù)據(jù)服務(wù)器10A從客戶機30接收到數(shù)據(jù)請求時,數(shù)據(jù)服務(wù)器10A判斷對于該請求用戶的用戶驗證是否已經(jīng)成功完成(即,該用戶是否已經(jīng)登錄)(S132)。
當(dāng)用戶驗證還沒有成功完成時,數(shù)據(jù)服務(wù)器10A檢查該數(shù)據(jù)請求是否包括臨時ID(S134)。當(dāng)該數(shù)據(jù)請求不包含臨時ID時,數(shù)據(jù)服務(wù)器10A確定該數(shù)據(jù)請求為未授權(quán)訪問,并執(zhí)行處理,如通知客戶機30出錯(S138)。
當(dāng)該數(shù)據(jù)請求包含臨時ID時,數(shù)據(jù)服務(wù)器10A通過臨時ID存儲部分46判斷該臨時ID是否有效(S136)。當(dāng)該臨時ID包含在臨時ID存儲部分46中并且沒有到達屆滿時間時,判定該臨時ID有效。否則,判定該臨時ID為無效。當(dāng)判定該臨時ID無效時,數(shù)據(jù)服務(wù)器10A確定該數(shù)據(jù)請求為未授權(quán)訪問,并執(zhí)行處理,如通知客戶機30出錯(S138)。
當(dāng)判定該臨時ID有效時,數(shù)據(jù)服務(wù)器10A從臨時ID存儲部分46中讀取與該臨時ID相對應(yīng)的用戶ID,確定該用戶ID指示一個登錄用戶,并命令登錄處理器部分40執(zhí)行登錄處理(S140)。數(shù)據(jù)服務(wù)器10A從數(shù)據(jù)管理部分12中提取所請求的數(shù)據(jù)項,并將所請求的數(shù)據(jù)項提供給客戶機30(S142)。數(shù)據(jù)服務(wù)器10A還從臨時ID存儲部分46中刪除該臨時ID,或使該臨時ID無效(S144)。該臨時ID的刪除和無效是在基于該臨時ID的登錄處理完成后執(zhí)行的,例如,可以在將該數(shù)據(jù)項提供給客戶機30之前執(zhí)行。在數(shù)據(jù)提供的過程期間,數(shù)據(jù)服務(wù)器10A可以根據(jù)授予用戶的訪問權(quán)限,在要提供的數(shù)據(jù)項上附加訪問限制屬性。或者,當(dāng)數(shù)據(jù)服務(wù)器10A執(zhí)行諸如提供數(shù)據(jù)項之類的處理時,數(shù)據(jù)服務(wù)器10A可以記錄根據(jù)臨時ID確定的用戶ID,作為已經(jīng)命令了一個處理的用戶的ID。
圖14中所示的上述處理是關(guān)于重定向數(shù)據(jù)請求的處理。另一方面,當(dāng)在步驟S132中判定用戶已經(jīng)得到驗證時,該數(shù)據(jù)請求通常是沒有被重定向的數(shù)據(jù)請求。因此,這種情況下執(zhí)行的處理與圖4中所示的處理相似。圖15中示出了當(dāng)步驟S132中用戶驗證得到確認時執(zhí)行的處理。除步驟S108a和S112a之外,圖15中所示的處理與圖4中所示的處理相同,因此,對與圖4種相似的那些步驟分配相同的參考標(biāo)號,并不對這些步驟進行詳細描述。
在圖15所示的處理中,當(dāng)數(shù)據(jù)服務(wù)器10A不具有所請求的數(shù)據(jù)項時,除了數(shù)據(jù)ID之外,該數(shù)據(jù)服務(wù)器10A還向所檢測的數(shù)據(jù)服務(wù)器發(fā)送用戶ID和與所請求數(shù)據(jù)項相關(guān)的操作信息,以查詢是否存在所請求數(shù)據(jù)項和所請求數(shù)據(jù)項的用戶的訪問權(quán)限狀態(tài)(S108a)。當(dāng)數(shù)據(jù)服務(wù)器10A從該查詢的目的地數(shù)據(jù)服務(wù)器接收到指示所請求數(shù)據(jù)項不存在的查詢響應(yīng)時,處理返回到步驟S106,數(shù)據(jù)服務(wù)器10A向另一數(shù)據(jù)服務(wù)器發(fā)送相似的查詢。雖然在圖中沒有示出,但是可以配置該系統(tǒng),從而,當(dāng)來自該查詢目的地數(shù)據(jù)服務(wù)器的響應(yīng)指示存在所請求的數(shù)據(jù)項、但該請求用戶不具有該數(shù)據(jù)項的訪問權(quán)限時,向客戶機30發(fā)送關(guān)于該結(jié)果的通知。在這種情況下,因為可以通知數(shù)據(jù)服務(wù)器10A該數(shù)據(jù)項在查詢目的地上,所以該數(shù)據(jù)服務(wù)器10A不需要再向其它數(shù)據(jù)服務(wù)器發(fā)送查詢。
當(dāng)該查詢目的地具有所請求的數(shù)據(jù)項且該用戶具有訪問權(quán)限時,返回一個包含臨時ID的響應(yīng)。數(shù)據(jù)服務(wù)器10A生成包含該臨時ID和所請求數(shù)據(jù)項在查詢目的地中的虛擬URL的重定向信息,并將該重定向信息返回到客戶機30(S112a)。
接下來,參考圖16,將描述當(dāng)數(shù)據(jù)服務(wù)器10A從另一數(shù)據(jù)服務(wù)器接收到關(guān)于該數(shù)據(jù)服務(wù)器10A是否具有所請求數(shù)據(jù)項的查詢時,該數(shù)據(jù)服務(wù)器10A執(zhí)行的處理。在圖16中,對與圖5中相似的那些處理的步驟分配相同的參考標(biāo)號,并不再對這些步驟進行描述。
在該處理中,當(dāng)數(shù)據(jù)服務(wù)器10A從另一數(shù)據(jù)服務(wù)器接收到一個查詢時,該數(shù)據(jù)服務(wù)器10A獲得該查詢中包含的數(shù)據(jù)ID、用戶ID和關(guān)于操作內(nèi)容的信息(S200a)。然后,數(shù)據(jù)服務(wù)器10A在數(shù)據(jù)管理部分12中搜索與該數(shù)據(jù)ID對應(yīng)的數(shù)據(jù)項,并通過參考訪問權(quán)限管理部分44檢查該用戶對于該數(shù)據(jù)ID的訪問權(quán)限(S202a)。當(dāng)找到與該數(shù)據(jù)ID對應(yīng)的數(shù)據(jù)項且確定該用戶具有與該操作內(nèi)容對應(yīng)的訪問權(quán)限時(當(dāng)步驟S210中的判斷結(jié)果為“是”時),該數(shù)據(jù)服務(wù)器10A生成一個不同于現(xiàn)有臨時ID的新臨時ID(S212),并向進行查詢的數(shù)據(jù)服務(wù)器10A發(fā)送包含該臨時ID的響應(yīng)(S214)。當(dāng)數(shù)據(jù)管理部分12中存在所請求的數(shù)據(jù)項但是該用戶不具有與該操作內(nèi)容對應(yīng)的訪問權(quán)限時(當(dāng)步驟S210中的判斷結(jié)果為“否”時),該數(shù)據(jù)服務(wù)器10A向進行請求的數(shù)據(jù)服務(wù)器發(fā)送一個響應(yīng),表明該數(shù)據(jù)服務(wù)器10A具有所請求的數(shù)據(jù)項,但是所請求的數(shù)據(jù)項不能被訪問(S216)。
如上所述,在當(dāng)前實施例中,當(dāng)從進行查詢的數(shù)據(jù)服務(wù)器10A-1接收到關(guān)于是否存在所請求數(shù)據(jù)項的查詢的數(shù)據(jù)服務(wù)器10A-2在數(shù)據(jù)管理部分12中找到所請求的數(shù)據(jù)項且確定所請求的數(shù)據(jù)項可以被提供給進行請求的用戶時,該數(shù)據(jù)服務(wù)器10A-2發(fā)布臨時ID。該查詢數(shù)據(jù)服務(wù)器10A-1向客戶機30返回包含該臨時ID的重定向信息。當(dāng)數(shù)據(jù)服務(wù)器10A-2接收到該數(shù)據(jù)請求的重定向并從該請求中檢測到有效臨時ID時,該數(shù)據(jù)服務(wù)器10A-2將該請求處理為來自有效并經(jīng)過驗證的用戶的請求。通過這種方式,該用戶不需要執(zhí)行關(guān)于該重定向目的地數(shù)據(jù)服務(wù)器10A-2的用戶驗證處理。因此,根據(jù)本實施例,由于單獨的數(shù)據(jù)服務(wù)器10A發(fā)布臨時ID,且該臨時ID被發(fā)送給進行請求的客戶機并被該客戶機使用,所以不需要提供在現(xiàn)有技術(shù)中所需的中央服務(wù)器來管理用戶的登錄狀態(tài)。因此,雖然管理登錄狀態(tài)的服務(wù)器的故障在相關(guān)技術(shù)中有很大影響,但是在根據(jù)本實施例的系統(tǒng)中,數(shù)據(jù)服務(wù)器10A的故障的影響被限制在很小的范圍內(nèi)。
上述實施例只是示例性的,在本發(fā)明的范圍內(nèi)可以進行各種修改。例如,雖然在上述實施例中作為查詢目的地(重定向目的地)的數(shù)據(jù)服務(wù)器10A-2生成了一個臨時ID,但是也可以配置該系統(tǒng),從而使進行查詢的數(shù)據(jù)服務(wù)器10A-1生成該臨時ID并將該臨時ID提供給重定向目的地數(shù)據(jù)服務(wù)器10A-2?,F(xiàn)在參考圖17描述該替換實施例的處理。
在圖17所示的過程中,(1)數(shù)據(jù)服務(wù)器10A-1從已登陸的用戶接收到一個數(shù)據(jù)請求。
(2)該數(shù)據(jù)服務(wù)器10A-1在數(shù)據(jù)管理部分12中搜索所請求的數(shù)據(jù)項,當(dāng)沒有找到所請求的數(shù)據(jù)項時,通過檢測部分14檢測網(wǎng)絡(luò)20上的另一數(shù)據(jù)服務(wù)器10A-2。
(3)當(dāng)找到另一數(shù)據(jù)服務(wù)器10A-2時,數(shù)據(jù)服務(wù)器10A-1的查詢部分16向該服務(wù)器10A-2發(fā)送一個數(shù)據(jù)查詢,該數(shù)據(jù)查詢包含所請求數(shù)據(jù)項的UUID(data_uuid)、進行請求的用戶的UUID(user_uuid)和該用戶請求對該數(shù)據(jù)項進行的操作內(nèi)容。
(4)數(shù)據(jù)服務(wù)器10A-2的查詢部分16在數(shù)據(jù)管理部分12中搜索所請求的數(shù)據(jù)項(data_ID=data_uuid),當(dāng)找到所請求的數(shù)據(jù)項時,數(shù)據(jù)服務(wù)器10A-2通過訪問權(quán)限管理部分44檢查該請求用戶對于所請求的數(shù)據(jù)項的訪問權(quán)限(user ID=user_uuid)。當(dāng)在訪問權(quán)限管理部分44中找到與該用戶請求的操作相對應(yīng)的訪問權(quán)限是該請求用戶對于所請求數(shù)據(jù)項的訪問權(quán)限時,數(shù)據(jù)服務(wù)器10A-2判定該用戶具有訪問權(quán)限。在該描述中,假定數(shù)據(jù)服務(wù)器10A-2具有所請求的數(shù)據(jù)項,并且該請求用戶具有對于所請求數(shù)據(jù)項的訪問權(quán)限。
(5)在這種情況下,數(shù)據(jù)服務(wù)器10A-2的查詢部分16向進行查詢的數(shù)據(jù)服務(wù)器10A-1發(fā)送一個響應(yīng),表明所請求的數(shù)據(jù)項存在并且該用戶具有訪問權(quán)限。
當(dāng)數(shù)據(jù)服務(wù)器10A-2不具有所請求的數(shù)據(jù)項時,或數(shù)據(jù)服務(wù)器10A-2具有所請求的數(shù)據(jù)項但該用戶不具有訪問權(quán)限時,該數(shù)據(jù)服務(wù)器10A-2向數(shù)據(jù)服務(wù)器10A-1發(fā)送指示這種情況的響應(yīng)。
(6)當(dāng)數(shù)據(jù)服務(wù)器10A-1接收到該響應(yīng)時,數(shù)據(jù)服務(wù)器10A-1生成一個臨時ID(oid),并將該臨時ID(oid)與該請求用戶的用戶ID(user_uuid)對應(yīng)地存儲在臨時ID存儲部分46中。在該過程中,通過在當(dāng)前時間上加一個預(yù)定有效期限(例如,幾分鐘)獲得一個時間,將該時間存儲在臨時ID存儲部分46中,作為屆滿時間246。
(7)數(shù)據(jù)服務(wù)器10A-1生成重定向信息,并將該重定向信息返回到客戶機30,該重定向信息包含所請求數(shù)據(jù)項在數(shù)據(jù)服務(wù)器10A-2中的虛擬URL(redirect_url)、所生成的臨時ID(oid)和數(shù)據(jù)服務(wù)器10A-1的服務(wù)器ID(例如,IP地址)。根據(jù)HTTP,當(dāng)客戶機30接收到重定向信息時,該客戶機30向由該重定向信息中的服務(wù)器ID指示的數(shù)據(jù)服務(wù)器10A-2發(fā)送一個數(shù)據(jù)請求,該數(shù)據(jù)請求包含該數(shù)據(jù)ID、臨時ID和該重定向信息中的(數(shù)據(jù)服務(wù)器10A-1的)服務(wù)器ID。
(8)數(shù)據(jù)服務(wù)器10A-2向由該數(shù)據(jù)請求中的服務(wù)器ID指示的數(shù)據(jù)服務(wù)器10A-1發(fā)送關(guān)于該數(shù)據(jù)請求中包含的臨時ID(oid)的有效性的查詢。
(9)當(dāng)數(shù)據(jù)服務(wù)器10A-1接收到該查詢時,該數(shù)據(jù)服務(wù)器10A-1在臨時ID存儲部分46中搜索該查詢中的臨時ID(oid),當(dāng)找到該臨時ID時,該數(shù)據(jù)服務(wù)器10A-1檢查是否已到達屆滿時間。當(dāng)臨時ID存儲部分46具有該臨時ID且沒有到達屆滿時間時,該臨時ID有效。
(10)當(dāng)數(shù)據(jù)服務(wù)器10A-1確定該臨時ID有效時,該數(shù)據(jù)服務(wù)器10A-1通過臨時ID存儲部分46確定與該臨時ID對應(yīng)的用戶ID(user_uuid),并將該用戶ID返回到數(shù)據(jù)服務(wù)器10A-2。數(shù)據(jù)服務(wù)器10A-1將與該臨時ID對應(yīng)的用戶ID提供給數(shù)據(jù)服務(wù)器10A-2后,該數(shù)據(jù)服務(wù)器10A-1從臨時ID存儲部分46中刪除與該臨時ID相關(guān)的記錄。
當(dāng)在臨時ID存儲部分46中沒有找到該查詢中的臨時ID時,或當(dāng)找到該查詢中的臨時ID但是已經(jīng)到達屆滿時間時,數(shù)據(jù)服務(wù)器10A-1向數(shù)據(jù)服務(wù)器10A-2發(fā)送指示該臨時ID無效的響應(yīng)。當(dāng)數(shù)據(jù)服務(wù)器10A-2接收到該響應(yīng)時,該數(shù)據(jù)服務(wù)器10A-2執(zhí)行出錯處理,如通知客戶機30不能獲得該數(shù)據(jù)項。
(11)當(dāng)數(shù)據(jù)服務(wù)器10A-2接收到用戶ID時,該數(shù)據(jù)服務(wù)器10A-2向登錄處理器部分40發(fā)送該用戶ID,以執(zhí)行登錄處理。該登錄處理器部分40為該用戶ID執(zhí)行登錄處理,并識別出該數(shù)據(jù)請求來自該用戶ID。
(12)數(shù)據(jù)服務(wù)器10A-2從數(shù)據(jù)管理部分12中提取所請求的數(shù)據(jù)項,并將該數(shù)據(jù)項提供給客戶機30。
在該替換實施例中,也可以在多個數(shù)據(jù)服務(wù)器之間傳送該用戶驗證結(jié)果,而不需要提供一個服務(wù)器來管理用戶的登錄狀態(tài)。
在圖17所示的該替換實施例中,當(dāng)數(shù)據(jù)服務(wù)器10A-2接收到重定向的數(shù)據(jù)請求時,該數(shù)據(jù)服務(wù)器10A-2向進行重定向的數(shù)據(jù)服務(wù)器10A-1發(fā)送關(guān)于臨時ID和與該臨時ID對應(yīng)的用戶ID的有效性的查詢?;蛘?,可以采用以下配置。在該配置中,當(dāng)數(shù)據(jù)服務(wù)器10A-1生成臨時ID時,該數(shù)據(jù)服務(wù)器10A-1向作為重定向目的地的數(shù)據(jù)服務(wù)器10A-2發(fā)送由該臨時ID和該請求用戶的用戶ID構(gòu)成的一對ID,并且,數(shù)據(jù)服務(wù)器10A-2將該對ID存儲在它的臨時ID存儲部分46中。在該處理中,接收到重定向后的數(shù)據(jù)請求的數(shù)據(jù)服務(wù)器10A-2通過參考它自己的臨時ID存儲部分46,確定該數(shù)據(jù)請求中臨時ID的有效性。
在上述實施例中,全局唯一的UUID用作用戶ID,但是本發(fā)明不限于這種配置。例如,還可以這樣一種配置,其中,利用LDAP(輕量級目錄訪問協(xié)議)服務(wù)器來執(zhí)行數(shù)據(jù)管理系統(tǒng)的用戶管理,且由該LDAP服務(wù)器管理的每個用戶的DN(區(qū)分名)用作用戶ID。
在如圖18所示的系統(tǒng)結(jié)構(gòu)中,不同的LDAP服務(wù)器50-1和50-2單獨地管理一組不同數(shù)據(jù)服務(wù)器10A的注冊用戶,每個LDAP服務(wù)器50-1或50-2最好具有一個對應(yīng)表52,表示用戶的DN和UUID之間的對應(yīng)關(guān)系。在該配置中,當(dāng)在DN中得到驗證的用戶向由LDAP服務(wù)器50-1管理的數(shù)據(jù)服務(wù)器10A-1發(fā)送數(shù)據(jù)請求并且數(shù)據(jù)服務(wù)器10A-1向其他數(shù)據(jù)服務(wù)器10A-2、10A-3和10A-4發(fā)送關(guān)于該請求的目標(biāo)數(shù)據(jù)的查詢時,該數(shù)據(jù)服務(wù)器10A-1獲得與該DN對應(yīng)的UUID,并利用該UUID發(fā)送查詢。被查詢的數(shù)據(jù)服務(wù)器10A-2、10A-3或10A-4從LDAP服務(wù)器50-1或50-2獲得與該UUID對應(yīng)的DN,以識別進行請求的用戶。
或者,還可以采用這樣一種配置,其中,每個數(shù)據(jù)服務(wù)器10A不使用UUID和LDAP,而是具有用戶ID的映射信息。例如,該映射信息是如圖19所示的表,其中存儲了每個注冊用戶的用戶ID和數(shù)據(jù)服務(wù)器(服務(wù)器A、B和C)。顯示為“-”的欄表示該用戶沒有注冊在該數(shù)據(jù)服務(wù)器中。根據(jù)這種映射信息,每個數(shù)據(jù)服務(wù)器10A利用該表,可以識別出與來自另一個數(shù)據(jù)服務(wù)器的查詢中包含的用戶ID相對應(yīng)的注冊用戶。
前面已經(jīng)描述了該用戶ID的代替物。對于數(shù)據(jù)ID可以采用相似的代替結(jié)構(gòu)。
上述實施例中所示的訪問權(quán)限管理部分44和由訪問權(quán)限管理部分44管理的訪問權(quán)限信息(圖11)的格式也是示例性的。對于數(shù)據(jù)項的訪問權(quán)限管理可以采用各種配置,訪問權(quán)限管理部分44可以使用各種方法。
如果所采用策略中部分地構(gòu)成該系統(tǒng)的任何數(shù)據(jù)服務(wù)器10A的注冊用戶的訪問由該系統(tǒng)中的另一數(shù)據(jù)服務(wù)器10A進行許可,則可以省略其自身的訪問權(quán)限管理。在這種配置中,當(dāng)查詢目的地數(shù)據(jù)服務(wù)器10A具有所請求的數(shù)據(jù)項時可以發(fā)布一個臨時ID。
在以上描述中,數(shù)據(jù)服務(wù)器10A無條件地信任通過檢測部分14檢測到的另一數(shù)據(jù)服務(wù)器10A,并發(fā)送諸如用戶ID之類的信息。為了獲得更安全的系統(tǒng),可以采用以下配置。
在一個示例性方法中,每個數(shù)據(jù)服務(wù)器10A具有一個該數(shù)據(jù)服務(wù)器10A信任的數(shù)據(jù)服務(wù)器的列表,且只向該列表上的數(shù)據(jù)服務(wù)器發(fā)送查詢。數(shù)據(jù)服務(wù)器的管理員可以將其他信任的數(shù)據(jù)服務(wù)器注冊在該列表中。
在一個可代替的配置中,當(dāng)接收到查詢的數(shù)據(jù)服務(wù)器不具有所請求的數(shù)據(jù)項時,該數(shù)據(jù)服務(wù)器可以返回它信任的數(shù)據(jù)服務(wù)器的列表,而不是簡單地發(fā)送一個響應(yīng),表示該數(shù)據(jù)服務(wù)器不具有所請求的數(shù)據(jù)項。通過這種方式,進行查詢的數(shù)據(jù)服務(wù)器可以將接收到的列表與已有列表合并起來,從而擴展該列表。當(dāng)所采用的策略中一個受信任的數(shù)據(jù)服務(wù)器所信任的數(shù)據(jù)服務(wù)器將得到信任時,可以使用這種方法。
或者,也可以采用這樣一種配置,其中采用一種規(guī)則,而不是使用列表,在該規(guī)則中,信任引用同一LDAP服務(wù)器的一個數(shù)據(jù)服務(wù)器。另外,也可以采用這樣一種配置,其中,數(shù)據(jù)服務(wù)器從另一數(shù)據(jù)服務(wù)器接收一個數(shù)據(jù)證書,并基于該數(shù)字證書判斷該另一書服務(wù)器是否可以信任(例如,如果該數(shù)字證書由可信的權(quán)威機構(gòu)發(fā)布,則可以信任該另一數(shù)據(jù)服務(wù)器)。
典型情況下,上述實施例的數(shù)據(jù)服務(wù)器10A通過在計算機上運行描述上述單元的所有功能的程序來實現(xiàn)。該程序可以以記錄在計算機可讀記錄介質(zhì)上的形式提供給用戶,該記錄介質(zhì)例如為CD-ROM、DVD-ROM、軟盤或硬盤驅(qū)動器。也可以通過數(shù)據(jù)通信網(wǎng)絡(luò)從服務(wù)器上將該程序下載到用戶的計算機上。
根據(jù)本發(fā)明的一個方面,提供了一個數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成一個數(shù)據(jù)管理系統(tǒng),所述數(shù)據(jù)服務(wù)器包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從客戶機接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向所述客戶機提供所請求的數(shù)據(jù)項;重定向部分,當(dāng)在所述數(shù)據(jù)管理部分中沒有找到所請求的數(shù)據(jù)項時,檢測所述數(shù)據(jù)管理系統(tǒng)中存儲有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器,接收來自該數(shù)據(jù)服務(wù)器的臨時驗證信息,并向所述客戶機發(fā)送用于在該數(shù)據(jù)服務(wù)器中識別所請求數(shù)據(jù)項的信息和所述臨時驗證信息。
根據(jù)本發(fā)明的另一方面,提供了一個數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成數(shù)據(jù)管理系統(tǒng),所述數(shù)據(jù)服務(wù)器包括用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從客戶機接收到數(shù)據(jù)請求時,在數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向所述客戶機提供所請求的數(shù)據(jù)項;查詢響應(yīng)部分,當(dāng)從所述數(shù)據(jù)管理系統(tǒng)中的另一數(shù)據(jù)服務(wù)器接收到關(guān)于所請求數(shù)據(jù)項是否存在的查詢時,搜索所述數(shù)據(jù)管理部分,并且,當(dāng)找到所請求的數(shù)據(jù)項時,生成臨時驗證信息,將該臨時驗證信息存儲在臨時驗證信息存儲部分中,并將該臨時驗證信息通知給所述另一數(shù)據(jù)服務(wù)器。
根據(jù)本發(fā)明的另一方面,該數(shù)據(jù)服務(wù)器還可以包括重定向驗證部分,當(dāng)從未完成用戶驗證的客戶機接收到數(shù)據(jù)請求時,如果該重定向驗證部分確定該數(shù)據(jù)請求包括存儲在所述臨時驗證信息存儲部分中的所述臨時驗證信息時,則接受該數(shù)據(jù)請求,而不使該客戶機執(zhí)行用戶驗證過程。
根據(jù)本發(fā)明的另一方面,該數(shù)據(jù)服務(wù)器還可以包括用戶信息接收部分,從所述另一數(shù)據(jù)服務(wù)器接收數(shù)據(jù)請求用戶的用戶識別信息;用戶信息存儲部分,將從所述另一數(shù)據(jù)服務(wù)器接收到的所述用戶識別信息與臨時驗證信息對應(yīng)地存儲在所述臨時驗證信息存儲部分中;其中,當(dāng)來自所述客戶機的數(shù)據(jù)請求包括存儲在所述臨時驗證信息存儲部分中的臨時驗證信息時,所述重定向驗證部分識別與所存儲的臨時驗證信息相對應(yīng)的用戶識別信息,并確定所述數(shù)據(jù)請求來自與所述用戶識別信息相對應(yīng)的客戶機。
根據(jù)本發(fā)明的另一方面,當(dāng)響應(yīng)于來自所述另一數(shù)據(jù)服務(wù)器的關(guān)于所請求數(shù)據(jù)項是否存在的查詢而在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,所述查詢響應(yīng)部分可以檢查該用戶對于所請求數(shù)據(jù)項的訪問權(quán)限,并且當(dāng)確定該用戶具有所述訪問權(quán)限時,將所述臨時驗證信息通知給所述另一數(shù)據(jù)服務(wù)器。
根據(jù)本發(fā)明的另一方面,提供了第一數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成數(shù)據(jù)管理系統(tǒng),所述第一數(shù)據(jù)服務(wù)器包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從用戶接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向客戶機提供所請求的數(shù)據(jù)項;重定向部分,當(dāng)在所述數(shù)據(jù)管理部分沒有找到所請求的數(shù)據(jù)項時,檢測所述數(shù)據(jù)管理系統(tǒng)中存儲有所請求數(shù)據(jù)項的第二數(shù)據(jù)服務(wù)器,生成用于所請求數(shù)據(jù)項的臨時驗證信息,生成重定向信息,并將該重定向信息返回到所述客戶機,該重定向信息包括用于在所述第二數(shù)據(jù)服務(wù)器中識別所請求數(shù)據(jù)項的信息、用于所請求數(shù)據(jù)項的臨時驗證信息和所述第一數(shù)據(jù)服務(wù)器的服務(wù)器識別信息。
根據(jù)本發(fā)明的另一方面,提供了第二數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成數(shù)據(jù)管理系統(tǒng),所述第二數(shù)據(jù)服務(wù)器包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從用戶接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向客戶機提供所請求的數(shù)據(jù)項;重定向驗證部分,當(dāng)從未完成用戶驗證的客戶機接收到數(shù)據(jù)請求時,向由從該數(shù)據(jù)請求中提取的服務(wù)器識別信息指示的第一數(shù)據(jù)服務(wù)器發(fā)送關(guān)于從該數(shù)據(jù)請求中提取的臨時驗證信息有效性的查詢,并且,當(dāng)接收到指示該臨時驗證信息有效的查詢響應(yīng)時,接受該數(shù)據(jù)請求,而不使所述客戶機執(zhí)行用戶驗證過程。
根據(jù)本發(fā)明的另一方面,該第一數(shù)據(jù)服務(wù)器還可以包括臨時驗證信息存儲部分,將所生成的臨時驗證信息與所述數(shù)據(jù)請求用戶的用戶識別信息對應(yīng)地進行存儲;響應(yīng)部分,當(dāng)從所述第二數(shù)據(jù)服務(wù)器接收到關(guān)于臨時驗證信息有效性的查詢并且所述臨時驗證信息存儲部分存儲有所述臨時驗證信息時,向所述第二數(shù)據(jù)服務(wù)器提供指示所述臨時驗證信息有效的信息。
根據(jù)本發(fā)明的另一方面,該第二數(shù)據(jù)服務(wù)器還可以包括用戶信息接收部分,當(dāng)從所述第一數(shù)據(jù)服務(wù)器接收到關(guān)于所請求數(shù)據(jù)項是否存在的查詢時,從所述第一數(shù)據(jù)服務(wù)器接收請求該數(shù)據(jù)項的用戶的用戶識別信息;查詢響應(yīng)部分,當(dāng)響應(yīng)于來自所述第一數(shù)據(jù)服務(wù)器的關(guān)于所請求數(shù)據(jù)項是否存在的查詢而在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,檢查該用戶對于所請求數(shù)據(jù)項的訪問權(quán)限,并當(dāng)確定該用戶具有所述訪問權(quán)限時,通知所述第一數(shù)據(jù)服務(wù)器可以提供所請求的數(shù)據(jù)項。
根據(jù)本發(fā)明的另一方面,該第二數(shù)據(jù)服務(wù)器還可以包括驗證信息接收部分,用于從所述第一數(shù)據(jù)服務(wù)器接收臨時驗證信息;臨時驗證信息存儲部分,用于存儲從所述第一數(shù)據(jù)服務(wù)器接收的所述臨時驗證信息;重定向驗證部分,當(dāng)從未完成用戶驗證的客戶機接收到數(shù)據(jù)請求時,確定該數(shù)據(jù)請求是否包括存儲在所述臨時驗證信息存儲部分中的臨時驗證信息,并且當(dāng)所述重定向驗證部分確定該數(shù)據(jù)請求包括所述臨時驗證信息時,接受該數(shù)據(jù)請求,而不使所述客戶機執(zhí)行用戶驗證過程。
根據(jù)本發(fā)明的另一方面,提供了一種由數(shù)據(jù)服務(wù)器執(zhí)行的數(shù)據(jù)管理方法,所述數(shù)據(jù)服務(wù)器與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成一個數(shù)據(jù)管理系統(tǒng),所述方法包括當(dāng)從已成功驗證過的客戶機接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)服務(wù)器中搜索該數(shù)據(jù)請求中所請求的數(shù)據(jù)項;當(dāng)找到所請求的數(shù)據(jù)項時,提供所請求的數(shù)據(jù)項;當(dāng)沒有找到所請求的數(shù)據(jù)項時,通過向另一數(shù)據(jù)服務(wù)器發(fā)送關(guān)于所請求數(shù)據(jù)項是否存在的查詢,將具有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器識別為轉(zhuǎn)移目的地服務(wù)器;從所述轉(zhuǎn)移目的地服務(wù)器接收臨時驗證信息;向所述客戶機返回重定向信息,該重定向信息包括用于在所述轉(zhuǎn)移目的地服務(wù)器中識別所請求數(shù)據(jù)項的訪問信息和所述臨時驗證信息。
根據(jù)本發(fā)明的另一方面,提供了一種由數(shù)據(jù)服務(wù)器執(zhí)行的數(shù)據(jù)管理方法,所述數(shù)據(jù)服務(wù)器與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成一個數(shù)據(jù)管理系統(tǒng),所述方法包括當(dāng)從已成功驗證過的用戶接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)服務(wù)器中搜索該數(shù)據(jù)請求中所請求的數(shù)據(jù)項;當(dāng)找到所請求的數(shù)據(jù)項時,向所述客戶機提供所請求的數(shù)據(jù)項;當(dāng)沒有找到所請求的數(shù)據(jù)項時,通過向另一數(shù)據(jù)服務(wù)器發(fā)送關(guān)于所請求數(shù)據(jù)項是否存在的查詢,將具有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器識別為轉(zhuǎn)移目的地服務(wù)器;生成用于所請求數(shù)據(jù)項的臨時驗證信息;生成重定向信息并將該重定向信息返回到所述客戶機,該重定向信息包括用于在所述轉(zhuǎn)移目的地服務(wù)器中識別所請求數(shù)據(jù)項的訪問信息、用于所請求數(shù)據(jù)項的臨時驗證信息和所述數(shù)據(jù)服務(wù)器的服務(wù)器識別信息。
根據(jù)本發(fā)明的另一方面,當(dāng)接收到的所述用戶識別信息是針對關(guān)于所述臨時驗證信息有效性的查詢時,所述重定向驗證部分確定所述數(shù)據(jù)請求來自與所述用戶識別信息相對應(yīng)的客戶機。
根據(jù)本發(fā)明的另一方面,提供了一種數(shù)據(jù)管理系統(tǒng),包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從客戶機接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,將所請求的數(shù)據(jù)項提供給所述客戶機;重定向部分,當(dāng)在所述數(shù)據(jù)管理部分中沒有找到所請求的數(shù)據(jù)項時,檢測所述數(shù)據(jù)管理系統(tǒng)中存儲有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器,接收來自該數(shù)據(jù)服務(wù)器的臨時驗證信息,并向所述客戶機發(fā)送用于在該數(shù)據(jù)服務(wù)器中識別所請求數(shù)據(jù)項的信息和所述臨時驗證信息;查詢響應(yīng)部分,當(dāng)從所述數(shù)據(jù)管理系統(tǒng)中的另一數(shù)據(jù)服務(wù)器接收到關(guān)于所請求數(shù)據(jù)項是否存在的查詢時,搜索所述數(shù)據(jù)管理部分,并且當(dāng)找到所請求的數(shù)據(jù)項時,生成臨時驗證信息,將該臨時驗證信息存儲在臨時驗證信息存儲部分中,并將該臨時驗證信息通知給所述另一數(shù)據(jù)服務(wù)器。
根據(jù)本發(fā)明的另一方面,該數(shù)據(jù)管理系統(tǒng)還可以包括重定向驗證部分,當(dāng)從未完成用戶驗證的客戶機接收到數(shù)據(jù)請求時,確定該數(shù)據(jù)請求是否包括所述臨時驗證存儲部分中存儲的臨時驗證信息,并且當(dāng)所述重定向驗證部分確定該數(shù)據(jù)請求包括所述臨時驗證信息時,接受該數(shù)據(jù)請求,而不使所述客戶機執(zhí)行用戶驗證過程。
根據(jù)本發(fā)明的另一方面,該數(shù)據(jù)管理系統(tǒng)還可以包括用戶信息接收部分,用于從所述另一數(shù)據(jù)服務(wù)器接收數(shù)據(jù)請求用戶的用戶識別信息;用戶信息存儲部分,用于將從所述另一數(shù)據(jù)服務(wù)器接收到的所述用戶識別信息與臨時驗證信息對應(yīng)地存儲在所述臨時驗證信息存儲部分中;其中,當(dāng)來自所述客戶機的所述數(shù)據(jù)請求包括存儲在所述臨時驗證信息存儲部分中的臨時驗證信息時,所述重定向驗證部分識別與所存儲的臨時驗證信息相對應(yīng)的用戶識別信息,并確定所述數(shù)據(jù)請求來自與所述用戶識別信息相對應(yīng)的客戶機。
根據(jù)本發(fā)明的另一方面,當(dāng)響應(yīng)于來自所述另一數(shù)據(jù)服務(wù)器的關(guān)于所請求數(shù)據(jù)項是否存在的查詢而在所述數(shù)據(jù)管理部分中找到所請求數(shù)據(jù)項時,所述查詢響應(yīng)部分檢查所述用戶對于所請求數(shù)據(jù)項的訪問權(quán)限,并且當(dāng)確定所述用戶具有所述訪問權(quán)限時,將所述臨時驗證信息通知給所述另一數(shù)據(jù)服務(wù)器。
雖然上面通過具體例子以特定的優(yōu)選方式描述了本發(fā)明的優(yōu)選方式,但是應(yīng)該理解的是,本發(fā)明不限于此。另外,本領(lǐng)域技術(shù)人員應(yīng)該理解的是,在不偏離本發(fā)明的精神和范圍的前提下,可以對本發(fā)明做出各種變化和修改。
權(quán)利要求
1.一個數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成一個數(shù)據(jù)管理系統(tǒng),所述數(shù)據(jù)服務(wù)器包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從客戶機接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向所述客戶機提供所請求的數(shù)據(jù)項;以及重定向部分,當(dāng)在所述數(shù)據(jù)管理部分中沒有找到所請求的數(shù)據(jù)項時,檢測所述數(shù)據(jù)管理系統(tǒng)中存儲有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器,接收來自該數(shù)據(jù)服務(wù)器的臨時驗證信息,并向所述客戶機發(fā)送用于在該數(shù)據(jù)服務(wù)器中識別所請求數(shù)據(jù)項的信息和所述臨時驗證信息。
2.一個數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成數(shù)據(jù)管理系統(tǒng),所述數(shù)據(jù)服務(wù)器包括用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從客戶機接收到數(shù)據(jù)請求時,在數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向所述客戶機提供所請求的數(shù)據(jù)項;以及查詢響應(yīng)部分,當(dāng)從所述數(shù)據(jù)管理系統(tǒng)中的另一數(shù)據(jù)服務(wù)器接收到關(guān)于所請求數(shù)據(jù)項是否存在的查詢時,搜索所述數(shù)據(jù)管理部分,并且,當(dāng)找到所請求的數(shù)據(jù)項時,生成臨時驗證信息,將該臨時驗證信息存儲在臨時驗證信息存儲部分中,并將該臨時驗證信息通知給所述另一數(shù)據(jù)服務(wù)器。
3.根據(jù)權(quán)利要求2所述的數(shù)據(jù)服務(wù)器,還包括重定向驗證部分,當(dāng)從未完成用戶驗證的客戶機接收到數(shù)據(jù)請求時,如果該重定向驗證部分確定該數(shù)據(jù)請求包括存儲在所述臨時驗證信息存儲部分中的所述臨時驗證信息時,則接受該數(shù)據(jù)請求,而不使該客戶機執(zhí)行用戶驗證過程。
4.根據(jù)權(quán)利要求3所述的數(shù)據(jù)服務(wù)器,還包括用戶信息接收部分,從所述另一數(shù)據(jù)服務(wù)器接收數(shù)據(jù)請求用戶的用戶識別信息;以及用戶信息存儲部分,將從所述另一數(shù)據(jù)服務(wù)器接收到的所述用戶識別信息與臨時驗證信息對應(yīng)地存儲在所述臨時驗證信息存儲部分中;其中,當(dāng)來自所述客戶機的數(shù)據(jù)請求包括存儲在所述臨時驗證信息存儲部分中的臨時驗證信息時,所述重定向驗證部分識別與所存儲的臨時驗證信息相對應(yīng)的用戶識別信息,并確定所述數(shù)據(jù)請求來自與所述用戶識別信息相對應(yīng)的客戶機。
5.根據(jù)權(quán)利要求4所述的數(shù)據(jù)服務(wù)器,其中,當(dāng)響應(yīng)于來自所述另一數(shù)據(jù)服務(wù)器的關(guān)于所請求數(shù)據(jù)項是否存在的查詢而在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,所述查詢響應(yīng)部分檢查該用戶對于所請求數(shù)據(jù)項的訪問權(quán)限,并且當(dāng)確定該用戶具有所述訪問權(quán)限時,將所述臨時驗證信息通知給所述另一數(shù)據(jù)服務(wù)器。
6.第一數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成數(shù)據(jù)管理系統(tǒng),所述第一數(shù)據(jù)服務(wù)器包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從用戶接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向客戶機提供所請求的數(shù)據(jù)項;以及重定向部分,當(dāng)在所述數(shù)據(jù)管理部分沒有找到所請求的數(shù)據(jù)項時,檢測所述數(shù)據(jù)管理系統(tǒng)中存儲有所請求數(shù)據(jù)項的第二數(shù)據(jù)服務(wù)器,生成用于所請求數(shù)據(jù)項的臨時驗證信息,生成重定向信息,并將該重定向信息返回到所述客戶機,該重定向信息包括用于在所述第二數(shù)據(jù)服務(wù)器中識別所請求數(shù)據(jù)項的信息、用于所請求數(shù)據(jù)項的臨時驗證信息和所述第一數(shù)據(jù)服務(wù)器的服務(wù)器識別信息。
7.第二數(shù)據(jù)服務(wù)器,其與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成數(shù)據(jù)管理系統(tǒng),所述第二數(shù)據(jù)服務(wù)器包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從用戶接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向客戶機提供所請求的數(shù)據(jù)項;以及重定向驗證部分,當(dāng)從未完成用戶驗證的客戶機接收到數(shù)據(jù)請求時,向由從該數(shù)據(jù)請求中提取的服務(wù)器識別信息指示的第一數(shù)據(jù)服務(wù)器發(fā)送關(guān)于從該數(shù)據(jù)請求中提取的臨時驗證信息有效性的查詢,并且,當(dāng)接收到指示該臨時驗證信息有效的查詢響應(yīng)時,接受該數(shù)據(jù)請求,而不使所述客戶機執(zhí)行用戶驗證過程。
8.根據(jù)權(quán)利要求6所述的第一數(shù)據(jù)服務(wù)器,還包括臨時驗證信息存儲部分,將所生成的臨時驗證信息與所述數(shù)據(jù)請求用戶的用戶識別信息對應(yīng)地進行存儲;以及響應(yīng)部分,當(dāng)從所述第二數(shù)據(jù)服務(wù)器接收到關(guān)于臨時驗證信息有效性的查詢并且所述臨時驗證信息存儲部分存儲有所述臨時驗證信息時,向所述第二數(shù)據(jù)服務(wù)器提供指示所述臨時驗證信息有效的信息。
9.根據(jù)權(quán)利要求7所述的第二數(shù)據(jù)服務(wù)器,還包括用戶信息接收部分,當(dāng)從所述第一數(shù)據(jù)服務(wù)器接收到關(guān)于所請求數(shù)據(jù)項是否存在的查詢時,從所述第一數(shù)據(jù)服務(wù)器接收請求該數(shù)據(jù)項的用戶的用戶識別信息;以及查詢響應(yīng)部分,當(dāng)響應(yīng)于來自所述第一數(shù)據(jù)服務(wù)器的關(guān)于所請求數(shù)據(jù)項是否存在的查詢而在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,檢查該用戶對于所請求數(shù)據(jù)項的訪問權(quán)限,并且,當(dāng)確定該用戶具有所述訪問權(quán)限時,通知所述第一數(shù)據(jù)服務(wù)器可以提供所請求的數(shù)據(jù)項。
10.根據(jù)權(quán)利要求7所述的第二數(shù)據(jù)服務(wù)器,還包括驗證信息接收部分,用于從所述第一數(shù)據(jù)服務(wù)器接收臨時驗證信息;臨時驗證信息存儲部分,用于存儲從所述第一數(shù)據(jù)服務(wù)器接收的所述臨時驗證信息;以及重定向驗證部分,當(dāng)從未完成用戶驗證的客戶機接收到數(shù)據(jù)請求時,確定該數(shù)據(jù)請求是否包括存儲在所述臨時驗證信息存儲部分中的臨時驗證信息,并且,當(dāng)所述重定向驗證部分確定該數(shù)據(jù)請求包括所述臨時驗證信息時,接受該數(shù)據(jù)請求,而不使所述客戶機執(zhí)行用戶驗證過程。
11.一種由數(shù)據(jù)服務(wù)器執(zhí)行的數(shù)據(jù)管理方法,所述數(shù)據(jù)服務(wù)器與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成一個數(shù)據(jù)管理系統(tǒng),所述方法包括當(dāng)從已成功驗證過的客戶機接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)服務(wù)器中搜索該數(shù)據(jù)請求中所請求的數(shù)據(jù)項;當(dāng)找到所請求的數(shù)據(jù)項時,提供所請求的數(shù)據(jù)項;當(dāng)沒有找到所請求的數(shù)據(jù)項時,通過向另一數(shù)據(jù)服務(wù)器發(fā)送關(guān)于所請求數(shù)據(jù)項是否存在的查詢,將具有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器識別為轉(zhuǎn)移目的地服務(wù)器;從所述轉(zhuǎn)移目的地服務(wù)器接收臨時驗證信息;以及向所述客戶機返回重定向信息,該重定向信息包括用于在所述轉(zhuǎn)移目的地服務(wù)器中識別所請求數(shù)據(jù)項的訪問信息和所述臨時驗證信息。
12.一種由數(shù)據(jù)服務(wù)器執(zhí)行的數(shù)據(jù)管理方法,所述數(shù)據(jù)服務(wù)器與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成一個數(shù)據(jù)管理系統(tǒng),所述方法包括當(dāng)從已成功驗證過的用戶接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)服務(wù)器中搜索該數(shù)據(jù)請求中所請求的數(shù)據(jù)項;當(dāng)找到所請求的數(shù)據(jù)項時,向所述客戶機提供所請求的數(shù)據(jù)項;當(dāng)沒有找到所請求的數(shù)據(jù)項時,通過向另一數(shù)據(jù)服務(wù)器發(fā)送關(guān)于所請求數(shù)據(jù)項是否存在的查詢,將具有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器識別為轉(zhuǎn)移目的地服務(wù)器;生成用于所請求數(shù)據(jù)項的臨時驗證信息;以及生成重定向信息并將該重定向信息返回到所述客戶機,該重定向信息包括用于在所述轉(zhuǎn)移目的地服務(wù)器中識別所請求數(shù)據(jù)項的訪問信息、用于所請求數(shù)據(jù)項的臨時驗證信息和所述數(shù)據(jù)服務(wù)器的服務(wù)器識別信息。
13.根據(jù)權(quán)利要求7所述的第二數(shù)據(jù)服務(wù)器,其中,當(dāng)接收到的所述用戶識別信息是針對關(guān)于所述臨時驗證信息有效性的查詢時,所述重定向驗證部分確定所述數(shù)據(jù)請求來自與所述用戶識別信息相對應(yīng)的客戶機。
14.一種數(shù)據(jù)管理系統(tǒng),包括數(shù)據(jù)管理部分,用于存儲數(shù)據(jù)項;用戶驗證部分,用于執(zhí)行用戶驗證;搜索部分,當(dāng)從客戶機接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,將所請求的數(shù)據(jù)項提供給所述客戶機;重定向部分,當(dāng)在所述數(shù)據(jù)管理部分中沒有找到所請求的數(shù)據(jù)項時,檢測所述數(shù)據(jù)管理系統(tǒng)中存儲有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器,接收來自該數(shù)據(jù)服務(wù)器的臨時驗證信息,并向所述客戶機發(fā)送用于在該數(shù)據(jù)服務(wù)器中識別所請求數(shù)據(jù)項的信息和所述臨時驗證信息;以及查詢響應(yīng)部分,當(dāng)從所述數(shù)據(jù)管理系統(tǒng)中的另一數(shù)據(jù)服務(wù)器接收到關(guān)于所請求數(shù)據(jù)項是否存在的查詢時,搜索所述數(shù)據(jù)管理部分,并且,當(dāng)找到所請求的數(shù)據(jù)項時,生成臨時驗證信息,將該臨時驗證信息存儲在臨時驗證信息存儲部分中,并將該臨時驗證信息通知給所述另一數(shù)據(jù)服務(wù)器。
15.根據(jù)權(quán)利要求14所述的數(shù)據(jù)管理系統(tǒng),還包括重定向驗證部分,當(dāng)從未完成用戶驗證的客戶機接收到數(shù)據(jù)請求時,確定該數(shù)據(jù)請求是否包括所述臨時驗證存儲部分中存儲的臨時驗證信息,并且,當(dāng)所述重定向驗證部分確定該數(shù)據(jù)請求包括所述臨時驗證信息時,接受該數(shù)據(jù)請求,而不使所述客戶機執(zhí)行用戶驗證過程。
16.根據(jù)權(quán)利要求14所述的數(shù)據(jù)管理系統(tǒng),還包括用戶信息接收部分,用于從所述另一數(shù)據(jù)服務(wù)器接收數(shù)據(jù)請求用戶的用戶識別信息;以及用戶信息存儲部分,用于將從所述另一數(shù)據(jù)服務(wù)器接收到的所述用戶識別信息與臨時驗證信息對應(yīng)地存儲在所述臨時驗證信息存儲部分中;其中,當(dāng)來自所述客戶機的所述數(shù)據(jù)請求包括存儲在所述臨時驗證信息存儲部分中的臨時驗證信息時,所述重定向驗證部分識別與所存儲的臨時驗證信息相對應(yīng)的用戶識別信息,并確定所述數(shù)據(jù)請求來自與所述用戶識別信息相對應(yīng)的客戶機。
17.根據(jù)權(quán)利要求14所述的數(shù)據(jù)管理系統(tǒng),其中,當(dāng)響應(yīng)于來自所述另一數(shù)據(jù)服務(wù)器的關(guān)于所請求數(shù)據(jù)項是否存在的查詢而在所述數(shù)據(jù)管理部分中找到所請求數(shù)據(jù)項時,所述查詢響應(yīng)部分檢查所述用戶對于所請求數(shù)據(jù)項的訪問權(quán)限,并且當(dāng)確定所述用戶具有所述訪問權(quán)限時,將所述臨時驗證信息通知給所述另一數(shù)據(jù)服務(wù)器。
全文摘要
一個數(shù)據(jù)服務(wù)器,與經(jīng)由網(wǎng)絡(luò)連接的另一數(shù)據(jù)服務(wù)器協(xié)作,從而部分地構(gòu)成一個數(shù)據(jù)管理系統(tǒng)的,該數(shù)據(jù)服務(wù)器包括數(shù)據(jù)管理部分,存儲數(shù)據(jù)項;用戶驗證部分,執(zhí)行用戶驗證;搜索部分,當(dāng)從客戶機接收到數(shù)據(jù)請求時,在所述數(shù)據(jù)管理部分中搜索所請求的數(shù)據(jù)項;數(shù)據(jù)提供部分,當(dāng)在所述數(shù)據(jù)管理部分中找到所請求的數(shù)據(jù)項時,向所述客戶機提供所請求的數(shù)據(jù)項;重定向部分,當(dāng)在所述數(shù)據(jù)管理部分中沒有找到所請求的數(shù)據(jù)項時,檢測所述數(shù)據(jù)管理系統(tǒng)中存儲有所請求數(shù)據(jù)項的數(shù)據(jù)服務(wù)器,接收來自該數(shù)據(jù)服務(wù)器的臨時驗證信息,并向客戶機發(fā)送用于在該數(shù)據(jù)服務(wù)器中識別所請求數(shù)據(jù)項的信息和臨時驗證信息。
文檔編號H04L12/00GK1925485SQ20061006829
公開日2007年3月7日 申請日期2006年3月27日 優(yōu)先權(quán)日2005年9月2日
發(fā)明者砂田智 申請人:富士施樂株式會社