專利名稱:利用緩存的登錄對(duì)web服務(wù)器上動(dòng)態(tài)內(nèi)容的隔離匿名訪問(wèn)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及利用緩存的登錄對(duì)WEB服務(wù)器上動(dòng)態(tài)內(nèi)容的隔離匿名訪問(wèn)。具 體地,涉及用于對(duì)web服務(wù)器所托管的多個(gè)網(wǎng)站上的動(dòng)態(tài)內(nèi)容進(jìn)行隔離訪問(wèn)的系統(tǒng)和方 法。
背景技術(shù):
Web托管組織經(jīng)常處理密集型操作,如在單個(gè)服務(wù)器或服務(wù)器集上托管數(shù)千、數(shù)萬(wàn) 甚至十幾萬(wàn)或更多的網(wǎng)站客戶。需要密切注意性能和安全問(wèn)題,以便在維持每個(gè)客戶的數(shù) 據(jù)足夠安全的同時(shí),提供對(duì)內(nèi)容最廣泛的有效訪問(wèn)。 當(dāng)僅服務(wù)靜態(tài)內(nèi)容(例如,.html, . jpeg)時(shí),所需要的安全級(jí)別和類型與提供動(dòng) 態(tài)內(nèi)容(例如可執(zhí)行文件,腳本)時(shí)所必須采用的安全是十分不同的。除了防止網(wǎng)站訪問(wèn) 者查看限制訪問(wèn)的內(nèi)容(例如,受到口令保護(hù)的網(wǎng)頁(yè)),還需要進(jìn)一步限制動(dòng)態(tài)內(nèi)容,從而 使客戶的腳本(或者,在共享的服務(wù)器環(huán)境中處理的其他可執(zhí)行內(nèi)容)不能訪問(wèn)存儲(chǔ)在相 同環(huán)境中的其他客戶的數(shù)據(jù)。 例如,如果僅僅允許靜態(tài)內(nèi)容,并且所有的訪問(wèn)者都被授權(quán)查看所有被托管的內(nèi) 容(例如,用戶均未使用登錄方案以過(guò)濾訪問(wèn)),則安全需要是相對(duì)統(tǒng)一的和基本的。然而, 當(dāng)在共享web服務(wù)器環(huán)境中允許運(yùn)行腳本和/或可執(zhí)行圖像時(shí),客戶可以指示web服務(wù)器 自行執(zhí)行的動(dòng)作的范圍顯著增加。特別地,客戶的腳本可能惡意或者偶然地(例如,通過(guò)不 良編程)損壞、損毀或者以其他方式違法地訪問(wèn)其他客戶的數(shù)據(jù)。 但是,如果出于復(fù)雜的安全考慮而使安全限制太嚴(yán)格,對(duì)于內(nèi)容的特定片段的訪 問(wèn)可能被錯(cuò)誤地禁止,對(duì)于授權(quán)內(nèi)容的訪問(wèn)可能被延遲,對(duì)于服務(wù)器和內(nèi)容的管理可能變 得非常復(fù)雜,等等。結(jié)果是得到無(wú)效的web托管解決方案,其沒(méi)有充分滿足客戶的需求。
雖然必須強(qiáng)制充分的安全措施以保護(hù)每個(gè)用戶的數(shù)據(jù)不被其他用戶影響,但是也 應(yīng)當(dāng)維持訪問(wèn)者自動(dòng)和匿名登錄網(wǎng)站的能力。這允許訪問(wèn)者與網(wǎng)站內(nèi)容匿名交互,而沒(méi)有 從集中式授權(quán)方首先獲得登錄證書(shū)(例如,用戶名和口令、數(shù)字證書(shū))的不便。更特別地, 當(dāng)允許客戶的腳本在后臺(tái)代表訪問(wèn)者運(yùn)行時(shí),給予訪問(wèn)者匿名訪問(wèn)是有益和必要的。
在仍然允許自動(dòng)和匿名登錄的同時(shí),保護(hù)web服務(wù)器安全的已有嘗試是不充分或 無(wú)效的,特別是在提供動(dòng)態(tài)內(nèi)容(例如,腳本)的情況下。例如,在許多恥b托管環(huán)境中,所 有匿名內(nèi)容瀏覽者使用相同的服務(wù)器賬戶自動(dòng)登錄到網(wǎng)站服務(wù)器中,而不考慮他們正在訪 問(wèn)的內(nèi)容(例如,靜態(tài)網(wǎng)頁(yè)、圖像、腳本、可執(zhí)行文件)。這類解決方法沒(méi)有解決試圖限制一 個(gè)客戶的腳本訪問(wèn)另一個(gè)客戶的數(shù)據(jù)這一問(wèn)題。 當(dāng)所有匿名網(wǎng)站訪問(wèn)者共享一個(gè)賬戶時(shí),他們共享一個(gè)安全上下文,并且不存在 固有的或簡(jiǎn)單的方式將一個(gè)訪問(wèn)者與另一個(gè)區(qū)別開(kāi)。因此,文件服務(wù)器、web服務(wù)器或其他 對(duì)已存儲(chǔ)數(shù)據(jù)的訪問(wèn)仲裁器無(wú)法輕易在應(yīng)當(dāng)允許誰(shuí)以及應(yīng)當(dāng)禁止誰(shuí)訪問(wèn)給定的內(nèi)容文件 之間進(jìn)行區(qū)分。除非所有的訪問(wèn)者(以及作為頁(yè)面瀏覽結(jié)果而運(yùn)行的所有腳本)具有對(duì)所 有內(nèi)容的訪問(wèn)權(quán),否則個(gè)體客戶(或其他涉及到的實(shí)體)通常將必需指派(并分配)用戶
5賬戶,以便實(shí)現(xiàn)用于訪問(wèn)受保護(hù)內(nèi)容的登錄過(guò)程。 更具體地,如果web服務(wù)器上提供可執(zhí)行內(nèi)容(例如,腳本、可執(zhí)行文件),必需魯 棒地配置安全性,以防止對(duì)已存儲(chǔ)數(shù)據(jù)進(jìn)行未授權(quán)訪問(wèn),但是不應(yīng)犧牲可接受的性能。部分 安全需求導(dǎo)致需要隔離或隔絕客戶和他們的數(shù)據(jù),使得來(lái)自 一個(gè)客戶的動(dòng)態(tài)內(nèi)容不能用于 訪問(wèn)另一個(gè)客戶的受保護(hù)數(shù)據(jù)。 例如,一個(gè)客戶可能編創(chuàng)試圖刪除web服務(wù)器上所有文件、另一個(gè)客戶的目錄結(jié) 構(gòu)下所有文件或引起某些其他故障的腳本。允許客戶內(nèi)容的瀏覽者匿名地和自動(dòng)地進(jìn)行連 接這一需要使得對(duì)該問(wèn)題的解決方案復(fù)雜化。 —些中間件或應(yīng)用層軟件試圖提供保護(hù),以阻止軟件的用戶未經(jīng)授權(quán)訪問(wèn)。例如, PHP(PHP超文本處理器)包括操作的安全模式,其試圖在運(yùn)行PHP腳本時(shí)降低匿名內(nèi)容瀏覽 者或用戶引起破壞的能力。但是,像實(shí)際上所有應(yīng)用層軟件一樣,其存在可被利用的漏洞。
對(duì)于安全地提供動(dòng)態(tài)內(nèi)容而不嚴(yán)重影響性能的安全策略這一需求的另一個(gè)解決 方法包括虛擬機(jī)的使用。在該策略中,為服務(wù)器上的每個(gè)客戶構(gòu)建虛擬機(jī)或虛擬服務(wù)器。由 于需要建立許多虛擬環(huán)境,該解決方法是處理器密集型的,并且由于資源必需在每個(gè)虛擬 機(jī)上被許可,該解決方法也是非常昂貴的。另外,必須應(yīng)用某些映射資源來(lái)將內(nèi)容瀏覽者映 射到正確的客戶虛擬機(jī)上。
Microsoft⑧的ns(因特網(wǎng)信息服務(wù))包括相關(guān)聯(lián)的元數(shù)據(jù)庫(kù),其將靜態(tài)編碼
的URL(統(tǒng)一資源定位器)一對(duì)應(yīng)于瀏覽者可以請(qǐng)求的內(nèi)容——映射到每個(gè)特定的用戶
賬戶,以便應(yīng)用于每個(gè)請(qǐng)求。然而,元數(shù)據(jù)庫(kù)在容量上(也即,它能存儲(chǔ)多少映射)是有限
的,并且無(wú)法擴(kuò)展為支持可以服務(wù)于來(lái)自數(shù)千或數(shù)十萬(wàn)網(wǎng)站的內(nèi)容的web服務(wù)器。
如果為了托管大量網(wǎng)站而采用多個(gè)web服務(wù)器和元數(shù)據(jù)庫(kù),將進(jìn)一步增加復(fù)雜 性。由于元數(shù)據(jù)庫(kù)的容量存在限制,支持大于一個(gè)元數(shù)據(jù)庫(kù)容量的多個(gè)網(wǎng)站就需要對(duì)內(nèi)容 請(qǐng)求進(jìn)行預(yù)處理。預(yù)處理使得每個(gè)請(qǐng)求被引導(dǎo)到正確的服務(wù)器(也即,具有與請(qǐng)求的網(wǎng)站 相對(duì)應(yīng)的元數(shù)據(jù)庫(kù)的服務(wù)器)。 由于期望服務(wù)提供網(wǎng)站的冗余,因此將在服務(wù)器池之間復(fù)制每個(gè)元數(shù)據(jù)庫(kù)以便提 供故障轉(zhuǎn)移保護(hù)。這可以使得共享元數(shù)據(jù)庫(kù)面臨挑戰(zhàn),特別是當(dāng)被托管的網(wǎng)站是動(dòng)態(tài)的時(shí)
候,這意味著它們由于客戶的一時(shí)興起發(fā)生改變,可能改變它們的命名標(biāo)準(zhǔn),刪除網(wǎng)站服務(wù)等。 已經(jīng)證明,導(dǎo)致數(shù)據(jù)復(fù)制而沒(méi)有足夠的工具管理該數(shù)據(jù)復(fù)制的解決方法是昂貴和 易錯(cuò)的。在向不同的元數(shù)據(jù)庫(kù)組而非單個(gè)元數(shù)據(jù)庫(kù)提供服務(wù)支持時(shí),會(huì)更加昂貴。
支持對(duì)web服務(wù)器上內(nèi)容的匿名訪問(wèn)的另一個(gè)問(wèn)題是反復(fù)地聯(lián)系域控制器(或其 他認(rèn)證實(shí)體)以認(rèn)證每個(gè)虛擬瀏覽者的會(huì)話(例如向默認(rèn)匿名用戶賬戶登錄每個(gè)請(qǐng)求)這 一負(fù)擔(dān)。該負(fù)擔(dān)不僅導(dǎo)致web服務(wù)器性能下降,而且導(dǎo)致接受與web服務(wù)器登錄會(huì)話相關(guān) 聯(lián)的SMB(服務(wù)器消息塊)網(wǎng)絡(luò)登錄的文件管理器性能下降。 在web服務(wù)器上緩存匿名登錄會(huì)話通常是不可行的,特別是在針對(duì)內(nèi)容的瀏覽者 請(qǐng)求在多個(gè)進(jìn)程間分布的情況,這是因?yàn)槟J(rèn)地,登錄句柄或者上下文并非僅在其加載的 進(jìn)程中有效??梢栽诙鄠€(gè)進(jìn)程間分布請(qǐng)求,以幫助阻止一個(gè)客戶的惡意或錯(cuò)誤的腳本對(duì)其 他瀏覽者的運(yùn)行時(shí)體驗(yàn)產(chǎn)生不良影響。現(xiàn)有的登錄緩存方案不允許進(jìn)程間通信來(lái)準(zhǔn)許登 錄句柄的共享,并且為每個(gè)進(jìn)程建立的獨(dú)立緩存策略的開(kāi)銷將獲得很小的益處或者沒(méi)有益
6處。
發(fā)明內(nèi)容
在本發(fā)明的一些實(shí)施方式中,提供一種系統(tǒng)和方法,用于對(duì)web服務(wù)器所托管的 多個(gè)網(wǎng)站上的動(dòng)態(tài)內(nèi)容的訪問(wèn)進(jìn)行隔離,同時(shí)緩存登錄句柄或者令牌以便在多個(gè)進(jìn)程間進(jìn) 行共享。 在這些實(shí)施方式中,當(dāng)從網(wǎng)站接收到對(duì)動(dòng)態(tài)內(nèi)容的請(qǐng)求時(shí),首先將其關(guān)聯(lián)到一個(gè) 默認(rèn)匿名用戶賬戶(例如,作為該賬戶來(lái)登錄)。UserRetriever過(guò)濾模塊接著從獨(dú)立于 恥b服務(wù)器并用于其他目的(例如,記賬、網(wǎng)站域信息、服務(wù)提供、識(shí)別何處存儲(chǔ)內(nèi)容)的數(shù) 據(jù)庫(kù)中獲取與該網(wǎng)站對(duì)應(yīng)的用戶名和口令。該數(shù)據(jù)庫(kù)充當(dāng)用于web服務(wù)器操作的中央數(shù)據(jù) 源,并且不需要僅在所請(qǐng)求內(nèi)容與可用于該請(qǐng)求的用戶賬戶之間進(jìn)行映射(例如,利用IIS 實(shí)現(xiàn)的元數(shù)據(jù)庫(kù))的專門(mén)化數(shù)據(jù)庫(kù)。 基于由UserRetriever模塊獲得的用戶名和口令,Userlmpersonator擴(kuò)展模塊從
登錄緩存管理器請(qǐng)求用于該用戶名的登錄句柄或令牌,并且可以提供用戶名和口令。如果
句柄沒(méi)有被緩存,則緩存管理器作為該用戶來(lái)登錄,接著復(fù)制并返回所請(qǐng)求的登錄句柄。在
本發(fā)明的這些實(shí)施方式中,利用適當(dāng)?shù)臋?quán)限來(lái)配置用戶賬戶以訪問(wèn)所請(qǐng)求的內(nèi)容,而不會(huì)
對(duì)相同服務(wù)器或文件管理器上的其他網(wǎng)站進(jìn)行瀏覽、修改或者與其交互。 登錄句柄被附加到請(qǐng)求上,使得該請(qǐng)求將使用模仿的(impersonated)用戶賬戶
而非該請(qǐng)求最初關(guān)聯(lián)的默認(rèn)匿名用戶賬戶來(lái)完成。動(dòng)態(tài)內(nèi)容被檢索并作為該特定的、受限
的、模仿的用戶賬戶被提供;因此,在該執(zhí)行線程上操作的軟件命令僅可以訪問(wèn)明確授權(quán)給
該用戶的資源。在該內(nèi)容被獲取或腳本處理完成之后,剝奪所用的登錄句柄,將請(qǐng)求與默認(rèn)
匿名用戶賬戶重新關(guān)聯(lián),此后終止該請(qǐng)求。 在一些實(shí)施方式中,可以實(shí)現(xiàn)用戶賬戶的模仿,從而如上所述地限制與該站點(diǎn)相 對(duì)應(yīng)的用戶賬戶對(duì)網(wǎng)站內(nèi)容的訪問(wèn),而無(wú)需緩存登錄句柄。
圖1是描述可在其中實(shí)現(xiàn)本發(fā)明實(shí)施方式的web托管環(huán)境的框圖。 圖2是示出依照本發(fā)明一個(gè)實(shí)施方式的、用于對(duì)web托管環(huán)境中的動(dòng)態(tài)內(nèi)容的匿
名訪問(wèn)進(jìn)行隔離的一個(gè)方法流程圖。 圖3是示出依照發(fā)明實(shí)施方式的、用于緩存在web托管環(huán)境中的多個(gè)并發(fā)進(jìn)程中 使用的登錄句柄的一個(gè)方法流程圖。 圖4描繪了依照一個(gè)發(fā)明實(shí)施方式的、用于請(qǐng)求已緩存登錄句柄的數(shù)據(jù)結(jié)構(gòu)。
具體實(shí)施例方式
給出下述描述以使得任何本領(lǐng)域技術(shù)人員可做出并使用本發(fā)明,并在本發(fā)明的特 定應(yīng)用和它們的要求的上下文中提供下述描述。對(duì)公開(kāi)的實(shí)施方式的各種修改對(duì)于本領(lǐng)域 的技術(shù)人員是顯而易見(jiàn)的,此處定義的通常的原理可在不偏離本發(fā)明的范圍的情況下應(yīng)用 到其他實(shí)施方式中。因此,不試圖將本發(fā)明限制在示出的實(shí)施方式,而是與此處公開(kāi)的原理 和特征相一致的最寬的范圍相符。
在本發(fā)明的一些實(shí)施方式中,提供一種系統(tǒng)和方法,用于隔離或隔絕為多個(gè)客戶 (每個(gè)客戶代表被托管的網(wǎng)站)提供動(dòng)態(tài)內(nèi)容(例如,腳本,可執(zhí)行文件)的恥b服務(wù)器中 的客戶內(nèi)容,以便在沒(méi)有允許的情況下防止每個(gè)客戶的動(dòng)態(tài)內(nèi)容訪問(wèn)其他客戶的數(shù)據(jù)。
在一個(gè)實(shí)施方式中,瀏覽者(例如,Internet用戶)匿名連接到web服務(wù)器(并
且最初與默認(rèn)匿名用戶賬戶相關(guān)聯(lián))。接著,基于其請(qǐng)求的內(nèi)容,瀏覽者(或他們的請(qǐng)求) 被記錄到與擁有所請(qǐng)求內(nèi)容的客戶相關(guān)聯(lián)的用戶賬戶中。該用戶賬戶被授予對(duì)于相關(guān)聯(lián)的 客戶內(nèi)容的訪問(wèn)權(quán),但是阻止對(duì)其他客戶內(nèi)容的訪問(wèn)。由于用戶賬戶與內(nèi)容一樣是由操作 系統(tǒng)定義的,所以可以利用控制資源訪問(wèn)的操作系統(tǒng)機(jī)制(例如,存儲(chǔ)控制列表或稱ACL)。
在發(fā)明的一些實(shí)施方式中,提供一種在web服務(wù)器上緩存登錄會(huì)話的策略。可以 實(shí)現(xiàn)該實(shí)施方式,以允許對(duì)與客戶網(wǎng)站相關(guān)聯(lián)的用戶賬戶的單獨(dú)登錄將在處理針對(duì)該網(wǎng)站 內(nèi)容的請(qǐng)求的多個(gè)進(jìn)程之間共享。Web服務(wù)器的性能得以增強(qiáng),因?yàn)椴恍枰獮槊總€(gè)以該網(wǎng)站 作為目標(biāo)的請(qǐng)求調(diào)用域控制器或其他授權(quán)代理,并且緩存是由中央進(jìn)程執(zhí)行的,而非由多 個(gè)請(qǐng)求控制進(jìn)程并行執(zhí)行。 圖1是可在其中實(shí)現(xiàn)本發(fā)明某些實(shí)施方式的web托管環(huán)境的框圖。文件管理器110 可以包含任何數(shù)量的文件管理器或文件服務(wù)器,其存儲(chǔ)接近十萬(wàn)客戶網(wǎng)站的內(nèi)容。類似地, 恥b服務(wù)器120協(xié)同操作以便向?yàn)g覽者140提供客戶的內(nèi)容。瀏覽者/用戶可以直接連接 到web服務(wù)器,或經(jīng)由局域網(wǎng)或廣域網(wǎng)(例如互聯(lián)網(wǎng))連接。 文件管理器110和web服務(wù)器120可以共同定位,或是地理上分散的。每個(gè)web 服務(wù)器能夠提供來(lái)自每個(gè)客戶網(wǎng)站的內(nèi)容,無(wú)論該內(nèi)容存儲(chǔ)在哪個(gè)文件管理器上,或者哪 個(gè)網(wǎng)站擁有該內(nèi)容。 數(shù)據(jù)庫(kù)150可以由運(yùn)營(yíng)web服務(wù)器120的組織來(lái)操作,并且存儲(chǔ)可操作和/或可 管理的數(shù)據(jù),例如文件管理器110的地址/位置、客戶內(nèi)容的位置或者路徑、使用哪個(gè)用戶 賬戶來(lái)訪問(wèn)每個(gè)客戶的內(nèi)容(以及相應(yīng)口令)、記賬記錄、服務(wù)提供信息(例如磁盤(pán)空間、帶 寬)、網(wǎng)站域名、登錄和使用統(tǒng)計(jì)、市場(chǎng)信息等。這些屬性中的許多沒(méi)有存儲(chǔ)在元數(shù)據(jù)庫(kù)中。
Web服務(wù)器120包括IIS (因特網(wǎng)信息服務(wù))軟件122或者一些其他網(wǎng)站服務(wù)器軟 件(例如Apache) 。 Web服務(wù)器配置用于服務(wù)于由客戶提供的動(dòng)態(tài)內(nèi)容,例如腳本和/或可 執(zhí)行文件??梢灾С值氖痉缎阅_本語(yǔ)言包括但是不限于PHP、 ASP(動(dòng)態(tài)服務(wù)器頁(yè)面)、以 及JSP(Java服務(wù)器頁(yè)面)。Web服務(wù)器120因此包括支持腳本語(yǔ)言所需的引擎、解釋器或 者解析器,例如PHP引擎122。 Web服務(wù)器120還包括各種ISAPI (因特網(wǎng)服務(wù)系統(tǒng)應(yīng)用程序編程接口 )文件管理 器和擴(kuò)展,例如UserRetriever?!姥?24 (ISAPI文件管理器),以及Userlmpersonator?!姥?126(ISAPI擴(kuò)展)。 在本發(fā)明示出的實(shí)施方式中,UserRetriever模塊124配置用于在web服務(wù)器120 接收到瀏覽者針對(duì)內(nèi)容的請(qǐng)求時(shí)訪問(wèn)數(shù)據(jù)庫(kù)150。 UserRetriever模塊獲取將用于該請(qǐng)求 (基于內(nèi)容請(qǐng)求)的用戶名和口令,還可能有其他信息(例如,所請(qǐng)求內(nèi)容的位置或路徑)。
將所獲取信息的一些或全部傳遞到Userlmpersonator 126,其將用戶賬戶的登錄 令牌附加到處理瀏覽者內(nèi)容請(qǐng)求的線程。該請(qǐng)求接著被傳遞到腳本引擎,或者被配置用于 實(shí)際上獲取和服務(wù)內(nèi)容并同時(shí)模仿UserRetriever 124所識(shí)別的用戶賬戶的其他進(jìn)程。
更具體地,服務(wù)內(nèi)容請(qǐng)求的進(jìn)程或線程(例如Userlmpersonator126的實(shí)例)利
8用先前從數(shù)據(jù)庫(kù)150獲取的用戶名和口令來(lái)調(diào)用緩存管理器128,而非自己執(zhí)行登錄。緩存管理器在其緩存中搜索用于該用戶賬戶的登錄句柄,復(fù)制該句柄并將其返回給請(qǐng)求者。如果沒(méi)有找到,則調(diào)用適當(dāng)?shù)牡卿浄?wù)(例如Windows的LogonUser),緩存其結(jié)果句柄,復(fù)制該結(jié)果句柄并將其提供給請(qǐng)求者。 如上所示,緩存管理器128維護(hù)登錄句柄或者令牌的緩存,以便在服務(wù)內(nèi)容請(qǐng)求的進(jìn)程和/或線程間共享。緩存(在圖1中未示出)可包括散列表、數(shù)據(jù)庫(kù)、平面文件(flatfile)或某些其他結(jié)構(gòu)。 在本發(fā)明的一些實(shí)施方式中,緩存管理器128可以省略,在這種情況下,用戶賬戶的登錄句柄不能緩存。取而代之,Userlmpersonator 126的每個(gè)實(shí)例可直接調(diào)用適當(dāng)?shù)牡卿浌ぞ摺?在本發(fā)明的一些其他實(shí)施方式中,UserRetriever 124禾P Userlmpersonator 126任意一個(gè)或二者可以被省略或被執(zhí)行相同或相似功能的其他實(shí)體替代。在其他實(shí)施方式中,如圖1中所示的任何組件可以合并或進(jìn)一步劃分。 圖2是示出根據(jù)本發(fā)明一個(gè)實(shí)施方式的有助于來(lái)自多個(gè)客戶網(wǎng)站的動(dòng)態(tài)內(nèi)容的服務(wù)、而不允許一個(gè)客戶的內(nèi)容訪問(wèn)另 一個(gè)客戶的內(nèi)容的方法流程圖。
在操作202,瀏覽者通過(guò)他或她的瀏覽器從客戶1的網(wǎng)站(例如z. php)請(qǐng)求動(dòng)態(tài)內(nèi)容。雖然本發(fā)明所示出的方法是關(guān)于PHP腳本來(lái)描述的,但是本領(lǐng)域普通技術(shù)人員將理解,在不超出本發(fā)明范圍的情況下,如何對(duì)本方法修改至與其他類型的動(dòng)態(tài)內(nèi)容(例如ASP腳本、JSP腳本、可執(zhí)行圖像) 一起工作。 在操作204,瀏覽者的請(qǐng)求被傳遞到web服務(wù)器。在本發(fā)明的這個(gè)實(shí)施方式的示范性實(shí)現(xiàn)中,組織可以操作多個(gè)web服務(wù)器(例如,5個(gè)、10個(gè))的集群、場(chǎng)(farm)或其他協(xié)作集合,每個(gè)恥b服務(wù)器可以為組織的每個(gè)客戶(組織的客戶可能超過(guò)一萬(wàn)個(gè))提供內(nèi)容。負(fù)載均衡器、路由器或其他實(shí)體可用于在服務(wù)器間分發(fā)請(qǐng)求。 瀏覽者請(qǐng)求可以分布在任何數(shù)量的線程和/或進(jìn)程間。例如,每個(gè)請(qǐng)求將被指派給線程池中的不同線程,并且給定的進(jìn)程可以處理任意數(shù)量的線程。然而,在一個(gè)實(shí)施方式中,可使用輪詢(或其他調(diào)度方案)將瀏覽者內(nèi)容請(qǐng)求分布在多個(gè)進(jìn)程(例如100個(gè))之間。限制進(jìn)程的數(shù)量,以便最小化資源競(jìng)爭(zhēng),并提高進(jìn)程的隔離,這提高了穩(wěn)定性和安全性。這有助于確保每個(gè)瀏覽者的體驗(yàn)盡可能與其他瀏覽者的體驗(yàn)相隔離。 在操作206, web服務(wù)器上的監(jiān)聽(tīng)器聽(tīng)到請(qǐng)求,并附加用于默認(rèn)匿名用戶的安全上下文。在本發(fā)明的不同實(shí)施方式中,可以執(zhí)行不同的web服務(wù)器軟件,例如IIS、 Apache、Lighttpd、 nginx等。而且,在操作206, web服務(wù)器調(diào)用UserRetriever 124(圖1的)或其他定制ISAPI文件管理器或類似實(shí)體。 在操作208, UserRetriever過(guò)濾器在未與web服務(wù)器緊密聯(lián)系的數(shù)據(jù)庫(kù)中執(zhí)行查
找。因此,如果web服務(wù)器是IIS,查找不在相關(guān)聯(lián)的元數(shù)據(jù)庫(kù)中執(zhí)行。 更具體地,除了標(biāo)識(shí)用戶賬戶以便隔離對(duì)不同網(wǎng)站的動(dòng)態(tài)內(nèi)容的匿名訪問(wèn)之外,
數(shù)據(jù)庫(kù)還被web服務(wù)器的操作者用于其他目的。例如,數(shù)據(jù)庫(kù)可用于為客戶網(wǎng)站計(jì)費(fèi)、追蹤
通信模式等。只要web服務(wù)環(huán)境的配置改變(例如,網(wǎng)站改變其名字、增加或刪除網(wǎng)站)便
更新數(shù)據(jù)庫(kù),這引起數(shù)據(jù)庫(kù)總是反映當(dāng)前配置。 如果不使用這種分離的數(shù)據(jù)庫(kù)來(lái)標(biāo)識(shí)應(yīng)用于請(qǐng)求動(dòng)態(tài)內(nèi)容的用戶賬戶,而是使用與恥b服務(wù)器相關(guān)聯(lián)或聯(lián)系的數(shù)據(jù)庫(kù)來(lái)確定哪個(gè)用戶賬戶應(yīng)用于內(nèi)容請(qǐng)求(例如,伴隨IIS
的元數(shù)據(jù)庫(kù)),則將會(huì)發(fā)生不必需的復(fù)制。如上所述,這將使得管理恥b服務(wù)器的配置和操
作的進(jìn)程顯著地復(fù)雜化(例如,必需維持同步),并且還會(huì)引起擴(kuò)展性的問(wèn)題。 數(shù)據(jù)庫(kù)中的查找是基于所請(qǐng)求的內(nèi)容項(xiàng)目(例如,所請(qǐng)求的精確URL,與所請(qǐng)求
URL相匹配的模式),并返回用戶名和口令,該用戶名和口令將用來(lái)為請(qǐng)求的線程指派不同
的安全上下文,即與客戶l相關(guān)聯(lián)的上下文。該查找還返回所請(qǐng)求內(nèi)容的位置(例如路徑、
網(wǎng)絡(luò)地址)。 在本發(fā)明的該實(shí)施方式中,對(duì)文件管理器、文件服務(wù)器或者包含客戶內(nèi)容的其他存儲(chǔ)設(shè)備的訪問(wèn)由訪問(wèn)控制列表或操作系統(tǒng)強(qiáng)制的其他方式進(jìn)行控制。每個(gè)客戶與用戶賬戶相關(guān)聯(lián)(在數(shù)據(jù)庫(kù)中),該用戶賬戶擁有訪問(wèn)該客戶的內(nèi)容的正常安全許可,而沒(méi)有訪問(wèn)其他客戶的內(nèi)容的許可。 在查找完成之后,將線程的控制返回給web服務(wù)器。Web服務(wù)器調(diào)用與PHP腳本相關(guān)聯(lián)的定制ISAPI擴(kuò)展,在該實(shí)例中是圖1中的Userlmpersonator 126??梢詾椴煌愋偷膭?dòng)態(tài)內(nèi)容配置不同的定制ISAPI擴(kuò)展,或者可由一個(gè)定制擴(kuò)展來(lái)處理多個(gè)類型。Userlmpersonator的多個(gè)實(shí)例可以在獨(dú)立的進(jìn)程中并行執(zhí)行。 在操作210, Userlmpersonator使用所獲取的口令將用于在操作208的查找中獲得的用戶名(例如CustomerUserl)的登錄令牌附加至請(qǐng)求線程,并設(shè)置線程的上下文以匹配該用戶賬戶。 在本發(fā)明的不同實(shí)施方式中,Userlmpersonator可以通過(guò)不同的方式獲得登錄令牌或句柄。例如,圖3描述了緩存管理器(例如,圖1中的緩存管理器128)緩存登錄句柄以便在多個(gè)進(jìn)程間共享的方法。在本發(fā)明的其他實(shí)施方式中,Userlmpersonator可通過(guò)調(diào)用合適的登錄實(shí)體或服務(wù)(例如Windows的LogonUser)直接獲得登錄句柄。
在操作212,調(diào)用引擎、解釋器、解析器或能夠執(zhí)行所請(qǐng)求內(nèi)容的其他模塊,例如PHP引擎。PHP引擎獲取所請(qǐng)求的內(nèi)容(例如,使用由UserRetriever標(biāo)識(shí)的路徑),并分析和執(zhí)行該內(nèi)容。由于腳本是在所請(qǐng)求內(nèi)容的所有者所關(guān)聯(lián)的安全上下文中執(zhí)行的,所以內(nèi)容可正確地運(yùn)行,而不會(huì)有機(jī)會(huì)影響其他客戶的數(shù)據(jù)。接著,將線程的控制返回給Userlmpersonator模塊。 在操作214,剝奪模仿的安全上下文和登錄令牌,重新附加默認(rèn)的匿名用戶的上下文,該方法結(jié)束。 圖3是示出了根據(jù)本發(fā)明實(shí)施方式的在web服務(wù)器上緩存登錄句柄以供多個(gè)進(jìn)程用來(lái)服務(wù)內(nèi)容的的方法流程圖。 在操作302,在web服務(wù)器處接收針對(duì)該web服務(wù)器所托管的網(wǎng)站之一的內(nèi)容的請(qǐng)求。web服務(wù)器可以僅僅是協(xié)同工作以提升冗余和性能的多個(gè)服務(wù)器之一,但是每個(gè)服務(wù)器被配置用于為每個(gè)網(wǎng)站提供內(nèi)容。換句話說(shuō),內(nèi)容請(qǐng)求不需要被路由到配置用于僅僅服務(wù)于所有網(wǎng)站的部分內(nèi)容的特定web服務(wù)器(或服務(wù)器的子集)。 在操作304,標(biāo)識(shí)具有應(yīng)用于該請(qǐng)求的安全上下文的用戶賬戶。在一個(gè)實(shí)施方式中,可如上文結(jié)合圖2所述的那樣來(lái)標(biāo)識(shí)賬戶(例如,通過(guò)參考與web服務(wù)器分離的數(shù)據(jù)庫(kù))。 特別地,當(dāng)在web服務(wù)器處接收到請(qǐng)求時(shí),可將默認(rèn)的匿名用戶賬戶和安全上下文應(yīng)用于該請(qǐng)求,此后,可以調(diào)用定制軟件模塊以從與web服務(wù)器分離的數(shù)據(jù)庫(kù)中獲取目
標(biāo)用戶的賬戶名和口令。可為每個(gè)被服務(wù)器托管的網(wǎng)站指定不同的用戶賬戶。 在操作306,配置用于促進(jìn)內(nèi)容請(qǐng)求處理的web服務(wù)器進(jìn)程調(diào)用登錄緩存管理器,
登錄緩存管理器是在該服務(wù)器上執(zhí)行的另一個(gè)進(jìn)程。登錄緩存管理器配置用于管理用于數(shù)
據(jù)庫(kù)中標(biāo)識(shí)的各用戶賬戶的登錄句柄的緩存。調(diào)用進(jìn)程標(biāo)識(shí)自身(例如,通過(guò)進(jìn)程id),并
為其需要的登錄句柄提供用戶賬戶和口令。 在操作308,緩存管理器在其緩存中搜索與特定用戶賬戶相匹配的登錄句柄。如果其找到匹配,該方法進(jìn)行到操作314 ;否則繼續(xù)操作310。 在操作310,緩存管理器使用特定的用戶名和口令來(lái)調(diào)用操作系統(tǒng)的登錄工具或者服務(wù)。 在操作312,緩存管理器接收用于用戶賬戶的登錄句柄,并將其存儲(chǔ)在緩存中。登錄句柄在需要時(shí)可轉(zhuǎn)變?yōu)槔缯麛?shù)值。 在操作314,針對(duì)調(diào)用進(jìn)程提供的進(jìn)程id,緩存管理器使用由操作系統(tǒng)提供的工
具或服務(wù)(例如,Windows的DuplicateHandle)為指定的用戶賬戶復(fù)制登錄句柄。 在操作316,緩存管理器將登錄句柄傳送給調(diào)用進(jìn)程。在一個(gè)實(shí)現(xiàn)中,緩存管理器
和調(diào)用進(jìn)程通過(guò)指定的管道通信,當(dāng)然,在其他實(shí)現(xiàn)中,可以使用進(jìn)程間通信的其他方法。 在操作318,調(diào)用進(jìn)程將復(fù)制的登錄句柄或令牌附加到與內(nèi)容請(qǐng)求相關(guān)聯(lián)的線程
上。進(jìn)程接著繼續(xù)分解該請(qǐng)求,或者在需要時(shí)將其傳遞到另一個(gè)實(shí)體(例如,如果內(nèi)容包括
腳本,則該實(shí)體是配置用于獲取并執(zhí)行內(nèi)容的腳本引擎)。 在本發(fā)明的一些實(shí)施方式中,在請(qǐng)求被終止之前,從該請(qǐng)求剝奪目標(biāo)用戶賬戶的安全上下文和登錄句柄。 圖4描繪了根據(jù)本發(fā)明一個(gè)實(shí)施方式的用于將針對(duì)登錄句柄的請(qǐng)求傳遞到登錄緩存管理器的數(shù)據(jù)結(jié)構(gòu)。在該實(shí)施方式中,登錄句柄請(qǐng)求結(jié)構(gòu)410包括版本412、大小字段414、416、418、進(jìn)程id 424、目標(biāo)用戶名426和目標(biāo)口令428。 進(jìn)程id 424標(biāo)識(shí)已經(jīng)向登錄緩存管理器提交了登錄句柄請(qǐng)求的進(jìn)程,目標(biāo)用戶名426標(biāo)識(shí)已經(jīng)為其請(qǐng)求了登錄句柄的用戶賬戶,目標(biāo)口令是用戶賬戶的口令,登錄緩存管理器可能需要該目標(biāo)口令來(lái)登錄該賬戶(如果用于賬戶的登錄句柄當(dāng)前沒(méi)有被緩存)。大小字段414、416和418分別識(shí)別數(shù)據(jù)字段424、426和428的大小。 本領(lǐng)域技術(shù)人員可以理解,在不超出當(dāng)前發(fā)明范圍的情況下,可開(kāi)發(fā)具有其他形式的數(shù)據(jù)結(jié)構(gòu)以促進(jìn)登錄句柄的緩存和共享。 本發(fā)明的當(dāng)前實(shí)施方式所示范性地執(zhí)行的程序環(huán)境,結(jié)合了通常意義上的計(jì)算機(jī)或者特定意義的設(shè)備例如手持計(jì)算機(jī)。為了清楚起見(jiàn),可省略這些設(shè)備(例如處理器、存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)設(shè)備、顯示器)的詳細(xì)說(shuō)明。 還可以理解,可使用各種技術(shù)實(shí)現(xiàn)本發(fā)明的技術(shù)。例如,可在計(jì)算機(jī)系統(tǒng)上執(zhí)行的軟件中,或在硬件中,或者在它們的各種結(jié)合中實(shí)現(xiàn)此處描述的方法,其中該硬件可使用微處理器或其他特殊設(shè)計(jì)的特定應(yīng)用集成電路、可編程邏輯設(shè)備的結(jié)合。 特別地,可使用數(shù)據(jù)結(jié)構(gòu)和駐留在合適的計(jì)算機(jī)可讀介質(zhì)上的程序代碼實(shí)現(xiàn)此處描述的方法,其可為存儲(chǔ)數(shù)據(jù)和/或計(jì)算機(jī)系統(tǒng)使用的代碼的任何設(shè)備或介質(zhì)。這包括,但不限于,易失性存儲(chǔ)器、非易失性存儲(chǔ)器、磁的和光存儲(chǔ)設(shè)備例如磁盤(pán)驅(qū)動(dòng)器、磁帶、CD(光盤(pán))、DVD(數(shù)字化通用光盤(pán)或數(shù)字化視頻光盤(pán))、已知的或之后開(kāi)發(fā)的可以存儲(chǔ)計(jì)算機(jī)可讀 介質(zhì)的其他介質(zhì)。 僅僅為了示出和描述的目的,介紹了本發(fā)明的前述實(shí)施方式。它們不是無(wú)遺漏的 或試圖將本發(fā)明限制于所公開(kāi)的形式。因此,由所附權(quán)利要求而非前述公開(kāi)的來(lái)定義本發(fā) 明的范圍。
1權(quán)利要求
一種模仿與網(wǎng)站相關(guān)聯(lián)的用戶賬戶以服務(wù)來(lái)自所述網(wǎng)站的內(nèi)容的自動(dòng)方法,所述方法包括在web服務(wù)器處接收針對(duì)第一網(wǎng)站的內(nèi)容的請(qǐng)求;將所述請(qǐng)求與所述web服務(wù)器上的默認(rèn)匿名用戶賬戶相關(guān)聯(lián);在與所述web服務(wù)器分離的數(shù)據(jù)庫(kù)中,標(biāo)識(shí)與所述第一網(wǎng)站相對(duì)應(yīng)的第一用戶賬戶,其中所述第一用戶賬戶配置有訪問(wèn)所述第一網(wǎng)站的內(nèi)容的許可,但是沒(méi)有訪問(wèn)第二網(wǎng)站的內(nèi)容的許可;搜索用于所述第一用戶賬戶的已緩存的登錄句柄;將所述請(qǐng)求與所述第一用戶賬戶而非所述默認(rèn)匿名用戶賬戶相關(guān)聯(lián);服務(wù)所請(qǐng)求的內(nèi)容;以及將所述請(qǐng)求與所述默認(rèn)匿名用戶賬戶而非所述第一用戶賬戶重新關(guān)聯(lián)。
2. 如權(quán)利要求1的方法,其中 所請(qǐng)求的內(nèi)容包括動(dòng)態(tài)內(nèi)容;以及所述服務(wù)包括調(diào)用被配置用于執(zhí)行所述動(dòng)態(tài)內(nèi)容的實(shí)體。
3 如權(quán)利要求1的方法,其中所述將所述請(qǐng)求與默認(rèn)匿名用戶賬戶相關(guān)聯(lián)包括將用 于如下用戶賬戶的登錄句柄附加至所述請(qǐng)求,其中,基本上針對(duì)內(nèi)容的所有匿名請(qǐng)求都在 該用戶賬戶下登錄。
4. 如權(quán)利要求l的方法,其中所述數(shù)據(jù)庫(kù)包括用于管理所述web服務(wù)器的操作的信息, 以及用于將給定網(wǎng)站內(nèi)容映射到用于訪問(wèn)所述給定網(wǎng)站內(nèi)容的給定用戶賬戶的信息。
5. 如權(quán)利要求4的方法,其中所述信息包括去往所請(qǐng)求內(nèi)容的路徑。
6. 如權(quán)利要求4的方法,其中所述信息包括以下一個(gè)或多個(gè) 記賬數(shù)據(jù);服務(wù)提供信息;網(wǎng)站的屬性;以及網(wǎng)站的使用統(tǒng)計(jì)。
7. 如權(quán)利要求1的方法,其中數(shù)據(jù)庫(kù)不是利用因特網(wǎng)信息服務(wù)軟件來(lái)實(shí)現(xiàn)的元數(shù)據(jù)庫(kù)。
8. 如權(quán)利要求1的方法,其中搜索已緩存的登錄句柄包括調(diào)用登錄緩存管理器,其配置用于緩存登錄句柄,以便在所述恥b服務(wù)器上執(zhí)行的多 個(gè)過(guò)程間共享,從而服務(wù)內(nèi)容;以及 在所述登錄緩存管理器處在緩存中搜索用于所述第一用戶賬戶的登錄句柄; 如果對(duì)所述緩存的所述搜索失敗,則作為所述第一用戶賬戶登錄; 復(fù)制用于所述第一用戶賬戶的所述登錄句柄;以及 返回復(fù)制的登錄句柄;
9. 如權(quán)利要求1的方法,其中所述將請(qǐng)求與第一用戶賬戶相關(guān)聯(lián)包括將登錄句柄附著 在與該請(qǐng)求相關(guān)聯(lián)的執(zhí)行的線程上。
10. 如權(quán)利要求1的方法,其中所述搜索被緩存的登錄句柄包括向登錄緩存管理器傳輸用于第一用戶賬戶的登錄句柄請(qǐng)求;以及上述對(duì)登錄句柄的請(qǐng)求包括第一用戶賬戶的名字、用于第一用戶賬戶的口令和為登錄 句柄發(fā)出所述請(qǐng)求的進(jìn)程的標(biāo)識(shí)符。
11. 如權(quán)利要求1的方法,其中將所述請(qǐng)求與所述默認(rèn)匿名用戶賬戶重新關(guān)聯(lián)包括從 所述請(qǐng)求剝奪用于所述第一用戶賬戶的所述登錄句柄。
12. —種存儲(chǔ)有指令的計(jì)算機(jī)可讀介質(zhì),當(dāng)由計(jì)算機(jī)執(zhí)行時(shí),使得計(jì)算機(jī)執(zhí)行模仿與網(wǎng) 站相關(guān)聯(lián)的用戶賬戶以服務(wù)來(lái)自所述網(wǎng)站的內(nèi)容的方法,所述方法包括在恥b服務(wù)器處接收針對(duì)第一網(wǎng)站的內(nèi)容的請(qǐng)求; 將所述請(qǐng)求與所述web服務(wù)器上的默認(rèn)匿名用戶賬戶相關(guān)聯(lián);在與所述web服務(wù)器分離的數(shù)據(jù)庫(kù)中,標(biāo)識(shí)與所述第一網(wǎng)站相對(duì)應(yīng)的第一用戶賬戶, 其中所述第一用戶賬戶配置有訪問(wèn)所述第一網(wǎng)站的內(nèi)容的許可,但是沒(méi)有訪問(wèn)第二網(wǎng)站的 內(nèi)容的許可;搜索用于所述第一用戶賬戶的已緩存的登錄句柄;將所述請(qǐng)求與所述第一用戶賬戶而非所述默認(rèn)匿名用戶賬戶相關(guān)聯(lián);服務(wù)所請(qǐng)求的內(nèi)容;以及將所述請(qǐng)求與所述默認(rèn)匿名用戶賬戶而非所述第一用戶賬戶重新關(guān)聯(lián)。
13. —種計(jì)算機(jī)服務(wù)器,配置用于服務(wù)來(lái)自多個(gè)網(wǎng)站的動(dòng)態(tài)內(nèi)容,所述服務(wù)器包括 web服務(wù)器軟件,其配置用于接收針對(duì)來(lái)自第一網(wǎng)站的動(dòng)態(tài)內(nèi)容的請(qǐng)求,并將默認(rèn)匿名用戶賬戶與所述請(qǐng)求相關(guān)聯(lián);web服務(wù)器過(guò)濾器,其配置用于在與所述web服務(wù)器分離的數(shù)據(jù)庫(kù)中標(biāo)識(shí)用于訪問(wèn)來(lái) 自所述第一網(wǎng)站的內(nèi)容的定制用戶賬戶;web服務(wù)器擴(kuò)展,其配置用于從緩存管理器請(qǐng)求用于所述定制用戶賬戶的登錄句柄; 將所述登錄句柄附加至針對(duì)所述動(dòng)態(tài)內(nèi)容的所述請(qǐng)求;以及 在所請(qǐng)求的所述動(dòng)態(tài)內(nèi)容被執(zhí)行之后,從所述請(qǐng)求中移除所述登錄句柄。
14. 如權(quán)利要求13的服務(wù)器,其中所述緩存管理器進(jìn)一步配置用于 接收針對(duì)所述登錄句柄的請(qǐng)求; 在緩存中搜索所述登錄句柄;如果對(duì)所述緩存的所述搜索未成功,則作為所述定制用戶賬戶登錄; 復(fù)制所述登錄句柄;以及將復(fù)制的登錄句柄返回給所述web服務(wù)器擴(kuò)展。
15. 如權(quán)利要求14的服務(wù)器,其中針對(duì)所述登錄句柄的所述請(qǐng)求包括 所述定制用戶賬戶的名字;所述定制用戶賬戶的口令;以及 所述web服務(wù)器擴(kuò)展的進(jìn)程標(biāo)識(shí)符。
16. 如權(quán)利要求13的服務(wù)器,其中所述緩存管理器緩存所述登錄句柄,以供所述web服 務(wù)器上執(zhí)行的所述恥b服務(wù)器擴(kuò)展的多個(gè)實(shí)例使用。
17. 如權(quán)利要求13的服務(wù)器,進(jìn)一步包括與所述數(shù)據(jù)庫(kù)的連接,其中所述數(shù)據(jù)庫(kù)不是 被配置用于利用因特網(wǎng)信息服務(wù)軟件進(jìn)行操作的元數(shù)據(jù)庫(kù)。
18.如權(quán)利要求13的服務(wù)器,其中所述數(shù)據(jù)庫(kù)包括用于促進(jìn)所述web服務(wù)器管理的信 息,以及用于將所請(qǐng)求的動(dòng)態(tài)內(nèi)容映射到所述定制用戶賬戶的信息。
全文摘要
本發(fā)明涉及利用緩存的登錄對(duì)WEB服務(wù)器上動(dòng)態(tài)內(nèi)容的隔離匿名訪問(wèn)。具體地,提供了用于對(duì)web服務(wù)器所托管的多個(gè)網(wǎng)站上的動(dòng)態(tài)內(nèi)容進(jìn)行隔離訪問(wèn)的系統(tǒng)和方法。當(dāng)從網(wǎng)站接收針對(duì)動(dòng)態(tài)內(nèi)容的請(qǐng)求時(shí),UserRetriever模塊從與web服務(wù)器分離、并用于其他目的(例如記賬)的數(shù)據(jù)庫(kù)中標(biāo)識(shí)去往該內(nèi)容的路徑,并獲取與網(wǎng)站相對(duì)應(yīng)的用戶名和口令。UserImpersonator模塊從登錄緩存管理器中請(qǐng)求用于該用戶名的登錄句柄。使用該登錄句柄將請(qǐng)求與模仿的用戶賬戶而非請(qǐng)求最初所關(guān)聯(lián)的默認(rèn)匿名用戶賬戶相關(guān)聯(lián)。在受限模仿用戶賬戶會(huì)話的上下文中獲取和服務(wù)動(dòng)態(tài)內(nèi)容,此后,剝奪所應(yīng)用的登錄句柄,并且將請(qǐng)求與默認(rèn)匿名用戶賬戶重新關(guān)聯(lián)。
文檔編號(hào)H04L29/08GK101729597SQ200910221478
公開(kāi)日2010年6月9日 申請(qǐng)日期2009年9月29日 優(yōu)先權(quán)日2008年10月17日
發(fā)明者B·C·??怂?申請(qǐng)人:因特偉特公司