專利名稱:邊緣服務(wù)器http post消息處理的制作方法
技術(shù)領(lǐng)域:
本公開總地涉及分布式網(wǎng)絡(luò)中的服務(wù)器處的事務(wù)處理。
背景技術(shù):
分布式計算機(jī)系統(tǒng)在現(xiàn)有技術(shù)中是眾所周知的。一種這樣的分布式計算機(jī)系統(tǒng)是由服務(wù)提供商操作并管理的“內(nèi)容分發(fā)網(wǎng)絡(luò)”或“CDN”。服務(wù)提供商通常代表第三方提供內(nèi)容分發(fā)服務(wù)。這種類型的“分布式系統(tǒng)”通常是指通過一個網(wǎng)絡(luò)或多個網(wǎng)絡(luò)鏈接的一群自治計算機(jī),連同被設(shè)計為便于各種服務(wù)(諸如內(nèi)容分發(fā)或者外包網(wǎng)站基礎(chǔ)設(shè)施的支持)的軟件、系統(tǒng)、協(xié)議和技術(shù)。通常,“內(nèi)容分發(fā)”意指代表內(nèi)容提供商對內(nèi)容、流媒體和應(yīng)用的存·儲、高速緩存或傳送,包括與其一起使用的輔助技術(shù),所述輔助技術(shù)包括但不限于DNS查詢處理、預(yù)配置(provisioning)、數(shù)據(jù)監(jiān)視和報告、內(nèi)容目標(biāo)化、個性化和商業(yè)智能。期望為CDN客戶提供可利用這種類型的分布式網(wǎng)絡(luò)的可伸縮性、可用性和可靠性的一種或多種“邊緣”服務(wù)。
發(fā)明內(nèi)容
如本文所述,通過邊緣服務(wù)器消息處理方法和裝置來提供幾種增強(qiáng)型“邊緣服務(wù)”。根據(jù)本公開,CDN邊緣服務(wù)器進(jìn)程接收HTTP消息,關(guān)于該消息采取給定動作,然后將該消息的修改版本轉(zhuǎn)發(fā)到目標(biāo)服務(wù)器(典型地,與CDN客戶相關(guān)聯(lián)的服務(wù)器)。邊緣服務(wù)器進(jìn)程可包括相關(guān)聯(lián)的便于給定動作的中間處理代理(IPA)或子處理線程。邊緣服務(wù)器進(jìn)程接收控制所述處理的配置數(shù)據(jù)(稱之為元數(shù)據(jù))。在說明性實施例中,所述消息是HTTP POST,并且所述給定動作包括以下動作(i)識別POST ;(ii)從POST移除給定數(shù)據(jù);(iii)對另一進(jìn)程(比如,第三方服務(wù)器)發(fā)出將從POST移除的給定數(shù)據(jù)傳遞給該進(jìn)程的中間(或次級)請求;(iv)接收對該中間請求的響應(yīng);(V)將從該響應(yīng)接收的或者與該響應(yīng)相關(guān)聯(lián)的數(shù)據(jù)合并到新的HTTP消息中;以及(Vi)將該新的HTTP消息轉(zhuǎn)發(fā)到目標(biāo)服務(wù)器上。以這種方式,當(dāng)HTTP消息在它從客戶端到目標(biāo)服務(wù)器(諸如商戶)的途中“通過”邊緣服務(wù)器時,POST中的給定數(shù)據(jù)可受到保護(hù)。該技術(shù)具有保護(hù)或增強(qiáng)HTTP POST消息體內(nèi)的數(shù)據(jù)的效果,因為該P(yáng)OST遍歷邊緣服務(wù)器。在一個實施例中,邊緣服務(wù)器進(jìn)程使用該“帶外”處理來(從第三方“進(jìn)程”)接收句柄或“現(xiàn)時(nonce)”,該句柄或“現(xiàn)時”然后代替期望受到保護(hù)(以免于被傳遞到商戶web應(yīng)用)的數(shù)據(jù)安置在HTTP POST消息體中。該置換具有使期望受到“保護(hù)”的POST消息體內(nèi)的數(shù)據(jù)混亂的效果。在另一實施例中,不必移除HTTP POST消息體內(nèi)的數(shù)據(jù),而是例如通過檢查現(xiàn)有數(shù)據(jù)并添加導(dǎo)出值(諸如基于該數(shù)據(jù)的欺詐風(fēng)險評分、對照便于跨供應(yīng)商訂購的部件編號數(shù)據(jù)庫查找POST體中的值的結(jié)果等)來“增強(qiáng)”該數(shù)據(jù)。前面概述了本發(fā)明的更多相關(guān)特征中的一些。這些特征應(yīng)被解釋為僅僅是說明性的。許多其它有益結(jié)果可通過如將描述的那樣修改本發(fā)明或者通過以不同的方式應(yīng)用所公開的本發(fā)明來實現(xiàn)。
圖I描繪了可實現(xiàn)說明性實施例的示例性方面的分布式計算機(jī)系統(tǒng)環(huán)境的示例性框圖;圖2是可實現(xiàn)所公開的主題的邊緣服務(wù)器機(jī)器的示例性框圖;圖3是示出根據(jù)本公開的技術(shù)的HTTP請求的處理的框圖;和圖4示出如何使用圖3中的邊緣服務(wù)器處理來便于邊緣令牌化(tokenization)操作。
具體實施例方式在諸如圖I所示的已知系統(tǒng)中,分布式計算機(jī)系統(tǒng)100被配置為⑶N,并被假設(shè)具有圍繞互聯(lián)網(wǎng)分布的一組機(jī)器102a-n。通常,這些機(jī)器中的大多數(shù)機(jī)器是位于互聯(lián)網(wǎng)邊緣附近(即,位于端用戶接入網(wǎng)絡(luò)處或者鄰近端用戶接入網(wǎng)絡(luò))的服務(wù)器。網(wǎng)絡(luò)操作命令中心(N0CC)104管理系統(tǒng)中的各種機(jī)器的操作。第三方站點(諸如網(wǎng)站106)將內(nèi)容(比如,HTML、嵌入式頁面對象、流媒體、軟件下載等)的分發(fā)卸載到分布式計算機(jī)系統(tǒng)100 (具體地講,“邊緣”服務(wù)器)。通常,通過(例如,利用DNS CNAME)將給定內(nèi)容提供商域或子域化名為由服務(wù)提供商的權(quán)威域名服務(wù)管理的域,內(nèi)容提供商卸載他們的內(nèi)容分發(fā)。希望得到內(nèi)容的端用戶被引導(dǎo)到分布式計算機(jī)系統(tǒng),以更可靠地、更有效地獲得該內(nèi)容。雖然沒有詳細(xì)顯示,但是分布式計算機(jī)系統(tǒng)還可包括其它基礎(chǔ)設(shè)施,諸如分布式數(shù)據(jù)收集系統(tǒng)108,該分布式數(shù)據(jù)收集系統(tǒng)108從邊緣服務(wù)器收集使用情況和其它數(shù)據(jù),聚集一個區(qū)域或一組區(qū)域上的該數(shù)據(jù),并將該數(shù)據(jù)傳遞到其它后端系統(tǒng)110、112、114和116以便于監(jiān)視、記錄、報警、計費、管理以及其它操作和管理功能。分布式網(wǎng)絡(luò)代理118監(jiān)視網(wǎng)絡(luò)以及服務(wù)器負(fù)載,并將網(wǎng)絡(luò)、流量和負(fù)載數(shù)據(jù)提供給DNS查詢處理機(jī)制115,DNS查詢處理機(jī)制115對由⑶N管理的內(nèi)容域是權(quán)威的。分布式數(shù)據(jù)傳輸機(jī)制120可用于將控制信息(比如,管理內(nèi)容、便于負(fù)載均衡等的元數(shù)據(jù))分布到邊緣服務(wù)器。如圖2所示,給定機(jī)器200包括商用硬件(比如,英特爾奔騰處理器)202,該商用硬件202運(yùn)行支持一個或多個應(yīng)用206a-n的操作系統(tǒng)內(nèi)核(諸如Linux或變型)204。為了便于內(nèi)容分發(fā)服務(wù),例如,給定機(jī)器通常運(yùn)行一組應(yīng)用,諸如HTTP代理者(proxy) 207 (有時稱之為“全局主機(jī)”進(jìn)程)、名稱服務(wù)器208、本地監(jiān)視進(jìn)程210、分布式數(shù)據(jù)收集進(jìn)程212等。關(guān)于流媒體,所述機(jī)器通常包括支持的媒體格式所需的一個或多個媒體服務(wù)器(諸如Windows媒體服務(wù)器(WMS)或Flash服務(wù)器)。⑶N邊緣服務(wù)器被配置為提供一個或多個擴(kuò)展的內(nèi)容分發(fā)特征,優(yōu)選地在域特定、客戶特定的基礎(chǔ)上,優(yōu)選地通過使用利用配置系統(tǒng)而被分布到邊緣服務(wù)器的配置文件。給定配置文件優(yōu)選地是基于XML的,并包括便于一個或多個高級內(nèi)容處理特征的一套內(nèi)容處理規(guī)則和指示??赏ㄟ^數(shù)據(jù)傳輸機(jī)制將配置文件分發(fā)給⑶N邊緣服務(wù)器。美國專利No. 7,111, 057示出了用于分發(fā)并管理邊緣服務(wù)器內(nèi)容控制信息的有用基礎(chǔ)設(shè)施,并且該邊緣服務(wù)器控制信息和其它邊緣服務(wù)器控制信息可由CDN服務(wù)提供商自己或者操作源服務(wù)器的內(nèi)容提供商客戶(通過外聯(lián)網(wǎng)等)供給。⑶N可包括諸如美國專利No. 7,472,178中所述的存儲子系統(tǒng),該專利的公開通過弓I用并入本文。CDN可操作服務(wù)器高速緩存層次結(jié)構(gòu)(hierarchy)來提供客戶內(nèi)容的中間高速緩存;一種這樣的高速緩存層次結(jié)構(gòu)子系統(tǒng)在美國專利No. 7,376,716中被描述,該專利的公開通過引用并入本文。⑶N可以按照美國公布No. 20040093419中所述的方式提供客戶端瀏覽器、邊緣服務(wù)器與客戶源服務(wù)器之間的安全內(nèi)容分發(fā)。如其中所述的那樣的安全內(nèi)容分發(fā)一方面實施客戶端與邊緣服務(wù)器進(jìn)程之間的基于SSL的鏈接,另一方面,實施邊緣服務(wù)器進(jìn)程與源服務(wù)器進(jìn)程之間的基于SSL的鏈接。這使得SSL保護(hù)的網(wǎng)頁和/或其組件能夠通過邊緣服務(wù)器被分發(fā)。HTTP POST 消息處理 現(xiàn)在將以上作為背景來描述本公開的主題。根據(jù)本公開的一方面,⑶N邊緣服務(wù)器進(jìn)程接收HTTP消息,關(guān)于該消息采取給定動作,然后將該消息的修改版本轉(zhuǎn)發(fā)到目標(biāo)服務(wù)器(通常是與CDN客戶相關(guān)聯(lián)的服務(wù)器)。該進(jìn)程可包括便于給定動作的相關(guān)聯(lián)的中間處理代理(IPA)或子處理線程,但是這不是嚴(yán)格需要的。優(yōu)選地,該進(jìn)程接收控制HTTP消息的處理的配置數(shù)據(jù)(稱之為元數(shù)據(jù))。在一個實施例中,所述消息是HTTP POST,并且所述給定動作包括以下動作(i)識別P0ST;(ii)從POST移除給定數(shù)據(jù);(iii)向另一進(jìn)程(比如,第三方服務(wù)器)發(fā)出將從POST移除的給定數(shù)據(jù)傳遞給該進(jìn)程的中間(或次級)請求;(iv)接收對該中間請求的響應(yīng);(V)將從該響應(yīng)接收的或者與該響應(yīng)相關(guān)聯(lián)的數(shù)據(jù)合并到新的HTTP消息中;以及(Vi)將該新的HTTP消息轉(zhuǎn)發(fā)到目標(biāo)服務(wù)器上。以這種方式,當(dāng)HTTP消息在它從客戶端到目標(biāo)(商戶)服務(wù)器的途中“通過”邊緣服務(wù)器時,POST中的給定數(shù)據(jù)可受到保護(hù)。圖3示出了該處理。在該實施例中,所述技術(shù)具有使HTTP POST消息體內(nèi)的數(shù)據(jù)混亂或模糊的效果,因為該P(yáng)OST穿過邊緣服務(wù)器。具體地講,邊緣服務(wù)器進(jìn)程使用該“帶外”處理來(從第三方“進(jìn)程”)接收句柄或“現(xiàn)時”,該句柄或“現(xiàn)時”然后代替期望受到保護(hù)(以免于被傳遞到商戶web應(yīng)用)的數(shù)據(jù)安置在HTTP POST消息體中。該方法的應(yīng)用是基于邊緣的“令牌化”,在所述基于邊緣的“令牌化”中,從SSL保護(hù)的網(wǎng)頁(比如,通過⑶N分發(fā)的、來自電子商務(wù)網(wǎng)站的商戶結(jié)賬頁面)產(chǎn)生HTTP POST,并且中間請求將信用卡(CC)卡號傳遞給第三方支付網(wǎng)關(guān)。在這種情況下,從中間請求接收的數(shù)據(jù)是令牌,該令牌然后被放置在被傳遞給商戶源服務(wù)器(具體地講,在其上執(zhí)行的網(wǎng)上訂單管理應(yīng)用)的HTTP請求中。圖4示出了用于邊緣服務(wù)器400的這個處理。在該實施例中,商戶源服務(wù)器402操作訂單管理系統(tǒng),所述訂單管理系統(tǒng)為SSL保護(hù)的訂單管理頁面服務(wù)。在該服務(wù)器上執(zhí)行的訂單管理應(yīng)用是用于在邊緣服務(wù)器從端用戶客戶端瀏覽器接收的HTTP POST消息(具體地講,具有用于填充HTTP POST消息的一個或多個填入字段的SSL保護(hù)的網(wǎng)頁)的目標(biāo)應(yīng)用。在這個例子中,與邊緣服務(wù)器通信的外部進(jìn)程是支付網(wǎng)關(guān)404,支付網(wǎng)關(guān)404通常由第三方實體管理。如所述的那樣,邊緣服務(wù)器截獲HTTP POST,對數(shù)據(jù)進(jìn)行解析,將提取的數(shù)據(jù)傳遞給支付網(wǎng)關(guān)404,支付網(wǎng)關(guān)404使用其相關(guān)聯(lián)的網(wǎng)關(guān)數(shù)據(jù)庫來產(chǎn)生令牌。該令牌被從網(wǎng)關(guān)返回給邊緣服務(wù)器,邊緣服務(wù)器將令牌包括回到HTTP POST中,并將修改的POST送到訂單管理應(yīng)用。訂單管理應(yīng)用然后可直接與網(wǎng)關(guān)通信,傳遞令牌,并接收授權(quán)。該后面的操作在邊緣服務(wù)器的外部進(jìn)行,并且是已知的功能。與只是保護(hù)消息中的數(shù)據(jù)(使其模糊)相反,HTTP POST消息處理技術(shù)還可被用于“增強(qiáng)”消息中的數(shù)據(jù)。在該方法中,對POST消息中的數(shù)據(jù)進(jìn)行檢查。至少部分地基于該檢查,可能通過包括整個地或部分地從POST中的數(shù)據(jù)導(dǎo)出的值來“增強(qiáng)”數(shù)據(jù)。作為一個例子,基于邊緣的“欺詐”檢測服務(wù)可以跨邊緣服務(wù)器地實現(xiàn)。代表性邊緣服務(wù)器然后將執(zhí)行以下操作HTTP POST掃描,比如對欺詐平臺“進(jìn)程”的基于IPA的轉(zhuǎn)發(fā)請求,接收響應(yīng)(t匕如,風(fēng)險評分),以及(風(fēng)險評分)注入到原始POST,其然后被傳遞給目標(biāo)(商戶)服務(wù)器(應(yīng)用)。這是“增強(qiáng)”HTTP POST數(shù)據(jù)的例子,具體地講,通過檢查(POST中的)現(xiàn)有數(shù)據(jù)并添加導(dǎo)出值來“增強(qiáng)”HTTP POST數(shù)據(jù)的例子。欺詐評分實施例僅僅是“增強(qiáng)”技術(shù)的代表性例子。另一個例子將是跨供應(yīng)商訂 購服務(wù),在這種情況下,導(dǎo)出值可基于對照外部的部件編號數(shù)據(jù)庫對POST體中的值的查找等。該方法的具體應(yīng)用因此可相當(dāng)不同。在邊緣服務(wù)器進(jìn)程(或者IPA (如果使用的話))與外部進(jìn)程通信的情況下,通信可以通過SSL、經(jīng)由web服務(wù)等。另一種可替換方案是基于邊緣的加密,其中,當(dāng)HTTP消息通過邊緣服務(wù)器時,用密鑰對HTTP消息中的給定字段進(jìn)行加密(或者,如果已經(jīng)被加密,則對該字段進(jìn)行解密)。優(yōu)選地,使用元數(shù)據(jù)來將邊緣服務(wù)器進(jìn)程配置為提供這些邊緣服務(wù)功能中的一個或多個。上述處理可通過使用SSL (或者其等同形式)的通信鏈路進(jìn)行。因為上述技術(shù)可以以其它HTTP消息格式(諸如GET、PUT等)實現(xiàn),所以被處理的HTTP消息不一定限于POST。 現(xiàn)在描述這些服務(wù)之一(基于邊緣的令牌化)的說明性例子。這個例子不應(yīng)以限制的方式來看待。下面提供邊緣令牌化服務(wù)的代表性實現(xiàn)的附加技術(shù)細(xì)節(jié)。如以上所指出的,該服務(wù)僅僅是代表性的。模塊概要一般地,令牌化模塊(操作)用由第三方支付網(wǎng)關(guān)供給的匿名“令牌”來取代電子商務(wù)交易中的卡號。這降低了我們商戶客戶的卡號暴露的風(fēng)險,并可幫助從PCI范圍得到商戶的網(wǎng)站。一般地,令牌化是使⑶N邊緣服務(wù)器執(zhí)行以下操作的能力I.識別包含卡號的客戶網(wǎng)頁的POST2.搜索POST數(shù)據(jù)體來檢索卡號3.向支付網(wǎng)關(guān)令牌化API作出web服務(wù)調(diào)用,傳遞卡號、商戶標(biāo)識符以及網(wǎng)關(guān)API所需的其它信息4.收回來自支付網(wǎng)關(guān)API的回復(fù)中的令牌5.用令牌取代POST體中的卡號6.將修改的POST請求轉(zhuǎn)發(fā)到源web應(yīng)用7.保護(hù)存儲器中的卡號;不將它寫入盤
如本文中所使用的,“卡號”意指可被令牌取代的任何PCI敏感數(shù)據(jù),例如信用卡卡號或借記卡卡號、銀行賬號等。令牌和它所代表的卡號被安全地存儲在由支付網(wǎng)關(guān)提供商管理的數(shù)據(jù)倉庫中。無需總是使用第三方支付網(wǎng)關(guān)?!傲钆啤碑a(chǎn)生(或者,更一般地,由中間或次級請求的目標(biāo)執(zhí)行的處理)在合適的環(huán)境下可由CDN執(zhí)行。高層次設(shè)計令牌賦予器(tokenizer)使用POST請求解析器、中間處理代理(IPA),并添加用于IPA到POST (優(yōu)選地通過SSL)的能力、客戶端POST體修改、錯誤處理、記錄和報告。圖3示出了典型的請求流程處理。注意,所述模塊訪問能夠個人地標(biāo)識的信息(消費者姓名、卡號、家庭地址等)。優(yōu)選地,邊緣服務(wù)器進(jìn)程不將任何PII寫入盤(用于記錄、計費或其它目的)。 所述模塊優(yōu)選地提供對用于訪問支付網(wǎng)關(guān)的認(rèn)證符的客戶控制。這個版本的模塊中的元數(shù)據(jù)配置管理的大部分(bulk)通過元數(shù)據(jù)來進(jìn)行定制。在可替換實施例中,可為客戶自助服務(wù)提供基于模板的配置管理。下面的章節(jié)介紹對于實現(xiàn)邊緣令牌化的組件和進(jìn)程的高層次設(shè)計。I. I客戶整合和配置管理基于邊緣的令牌化整合和配置管理(預(yù)配置)優(yōu)選地通過客戶(安全外聯(lián)網(wǎng)門戶)配置應(yīng)用來進(jìn)行。如下所述,元數(shù)據(jù)提供從POST體提取持卡人數(shù)據(jù)、對支付網(wǎng)關(guān)產(chǎn)生中間請求并修改轉(zhuǎn)發(fā)POST事務(wù)的界面。該元數(shù)據(jù)的使用加上令牌化標(biāo)簽構(gòu)成這個模塊的激活。I. I. I支付網(wǎng)關(guān)整合向支付網(wǎng)關(guān)的令牌化請求取決于可從網(wǎng)關(guān)提供商獲得的API。在最低限度,解決方案用key=value pairs的文本回復(fù)或XML文檔回復(fù)來支持HTTPS POST請求。網(wǎng)關(guān)接口可以通過使用HTTP頭中的HTTP基本認(rèn)證證書或者作為key=P0ST體中的值來受到密碼保護(hù)。如果網(wǎng)關(guān)將允許它,則邊緣機(jī)器可安全地被支付網(wǎng)關(guān)認(rèn)證。這避免了商戶必須與CDN服務(wù)提供商共享其支付網(wǎng)關(guān)證書。I. I. 2商戶整合從POST體提取的字段取決于商戶的購物的卡或訂單處理軟件。語法和語義通過商戶的元數(shù)據(jù)配置中的元數(shù)據(jù)來進(jìn)行管理。以下闡述示例性元數(shù)據(jù)。支付網(wǎng)關(guān)要求商戶標(biāo)識和認(rèn)證(經(jīng)常是商戶的用戶名和密碼)。對于商戶的網(wǎng)關(guān)賬戶的這些證書對安全性是敏感的,優(yōu)選地,不以明文被存儲在元數(shù)據(jù)中。相反,邊緣服務(wù)器進(jìn)程優(yōu)選地通過密鑰管理基礎(chǔ)設(shè)施來檢索證書,以防止它們可用明碼獲得。商戶認(rèn)證符(以及所需的任何其它秘密)優(yōu)選地通過門戶配置管理接口來進(jìn)行管理,以防止客戶必須通過電子郵件或其它機(jī)制將秘密發(fā)送到CDN雇員。被配置用于邊緣令牌化的任何支付交易將被授權(quán)以使用商戶的證書來訪問支付網(wǎng)關(guān)。I. 2邊緣服務(wù)器行為邊緣令牌化權(quán)衡利用(leverage)邊緣進(jìn)程內(nèi)的中間處理代理(IPA)特征來與支付網(wǎng)關(guān)API交互。對于支付網(wǎng)關(guān)的POST的構(gòu)造足夠靈活從而使得可整合新的支付處理器,而無需改變代碼。
下面提供邊緣服務(wù)器特征的高層次設(shè)計。I. 2. I相關(guān)邊緣服務(wù)器進(jìn)程功能的概要 將URL編碼的POST體中的值提取到變量中。 修改IPA,以使得它可通過SSL對支付網(wǎng)關(guān)作出任意的POST請求。
POST體可以是URL編碼形式的體,或者可能是XML SOAP體。 通過合適的密鑰分布信道來訪問支付網(wǎng)關(guān)認(rèn)證符和其它秘密信息,通過對秘密的合適檢查來防止跨客戶秘密共享。 將網(wǎng)關(guān)POST響應(yīng)解析為元數(shù)據(jù)變量。 使用以下操作中的一個或多個來修改端用戶的入站(inbound) POST體
·
用不同的值取代命名參數(shù)的值。 添加具有給定值的命名參數(shù)。 移除命名參數(shù)及其值,可選地,用“X”字符取代值。 將修改的POST體發(fā)送到商戶的源服務(wù)器,并繼續(xù)照常對POST請求和響應(yīng)進(jìn)行處理。 將足夠的信息包括在日志行中以用于調(diào)試和排錯。 確??ㄌ柡推渌舾行畔⒈3职踩???ㄌ柌槐粚懭氲饺魏挝募虿樵儽?。I. 2. 2邊緣服務(wù)器請求處理細(xì)節(jié)下面闡述基于邊緣的令牌化的處理中的主要的邊緣服務(wù)器步驟。I.標(biāo)識商戶標(biāo)識符以在令牌賦予器調(diào)用中使用。這可以是簡單的元數(shù)據(jù)標(biāo)簽,或者可能是元數(shù)據(jù)變量。2.將HTTPS POST請求中的卡號和持卡人數(shù)據(jù)字段提取到元數(shù)據(jù)變量中。〇HTML形式的URL編碼的POST體。所述請求將具有Content-Type:application/x-www-form-urIencoded頭,并且POST體的格式將類似于查詢字符串。〇所述變量將所述值保存為URL編碼的(未被修改的)。〇邊緣服務(wù)器進(jìn)程用這些選擇器提取變量值A(chǔ)RGSARGS_NAME ARGS_P0ST ARGS_P0ST_NAMEARGS_C0MBINED_SIZE REQUEST_B0DY。〇邊緣服務(wù)器還可支持諸如來自AJAX或SOAP調(diào)用的XML編碼的POST體。所述請求將具有Content-Type: text/xml和有效XML實體,在這種情況下,所述進(jìn)程用選擇器XML REQUEST_B0DY提取體??商鎿Q的可選方案使用正則表達(dá)式匹配。〇來自POST體的持卡人數(shù)據(jù)可包括卡號、人名、失效日期、CVI/CVV代碼等。來自POST體的數(shù)據(jù)對于第三方令牌化代理必須被適當(dāng)?shù)鼐幋a。〇URL對來自POST體的值進(jìn)行解碼(如果對于非HTTP API必要的話)。3.創(chuàng)建新的POST體,并在轉(zhuǎn)發(fā)請求中將它發(fā)送到支付網(wǎng)關(guān)。〇該P(yáng)OST包括卡號和在HTTPS POST請求中所發(fā)送的支付網(wǎng)關(guān)接口所需的持卡人數(shù)據(jù)。〇如果該P(yáng)OST失敗,則嘗試retry-post,但是僅在被支付網(wǎng)關(guān)使得生效之后(這不應(yīng)使得復(fù)制令牌被創(chuàng)建)。〇對支付網(wǎng)關(guān)的POST可能需要商戶認(rèn)證符,比如,用戶名、密碼或HMAC密鑰。這些值需要被元數(shù)據(jù)中的密鑰管理名稱引用。
〇邊緣服務(wù)器進(jìn)程能夠訪問秘密密鑰來創(chuàng)建用于POST體中的一組數(shù)據(jù)字段的HMAC認(rèn)證符,并將該認(rèn)證符添加到POST體。4.從支付網(wǎng)關(guān)接收響應(yīng)并對該響應(yīng)進(jìn)行解析〇可通過正則表達(dá)式或固定字符串匹配來對響應(yīng)體進(jìn)行解析。〇在OK響應(yīng)時用POST體中的令牌取代卡號。〇一旦被取代,就從進(jìn)程存儲器移除卡號。〇在錯誤響應(yīng)或超時時采取合適的失敗動作一見下。發(fā)送網(wǎng)關(guān)的失敗指示是當(dāng)商戶需要已經(jīng)處理網(wǎng)關(guān)失敗情況時可接受的默認(rèn)行為。
〇支付網(wǎng)關(guān)應(yīng)該快得以至于調(diào)用不被延遲很長時間。邊緣進(jìn)程可將超時應(yīng)用于網(wǎng)關(guān)請求以防止資源耗竭。5.記錄交易的結(jié)果。〇這可包括數(shù)值響應(yīng)代碼、原因或決策字符串、交易標(biāo)識符和其它非PII數(shù)據(jù)。6.繼續(xù)用修改的POST體對商戶站點的轉(zhuǎn)發(fā)請求。POST將攜帶不同的持卡人數(shù)據(jù)。〇商戶必須修改他們的應(yīng)用來處理輸入的令牌。I. 3支付網(wǎng)關(guān)整合對于令牌化的接口可以通過簡檔功能性。簡檔通常代表端用戶,用匿名令牌或簡檔標(biāo)識符來提及其PII (名稱、地址、電話、卡號、失效日期等)??赏ㄟ^以下方式來訪問簡檔功能性經(jīng)由SOAP請求;通過使用二進(jìn)制API的web服務(wù);或者通過具有請求和響應(yīng)中的name=value 屬性的 HTTPS POST 接口。在新用戶訪問客戶網(wǎng)站的情況下,邊緣服務(wù)器進(jìn)程將請求創(chuàng)建新令牌。如果用戶已經(jīng)訪問了該網(wǎng)站,則他們應(yīng)該已經(jīng)具有簡檔。在這種情況下,商戶形式的POST應(yīng)該僅包含簡檔標(biāo)識符,而不是整個卡號。在這種情況下,我們將不調(diào)用令牌化API,而是僅立即使POST通過。如果通過邊緣服務(wù)器進(jìn)程的調(diào)用確實為用戶創(chuàng)建簡檔,則商戶應(yīng)該從請求提取簡檔,并將它存儲在其數(shù)據(jù)庫中以供下次用戶返回時使用。IPA 實現(xiàn)當(dāng)使用IPA時,通過指定以上所解釋的“post-body”標(biāo)簽來將IPA請求轉(zhuǎn)換為 POST,所述“post-body” 標(biāo)簽也添加了 “Content-Length” 頭?!皃ost-body” 可包含被擴(kuò)展的變元(argument)。必須根據(jù)POST體的類型(xml、名稱-值對)將這些變元適當(dāng)?shù)鼐幋a為或者url編碼的、或者純文本的、或者h(yuǎn)tml實體編碼的。通過使用〈match:processing-agent_request> 標(biāo)簽中的 <edgeservices :modify-outgoing-reques t-header > 標(biāo)簽、指定“ app licati on/x-www-form-ur I encoded ” 或另一合適的值來添加“Content-Type” 頭。為了在IPA 中允許 POST,在〈match:processing-agent_request> 標(biāo)簽中需要〈security:allow_post>on〈/security:allow-post>。上游POST重寫優(yōu)選地用從IPA響應(yīng)提取的變量來修改上游POST。標(biāo)簽<edgeservices:add/remove/modify-outgoing-request. remove-post_argument> 允許對 POST 體進(jìn)行修改。為了從輸入的 POST 請求提取值,激活〈edgeservices: inspect-request-body. status〉標(biāo)簽,并指定合適的〈edgeservices: inspect-request-body. limit〉?!磎atch:regex〉標(biāo)簽允許所述進(jìn)程從POST體提取值。對于輸入的POST請求,可使用諸如“ARGS_P0ST: fieldname”的選擇器,并且regex=”. * ”提供按照所需格式的字段值。為了從IPA響應(yīng)提取值,可使用被稱為IPA_RESPONSE_BODY的正則表達(dá)式選擇器。該選擇器明確地允許訪問IPA響應(yīng)體。使用選擇器“IPA_RESPONSE_STATUS”來提取IPA POST http狀態(tài)響應(yīng)。變型與欺詐檢測的交互如上所述,可權(quán)衡利用上述HTTP POST消息處理來創(chuàng)建基于邊緣的欺詐模塊,以在將請求路由到商戶網(wǎng)站之前進(jìn)行裝置檢測或辨識。這通過消除對(來自商戶站點的)欺詐平臺的單獨調(diào)出而降低了對商戶站點的整合需求。
⑶N客戶(商戶)仍將必須將裝置id或風(fēng)險評分整合到其訂單管理系統(tǒng)或進(jìn)程中。一種可選方案是將軟件修改為基于實時風(fēng)險評分來接受或拒絕交易。另一種可選方案是為供應(yīng)商提供商戶在他們的訂單履行過程期間可復(fù)核的線下風(fēng)險評分,拒絕充滿欺詐性交易。邊緣服務(wù)欺詐交互權(quán)衡利用POST掃描、基于IPA的對欺詐平臺的轉(zhuǎn)發(fā)請求以及到原始POST中的風(fēng)險評分注入。無需移除或取代現(xiàn)有字段,并且可能無需修改POST —可使用現(xiàn)有能力來將風(fēng)險評分作為HTTP頭插入?;谶吘壍钠墼p檢測可與令牌化發(fā)生同時地進(jìn)行(B卩,在相同的HTTP請求處理內(nèi))。在這樣的情況下,進(jìn)行兩(2)個單獨的中間請求,一個請求對欺詐引擎(針對風(fēng)險評分),并且一個請求對支付網(wǎng)關(guān)(針對令牌)。支付網(wǎng)關(guān)和倉庫該模塊依賴于第三方支付網(wǎng)關(guān)與將令牌與相關(guān)持卡人數(shù)據(jù)(卡號、姓名、地址、電話……)相關(guān)聯(lián)的安全數(shù)據(jù)倉庫,并且提供在給定令牌的情況下提取PII數(shù)據(jù)的安全界面。其它支付網(wǎng)關(guān)功能如前所述,邊緣服務(wù)器進(jìn)程可與令牌化請求并行地調(diào)用其它支付處理API功能(例如,請求信用批準(zhǔn))。添加到POST體的批準(zhǔn)狀態(tài)使商戶不必單獨地發(fā)起請求。盡管以上描述了本發(fā)明的某些實施例所執(zhí)行的特定順序的操作,但是應(yīng)該理解,這樣的順序是示例性的,因為可替換實施例可按不同的順序執(zhí)行這些操作、組合某些操作、重疊某些操作等。本說明書中對給定實施例的說明指示所描述的實施例可包括特定特征、結(jié)構(gòu)或特性,但是不一定每一個實施例要包括該特定特征、結(jié)構(gòu)或特性。盡管已在方法或處理的上下文中描述了所公開的主題,但是主題公開還涉及用于執(zhí)行本文的操作的設(shè)備。該設(shè)備可出于所需目的而被專門構(gòu)造,或者它可包括被存儲在計算機(jī)中的計算機(jī)程序選擇性地激活或重新配置的通用計算機(jī)。這樣的計算機(jī)程序可被存儲在計算機(jī)可讀存儲介質(zhì)中,所述計算機(jī)可讀存儲介質(zhì)諸如,但不限于,任何類型的盤(包括光盤、⑶-ROM和磁光盤)、只讀存儲器(ROM)、隨機(jī)存取存儲器(RAM)、磁性卡或光學(xué)卡、或者適用于存儲電子指令的任何類型的介質(zhì),每個均與計算機(jī)系統(tǒng)總線耦合。盡管已分別描述了所述系統(tǒng)的給定組件,但是本領(lǐng)域的普通技術(shù)人員將意識到,在給定指令、程序序列、代碼部分等中可組合或共享所述功能中的一些功能。如以上所指出的,可對于具有消息體(包括,但不限于,GET、PUT、其它WebDAV類型等)的任何HTTP請求實現(xiàn)所描述的技術(shù)。一般地,(從IPA處理)返回到邊緣服務(wù)器的信息是基于從HTTP消息提取的數(shù)據(jù)的。如所述的那樣,第三方可將提取的數(shù)據(jù)與根據(jù)具體應(yīng)用按需返回的信息相關(guān)聯(lián)(相映射)。
已描述了我們的發(fā)明,現(xiàn)在權(quán)利要求如下。
權(quán)利要求
1.一種設(shè)備,包括 處理器; 計算機(jī)存儲器,其保存計算機(jī)程序指令,所述計算機(jī)程序指令當(dāng)被所述處理器執(zhí)行時在配置文件的控制下執(zhí)行方法,所述方法包括 接收HTTP消息體; 對所述HTTP消息體進(jìn)行解析以提取數(shù)據(jù); 向外部進(jìn)程發(fā)出傳遞從所述HTTP消息體提取的數(shù)據(jù)的中間請求; 從所述外部進(jìn)程接收響應(yīng); 將所述響應(yīng)插入到所述HTTP消息體中,以創(chuàng)建修改的HTTP消息體;和 將所述修改的HTTP消息體轉(zhuǎn)發(fā)到目標(biāo)應(yīng)用以進(jìn)行進(jìn)一步處理。
2.根據(jù)權(quán)利要求I所述的設(shè)備,其中,所述HTTP消息體是HTTPPOST。
3.根據(jù)權(quán)利要求I所述的設(shè)備,其中,所提取的數(shù)據(jù)是信用卡卡號,并且所述外部進(jìn)程是支付網(wǎng)關(guān)令牌化進(jìn)程。
4.根據(jù)權(quán)利要求I所述的設(shè)備,其中,所述外部進(jìn)程是欺詐引擎,并且插入到所述HTTP消息體中的響應(yīng)是風(fēng)險評分。
5.根據(jù)權(quán)利要求I所述的設(shè)備,其中,所述外部進(jìn)程包括相關(guān)聯(lián)的數(shù)據(jù)庫,并且插入到所述HTTP消息體中的響應(yīng)是由在所述數(shù)據(jù)庫中查找而導(dǎo)出的值。
6.根據(jù)權(quán)利要求I所述的設(shè)備,其中,所述配置文件被配置為XML。
7.根據(jù)權(quán)利要求I所述的設(shè)備,其中,通過安全鏈路向所述外部進(jìn)程發(fā)出所述中間請求。
8.根據(jù)權(quán)利要求I所述的設(shè)備,其中,插入到所述HTTP消息體中的響應(yīng)使提取的數(shù)據(jù)混亂。
9.根據(jù)權(quán)利要求I所述的設(shè)備,其中,插入到所述HTTP消息體中的響應(yīng)增強(qiáng)提取的數(shù)據(jù)。
10.一種在分布式網(wǎng)絡(luò)的邊緣服務(wù)器中操作的方法,所述分布式網(wǎng)絡(luò)具有在參與的第三方客戶之間共享的基礎(chǔ)設(shè)施,所述方法包括 接收HTTP POST消息體; 對所述HTTP POST消息體進(jìn)行解析以提取數(shù)據(jù); 向外部進(jìn)程發(fā)出傳遞從所述HTTP POST消息體提取的數(shù)據(jù)的中間請求; 從所述外部進(jìn)程接收響應(yīng); 將所述響應(yīng)插入到所述HTTP POST消息體中,以創(chuàng)建修改的HTTP POST消息體;和 將所述修改的HTTP POST消息體轉(zhuǎn)發(fā)到目標(biāo)應(yīng)用以進(jìn)行進(jìn)一步處理。
11.根據(jù)權(quán)利要求10所述的方法,其中,插入到所述HTTPPOST消息體中的響應(yīng)保護(hù)提取的數(shù)據(jù)。
12.根據(jù)權(quán)利要求10所述的方法,其中,插入到所述HTTPPOST消息體中的響應(yīng)增強(qiáng)提取的數(shù)據(jù)。
13.根據(jù)權(quán)利要求10所述的方法,其中,所述外部進(jìn)程是與第三方實體相關(guān)聯(lián)的令牌化進(jìn)程。
14.根據(jù)權(quán)利要求10所述的方法,其中,所述外部進(jìn)程是與第三方實體相關(guān)聯(lián)的欺詐檢測進(jìn)程。
15.根據(jù)權(quán)利要求10所述的方法,其中,所述外部進(jìn)程是與第三方實體相關(guān)聯(lián)的互聯(lián)網(wǎng)可訪問的web應(yīng)用。
全文摘要
CDN邊緣服務(wù)器進(jìn)程接收HTTP消息,關(guān)于該消息采取給定動作,然后將該消息的修改版本轉(zhuǎn)發(fā)到目標(biāo)服務(wù)器(通常是與CDN客戶相關(guān)聯(lián)的服務(wù)器)。所述進(jìn)程可包括便于所述給定動作的相關(guān)聯(lián)的中間處理代理(IPA)或子處理線程。在一個實施例中,所述消息是HTTP POST,并且所述給定動作包括以下動作(i)識別POST;(ii)從POST移除給定數(shù)據(jù);(iii)向另一進(jìn)程(比如,第三方服務(wù)器)發(fā)出將從POST移除的給定數(shù)據(jù)傳遞給該進(jìn)程的中間(或次級)請求;(iv)接收對該中間請求的響應(yīng);(v)將從該響應(yīng)接收的或者與該響應(yīng)相關(guān)聯(lián)的數(shù)據(jù)合并到新的HTTP消息中;以及(vi)將該新的HTTP消息轉(zhuǎn)發(fā)到目標(biāo)服務(wù)器上。以這種方式,當(dāng)HTTP消息在它從客戶端到目標(biāo)(商戶)服務(wù)器的途中“通過”邊緣服務(wù)器時,POST中的給定數(shù)據(jù)可受到保護(hù)。在可替換實施例中,通過將從POST消息提取的數(shù)據(jù)傳遞到外部化進(jìn)程并將導(dǎo)出值(諸如基于該數(shù)據(jù)的欺詐風(fēng)險評分)添加回該消息中來增強(qiáng)該數(shù)據(jù)。
文檔編號H04L29/08GK102971712SQ201180033573
公開日2013年3月13日 申請日期2011年5月19日 優(yōu)先權(quán)日2010年5月19日
發(fā)明者J·A·蒂勒, S·魯丁, J·F·蘇莫爾斯 申請人:阿卡麥科技公司