欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法、裝置及系統(tǒng)的制作方法

文檔序號:8001705閱讀:191來源:國知局
對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法、裝置及系統(tǒng)的制作方法
【專利摘要】本申請實(shí)施例公開了對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法、裝置及系統(tǒng),所述方法包括:接收到服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為預(yù)置的JS軟件開發(fā)工具包JSSDK;如果是,則將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器,以便所述代理服務(wù)器根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到第一服務(wù)器;重新接收到所述服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為代理服務(wù)器;如果是,則根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。通過本申請實(shí)施例,能夠提高偽造服務(wù)訪問請求的難度,提高安全性。
【專利說明】對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法、裝置及系統(tǒng)

【技術(shù)領(lǐng)域】
[0001]本申請涉及第一服務(wù)器中的服務(wù)訪問控制【技術(shù)領(lǐng)域】,特別是涉及對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法、裝置及系統(tǒng)。

【背景技術(shù)】
[0002]在互聯(lián)網(wǎng)時(shí)代,把網(wǎng)站的服務(wù)封裝成一系列計(jì)算機(jī)易識別的數(shù)據(jù)接口,然后開放出去,供第三方開發(fā)者使用,這種行為就叫做開放API (Applicat1n ProgrammingInterface,應(yīng)用程序編程接口),提供開放API的平臺本身就被稱為開放平臺。通過開放平臺,網(wǎng)站不僅能提供對Web網(wǎng)頁的簡單訪問,還可以進(jìn)行復(fù)雜的數(shù)據(jù)交互,將它們的Web網(wǎng)站轉(zhuǎn)換為與操作系統(tǒng)等價(jià)的開發(fā)平臺。第三方開發(fā)者可以基于這些已經(jīng)存在的、公開的Web網(wǎng)站而開發(fā)豐富多彩的應(yīng)用。
[0003]例如,對于某電子商務(wù)交易平臺而言,就可以面向第三方應(yīng)用開發(fā)者,提供API接口和相關(guān)開發(fā)環(huán)境,這樣,第三方軟件開發(fā)者可通過這些開放API來獲取交易平臺內(nèi)的用戶信息(賣方和賣方用戶信息,私有信息需要授權(quán))、業(yè)務(wù)對象信息(例如商品的名稱、類目、型號、介紹等信息)、業(yè)務(wù)對象類目信息(全網(wǎng)業(yè)務(wù)對象的索引及分類明細(xì))、店鋪信息、交易明細(xì)信息(在取得用戶授權(quán)的情況下,查詢每筆交易的詳細(xì)情況)、業(yè)務(wù)對象管理(業(yè)務(wù)對象的上傳、編輯、修改等接口)等信息,并建立相應(yīng)的電子商務(wù)應(yīng)用。
[0004]具體實(shí)現(xiàn)時(shí),開放平臺向第三方應(yīng)用開發(fā)者提供開放API的方式有多種,例如,SDK本地調(diào)用、各種語言的服務(wù)器調(diào)用、無線手機(jī)調(diào)用等等。另外還有一種方式是可以將主業(yè)務(wù)平臺(主要用于提供各種具體業(yè)務(wù)的平臺,例如,某電子商務(wù)交易平臺等)的一些功能以JS組件化的方式開放出去。例如,可以將某主業(yè)務(wù)平臺的購物車、商品詳情、收藏夾等功能直接以組件的方式開放給第三方應(yīng)用開發(fā)者,這樣,如果某第三方應(yīng)用中需要添加該主業(yè)務(wù)平臺的“購物車”功能,則直接將購物車功能對應(yīng)的JS組件代碼添加到其開發(fā)的應(yīng)用(例如某第三方網(wǎng)站)中,這樣,用戶就可以直接從該第三方網(wǎng)站的頁面中看到一些商品的詳情等信息,并可以直接進(jìn)行將商品加入到購物車的操作。
[0005]但是,在這種以JS組件化的方式開放的實(shí)現(xiàn)方式中,由于可能會(huì)涉及到主業(yè)務(wù)平臺的核心組件,同時(shí)又由于該JS組件直接與對接的用戶打交道,因此隨之而來的安全問題成為了接下來急需要處理的問題。例如,在第三方應(yīng)用中使用其添加的各種JS組件對應(yīng)的功能時(shí),第三方應(yīng)用需要與開放平臺進(jìn)行交互,期間會(huì)涉及到一些請求的發(fā)送及響應(yīng)等等,這就使得整個(gè)系統(tǒng)存在被第三方應(yīng)用通過類似httpclient等方式模擬某功能的風(fēng)險(xiǎn)。例如,某第三方應(yīng)用在通過某種方式竊取了交互過程中使用的協(xié)議及其參數(shù)等信息之后,就可以偽造訪問請求,來模擬用戶登錄或者提交表單等操作,從而使得用戶在系統(tǒng)中的信息甚至財(cái)產(chǎn)等的安全受到威脅。


【發(fā)明內(nèi)容】

[0006]本申請?zhí)峁┝藢Φ谌綉?yīng)用進(jìn)行服務(wù)訪問控制的方法、裝置及系統(tǒng),能夠提高偽造服務(wù)訪問請求的難度,提高安全性。
[0007]本申請?zhí)峁┝巳缦路桨?
[0008]一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法,所述第三方應(yīng)用中添加有所述第一服務(wù)器中特定功能對應(yīng)的JS組件,所述方法包括:
[0009]接收到服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為預(yù)置的JS軟件開發(fā)工具包JSSDK ;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地;
[0010]如果是,則將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器,以便所述代理服務(wù)器根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到第一服務(wù)器;
[0011]重新接收到所述服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為代理服務(wù)器;
[0012]如果是,則根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
[0013]一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法,所述第三方應(yīng)用中添加有第一服務(wù)器中特定功能對應(yīng)的JS組件,所述方法包括:
[0014]接收第一服務(wù)器發(fā)送的服務(wù)訪問請求;所述服務(wù)訪問請求為第三方應(yīng)用通過JSSDK發(fā)送到第一服務(wù)器的服務(wù)訪問請求;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地;
[0015]根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn);
[0016]如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
[0017]一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法,所述第三方應(yīng)用中添加有第一服務(wù)器中特定功能對應(yīng)的JS組件,所述JS組件的代碼自動(dòng)將第一服務(wù)器提供的JSSDK下載到第三方應(yīng)用本地,所述方法包括由所述JSSDK執(zhí)行的以下步驟:
[0018]監(jiān)控用戶發(fā)出的與所述特定功能相關(guān)的操作指令;
[0019]接收到所述操作指令后,生成服務(wù)訪問請求;
[0020]將所述服務(wù)訪問請求發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器在判斷出所述服務(wù)訪問請求是由JSSDK發(fā)出的之后,將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器進(jìn)行安全性校驗(yàn),并在校驗(yàn)通過后返回響應(yīng)消息;
[0021]接收所述第一服務(wù)器返回的響應(yīng)消息,并提供給所述第三方應(yīng)用進(jìn)行處理。
[0022]一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的系統(tǒng),所述第三方應(yīng)用中添加有所述第一服務(wù)器中特定功能對應(yīng)的JS組件,所述系統(tǒng)包括:
[0023]第一判斷單元,用于接收到服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為預(yù)置的JS軟件開發(fā)工具包JSSDK ;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地;
[0024]發(fā)送單元,用于如果第一判斷單元的判斷結(jié)果為是,則將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器,以便所述代理服務(wù)器根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到第一服務(wù)器;
[0025]第二判斷單元,用于重新接收到所述服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為代理服務(wù)器;
[0026]響應(yīng)單元,用于如果第二判斷單元的判斷結(jié)果為是,則根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
[0027]—種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的代理服務(wù)器,所述第三方應(yīng)用中添加有第一服務(wù)器中特定功能對應(yīng)的JS組件,所述代理服務(wù)器包括:
[0028]請求接收單元,用于接收第一服務(wù)器發(fā)送的服務(wù)訪問請求;所述服務(wù)訪問請求為第三方應(yīng)用通過JSSDK發(fā)送到第一服務(wù)器的服務(wù)訪問請求;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地;
[0029]校驗(yàn)單元,用于根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn);
[0030]請求發(fā)送單元,用于如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
[0031]一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的裝置,所述第三方應(yīng)用中添加有第一服務(wù)器中特定功能對應(yīng)的JS組件,所述JS組件的代碼自動(dòng)將第一服務(wù)器提供的JSSDK下載到第三方應(yīng)用本地,所述裝置包括:
[0032]監(jiān)控單元,用于監(jiān)控用戶發(fā)出的與所述特定功能相關(guān)的操作指令;
[0033]請求生成單元,用于接收到所述操作指令后,生成服務(wù)訪問請求;
[0034]請求發(fā)送單元,用于將所述服務(wù)訪問請求發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器在判斷出所述服務(wù)訪問請求是由JSSDK發(fā)出的之后,將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器進(jìn)行安全性校驗(yàn),并在校驗(yàn)通過后返回響應(yīng)消息;
[0035]響應(yīng)接收單元,用于接收所述第一服務(wù)器返回的響應(yīng)消息,并提供給所述第三方應(yīng)用進(jìn)行處理。
[0036]根據(jù)本申請?zhí)峁┑木唧w實(shí)施例,本申請公開了以下技術(shù)效果:
[0037]通過本申請實(shí)施例,第三方應(yīng)用是通過瀏覽器中集成的JSSDK來發(fā)送服務(wù)訪問請求,這樣,如果其他的第三方應(yīng)用要偽造該服務(wù)訪問請求,就需要獲知瀏覽器中HTTP協(xié)議的所有參數(shù),因此,提高了偽造的難度。對于第一服務(wù)器而言,在接收到JSSDK發(fā)送的服務(wù)訪問請求后,還需要發(fā)送到代理服務(wù)器進(jìn)行安全性校驗(yàn),因此,第一服務(wù)器只有在重新接收到代理服務(wù)器發(fā)送的服務(wù)訪問請求時(shí),才會(huì)做出響應(yīng),保證了安全性。
[0038]其中,還可以對各個(gè)第三方應(yīng)用可以調(diào)用的API進(jìn)行限制,使得一個(gè)第三方應(yīng)用只能調(diào)用有限的幾個(gè)API,這樣,即使出現(xiàn)服務(wù)訪問請求被偽造的情況,也可以使得偽造方只能獲取到API權(quán)限組內(nèi)的部分信息,保證用戶的大部分信息都是安全的。
[0039]當(dāng)然,實(shí)施本申請的任一產(chǎn)品并不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。

【專利附圖】

【附圖說明】
[0040]為了更清楚地說明本申請實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0041]圖1是本申請實(shí)施例提供的第一服務(wù)器側(cè)方法的流程圖;
[0042]圖2是本申請實(shí)施例提供的代理服務(wù)器側(cè)方法的流程圖;
[0043]圖3是本申請實(shí)施例提供的客戶端方法的流程圖;
[0044]圖4是本申請實(shí)施例提供的系統(tǒng)的示意圖;
[0045]圖5是本申請實(shí)施例提供的代理服務(wù)器的示意圖;
[0046]圖6是本申請實(shí)施例提供的客戶端裝置的示意圖。

【具體實(shí)施方式】
[0047]下面將結(jié)合本申請實(shí)施例中的附圖,對本申請實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾堉械膶?shí)施例,本領(lǐng)域普通技術(shù)人員所獲得的所有其他實(shí)施例,都屬于本申請保護(hù)的范圍。
[0048]首先需要說明的是,在本申請實(shí)施例中,第一服務(wù)器(即開放平臺對應(yīng)的服務(wù)器,該第一服務(wù)器可以包括一臺或多臺服務(wù)器)同樣可以以JS組件的方式將主業(yè)務(wù)平臺的一部分功能開放出去,這樣,只要將JS組件的代碼添加在第三方應(yīng)用中,第三方應(yīng)用就可以實(shí)現(xiàn)JS組件對應(yīng)的功能。當(dāng)然,在實(shí)現(xiàn)具體功能的過程中,第三方應(yīng)用還需要與第一服務(wù)器進(jìn)行交互,從第一服務(wù)器獲取一些數(shù)據(jù)等信息,因此,如何保證交互過程中信息的安全性,就成為需要重點(diǎn)關(guān)注的問題。
[0049]本申請發(fā)明人在實(shí)現(xiàn)本申請的過程中發(fā)現(xiàn),現(xiàn)有技術(shù)中,之所以會(huì)存在被第三方應(yīng)用通過類似httpclient等方式模擬某功能的風(fēng)險(xiǎn),一方面原因是在現(xiàn)有技術(shù)中,當(dāng)?shù)谌綉?yīng)用需要與第一服務(wù)器進(jìn)行交互時(shí),是直接通過第三方應(yīng)用的網(wǎng)頁向第一服務(wù)器發(fā)送請求,這樣,只要盜取交互過程中使用的HTTP (Hypertext Transport Protocol,超文本傳送協(xié)議)協(xié)議,第三方應(yīng)用就可以偽造服務(wù)訪問請求。因此,在本申請實(shí)施例中,為了提高被偽造的概率,并不是直接從網(wǎng)頁中發(fā)送訪問請求,而是通過一個(gè)JSSDK(SoftwareDevelopment Kit,軟件開發(fā)工具包)來發(fā)送。其中,JSSDK是由第一服務(wù)器提供的一個(gè)開發(fā)工具包,在某第三方應(yīng)用添加了第一服務(wù)器的某JS組件之后,該JS組件的代碼就可以自動(dòng)從第一服務(wù)器將該JSSDK下載到第三方應(yīng)用本地,在用戶使用瀏覽器等打開第三方應(yīng)用時(shí),該JSSDK就可以被啟動(dòng)。這樣,相當(dāng)于在瀏覽器中集成了第一服務(wù)器的JSSDK,當(dāng)用戶執(zhí)行了與該JS組件相關(guān)的操作時(shí),如果需要向第一服務(wù)器發(fā)送服務(wù)訪問請求,則由瀏覽器中集成的JSSDK發(fā)送,而不是直接從網(wǎng)頁發(fā)送。也就是說,相當(dāng)于服務(wù)訪問請求是由瀏覽器發(fā)送的,這樣,如果第三方應(yīng)用想要偽造服務(wù)訪問請求,則需要將瀏覽器相關(guān)的HTTP協(xié)議中所有的參數(shù)都獲取到,理論上來講,一般是不可能做到的,因此,這也就降低了被第三方應(yīng)用偽造的概率。
[0050]當(dāng)然,為了進(jìn)一步保證服務(wù)訪問請求的安全性,在本申請實(shí)施例中,第一服務(wù)器在接收到一個(gè)服務(wù)訪問請求之后,如果發(fā)現(xiàn)該服務(wù)訪問請求是JSSDK發(fā)送的,則可以首先發(fā)送到一個(gè)代理服務(wù)器進(jìn)行安全性校驗(yàn)。其中,代理服務(wù)器可以是部署在第一服務(wù)器側(cè)的一個(gè)服務(wù)器,其中保存有進(jìn)行安全性校驗(yàn)時(shí)所需的信息。如果安全性校驗(yàn)通過,則代理服務(wù)器可以重新將服務(wù)訪問請求發(fā)送到第一服務(wù)器,第一服務(wù)器在重新接收到服務(wù)訪問請求后,發(fā)現(xiàn)其來源是代理服務(wù)器,則證明已經(jīng)驗(yàn)證通過,因此,直接根據(jù)服務(wù)訪問請求中的回傳地址返回響應(yīng)消息即可。
[0051]這樣,一方面,由于通過JSSDK發(fā)送請求,因此,使得第三方應(yīng)用偽造服務(wù)訪問請求的難度增加,另一方面,通過代理服務(wù)器對第三方應(yīng)用的身份等進(jìn)行進(jìn)一步的安全性校驗(yàn),使得第三方應(yīng)用的服務(wù)訪問的安全性得到保障。下面就對具體的實(shí)現(xiàn)方案進(jìn)行詳細(xì)地介紹。
[0052]實(shí)施例一
[0053]在該實(shí)施例一中,從第一服務(wù)器的角度對本申請的技術(shù)方案進(jìn)行介紹,也即,涉及到的方法中,各步驟的執(zhí)行主體是第一服務(wù)器,該第一服務(wù)器仍然以JS組件的方式向第三方應(yīng)用公開部分功能。參見圖1,該方法可以包括以下步驟:
[0054]SlOl:接收到服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為預(yù)置的JS軟件開發(fā)工具包JSSDK ;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地;
[0055]首先需要說明的是,如果某第三方應(yīng)用添加了第一服務(wù)器公開的某JS組件,則可以在第三方應(yīng)用的網(wǎng)頁中顯示出相應(yīng)的界面,例如,某第三方網(wǎng)站添加了淘寶網(wǎng)中“購物車”功能對應(yīng)的JS組件,則用戶可以在該第三方網(wǎng)站中查看到淘寶網(wǎng)中的商品信息鏈接,同時(shí)頁面中還存在“加入購物車”等操作按鈕,用戶如果對某商品感興趣,則可以按下該商品的操作按鈕,發(fā)出將該商品加入購物車的操作指令。
[0056]另一方面,第三方應(yīng)用中添加了某JS組件之后,該JS組件的代碼可以自動(dòng)從第一服務(wù)器中下載JSSDK,相當(dāng)于在瀏覽器中集成了 JSSDK。該JSSDK就可以對用戶的相關(guān)操作進(jìn)行監(jiān)控,如果發(fā)現(xiàn)用戶執(zhí)行與該JS組件相關(guān)的某操作(例如前述將某商品加入購物車的操作等),則可以生成服務(wù)訪問請求,并向第一服務(wù)器進(jìn)行發(fā)送。
[0057]其中,在實(shí)際應(yīng)用中,第三方應(yīng)用一般采用調(diào)用第一服務(wù)器的API的方式來獲取第一服務(wù)器的服務(wù)信息,因此,具體實(shí)現(xiàn)時(shí),JSSDK在生成服務(wù)訪問請求時(shí),具體可以是確定出需要調(diào)用的API,并組裝API參數(shù)。其中,所謂的組裝API參數(shù),是指將用于對服務(wù)訪問請求進(jìn)行安全性校驗(yàn)的信息組裝到API參數(shù)中,以便使得服務(wù)訪問請求可以攜帶上這些信息,發(fā)送到第一服務(wù)器側(cè)進(jìn)行安全性校驗(yàn)。
[0058]具體的用于進(jìn)行安全性校驗(yàn)的信息可以有多種,例如,其中一種可以是第三方應(yīng)用的標(biāo)識信息。這種標(biāo)識信息是由第一服務(wù)器為第三方應(yīng)用頒發(fā)的,具體可以是在第三方應(yīng)用向第一服務(wù)器注冊獲取JS組件時(shí),為第三方應(yīng)用頒發(fā)具有唯一性的標(biāo)識信息(一般可以稱為APPkey),這樣,第三方應(yīng)用可以用這種標(biāo)識信息來區(qū)分各個(gè)第三方應(yīng)用。
[0059]當(dāng)然,在實(shí)際應(yīng)用中,還可能存在第三方應(yīng)用的標(biāo)識信息被泄露的情況,使得其他的第三方應(yīng)用使用某第三方應(yīng)用的標(biāo)識信息來發(fā)送服務(wù)訪問請求,因此,為了能夠校驗(yàn)服務(wù)訪問請求是否來自合法的第三方應(yīng)用,第一服務(wù)器側(cè)還可以記錄下各個(gè)第三方應(yīng)用的refer地址與頒發(fā)的標(biāo)識信息之間的對應(yīng)關(guān)系,由于第三方應(yīng)用的refer地址具有唯一性,因此,refer地址與標(biāo)識信息之間具有一一對應(yīng)的關(guān)系;在JSSDK發(fā)送服務(wù)訪問請求時(shí),還可以攜帶上第三方應(yīng)用的refer地址這一信息,這樣,第一服務(wù)器側(cè)在進(jìn)行安全性校驗(yàn)時(shí),還可以驗(yàn)證refer地址與標(biāo)識信息之間的對應(yīng)關(guān)系是否正確,如果不正確,則可能是標(biāo)識信息被其他的第三方應(yīng)用盜取,因此,就可以丟棄該服務(wù)訪問請求,避免用戶信息受到被泄露等威脅。
[0060]另外,除了對第三方應(yīng)用的身份進(jìn)行校驗(yàn)外,在實(shí)際應(yīng)用中,還可以判斷一個(gè)服務(wù)訪問請求是否是在獲得用戶授權(quán)的情況下發(fā)出的,如果是,才會(huì)返回響應(yīng)消息,否則,如果沒有經(jīng)過用戶授權(quán),則也可以將該請求丟棄。具體實(shí)現(xiàn)時(shí),當(dāng)用戶開始使用某第三方應(yīng)用中的JS組件對應(yīng)的功能時(shí),該第三方應(yīng)用可以首先向第一服務(wù)器發(fā)起授權(quán)請求,相應(yīng)的,第一服務(wù)器就可以返回授權(quán)確認(rèn)界面,該授權(quán)確認(rèn)界面中顯示有該第三方應(yīng)用請求授權(quán)的具體操作(例如,查看用戶信息等等,在第三方應(yīng)用在向第一服務(wù)器中注冊時(shí),可以申請操作權(quán)限,第一服務(wù)器就是根據(jù)第三方應(yīng)用申請的操作權(quán)限生成授權(quán)確認(rèn)界面),用戶在查看到授權(quán)確認(rèn)界面之后,如果允許第三方應(yīng)用執(zhí)行這些操作,則可以點(diǎn)擊“確認(rèn)”等標(biāo)識的按鈕,對第三方應(yīng)用的操作進(jìn)行授權(quán)。第一服務(wù)器在接收到用戶的確認(rèn)授權(quán)指令后,就可以生成一串加密的字符,并保存,例如保存到cookies中,相當(dāng)于作為服務(wù)訪問令牌頒發(fā)給第三方應(yīng)用。這樣,JSSDK在發(fā)送服務(wù)訪問請求時(shí),也可以從cookies中讀取到該服務(wù)訪問令牌,并且也可以將其組裝在API參數(shù)中,攜帶在服務(wù)訪問請求中一并發(fā)送。這樣,在第一服務(wù)器側(cè)進(jìn)行校驗(yàn)時(shí),發(fā)現(xiàn)其中攜帶有第一服務(wù)器頒發(fā)的服務(wù)訪問令牌,則可以確定該服務(wù)訪問請求是在得到了用戶授權(quán)的情況下發(fā)出的,進(jìn)而才會(huì)允許對該服務(wù)訪問請求返回響應(yīng)消息。
[0061]需要說明的是,在進(jìn)行一次用戶授權(quán)并將服務(wù)訪問令牌保存到cookies中之后,JSSDK每次在發(fā)送服務(wù)訪問請求時(shí),直接到cookies中服務(wù)該服務(wù)訪問令牌即可。但是,在不進(jìn)行特殊設(shè)置的情況下,寫入到cookies中的信息會(huì)隨著瀏覽器的關(guān)閉而刪除,因此,可以是在每次重新打開瀏覽器時(shí),重新執(zhí)行上述用戶授權(quán)并生成服務(wù)訪問令牌的過程。當(dāng)然,在實(shí)際應(yīng)用中,如果是可信度比較高的第三方應(yīng)用,也可以不必是在每次打開瀏覽器時(shí)重新進(jìn)行授權(quán)及服務(wù)訪問令牌的獲取,具體可以依實(shí)際應(yīng)用的需要而定。
[0062]另外,還可以將用戶的賬戶信息也組裝到API參數(shù)中,以便攜帶在服務(wù)訪問請求中發(fā)送到第一服務(wù)器進(jìn)行校驗(yàn)。用戶的賬戶信息可以是在用戶登錄到主業(yè)務(wù)平臺的情況下,從主業(yè)務(wù)平臺的cookies中讀取到的。
[0063]S102:如果是,則將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器,以便所述代理服務(wù)器根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到第一服務(wù)器;
[0064]在本申請實(shí)施例中,對于發(fā)送到第一服務(wù)器的服務(wù)訪問請求,第一服務(wù)器并不是直接進(jìn)行安全性校驗(yàn),而是首先判斷服務(wù)訪問請求的來源,如果發(fā)現(xiàn)來自JSSDK,則發(fā)送到一個(gè)預(yù)置的代理服務(wù)器進(jìn)行安全性校驗(yàn)。其中,代理服務(wù)器是第一服務(wù)器側(cè)設(shè)置的一種用于對服務(wù)訪問請求進(jìn)行安全性校驗(yàn)的服務(wù)器,并且可以有多個(gè),第一服務(wù)器中可以預(yù)先保存各個(gè)代理服務(wù)器的IP地址。
[0065]代理服務(wù)器在接收到服務(wù)訪問請求后,可以根據(jù)其中攜帶的信息對服務(wù)訪問請求進(jìn)行安全性校驗(yàn)。例如,如果服務(wù)訪問請求中攜帶有第三方應(yīng)用的refer地址以及標(biāo)識信息,則可以判斷兩者之間的對應(yīng)關(guān)系是否正確。如果其中攜帶有服務(wù)訪問令牌,還可以判斷該服務(wù)訪問令牌是否正確,等等。需要說明的是,對于服務(wù)訪問令牌的校驗(yàn),也可以在第一服務(wù)器中進(jìn)行。
[0066]另外,為了進(jìn)一步確保安全性,在本申請實(shí)施例中,還可以預(yù)先為各個(gè)第三方應(yīng)用確定API權(quán)限組,并預(yù)先保存第三方應(yīng)用的標(biāo)識信息與API權(quán)限組之間的對應(yīng)關(guān)系,用以表明該第三方應(yīng)用只具有調(diào)用這些API的權(quán)限,換言之,對于一個(gè)第三方應(yīng)用而言,其API權(quán)限組之外的API,該第三方應(yīng)用無權(quán)調(diào)用。因此,代理服務(wù)器在接收到服務(wù)訪問請求后,還可以首先獲取到第三方應(yīng)用的標(biāo)識信息,并取出該第三方應(yīng)用的標(biāo)識信息對應(yīng)的API權(quán)限組,判斷當(dāng)前服務(wù)訪問請求中請求調(diào)用的API是否位于該第三方應(yīng)用的API權(quán)限組中,如果是,并且其他各方面的校驗(yàn)信息也都正確,則可以通過校驗(yàn)。否則,如果當(dāng)前請求的API沒有出現(xiàn)在該第三方應(yīng)用的API權(quán)限組中,則即使其他的校驗(yàn)信息正確,也會(huì)將該請求丟棄,或者直接返回請求失敗等信息。
[0067]也就是說,在本申請實(shí)施例中,對于每個(gè)第三方應(yīng)用而言,都僅開放調(diào)用一部分API的權(quán)限,這樣,即使出現(xiàn)服務(wù)訪問請求被仿造的情況,也會(huì)因?yàn)橹荒苷{(diào)用很少一部分API,而使得用戶的大部分信息都是安全的。
[0068]代理服務(wù)器在完成對服務(wù)訪問請求的安全性校驗(yàn)后,如果校驗(yàn)通過,則可以重新將服務(wù)訪問請求發(fā)送到第一服務(wù)器。
[0069]S103:重新接收到所述服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為代理服務(wù)器,如果是,執(zhí)行步驟S104 ;
[0070]在本申請實(shí)施例中,對于第一服務(wù)器而言,至少會(huì)接收到兩種服務(wù)訪問請求,一種是來自JSSDK的服務(wù)訪問請求,對于這種訪問請求,第一服務(wù)器會(huì)轉(zhuǎn)發(fā)到代理服務(wù)器進(jìn)行安全性校驗(yàn);另一種就是來自代理服務(wù)器的服務(wù)訪問請求,對于這種情況,第一服務(wù)器會(huì)看作是通過了安全性校驗(yàn)的服務(wù)訪問請求,因此,會(huì)按照請求的內(nèi)容做出響應(yīng)。也就是說,無論是JSSDK還是代理服務(wù)器,在向第一服務(wù)器發(fā)送服務(wù)訪問請求時(shí),使用的第一服務(wù)器的URL都是相同的,只不過當(dāng)發(fā)送到第一服務(wù)器后,具體的處理邏輯會(huì)有所不同,第一服務(wù)器會(huì)區(qū)別對待。
[0071]這里需要說明的是,第一服務(wù)器在接收到一個(gè)服務(wù)訪問請求后,為了判斷其是否來自真實(shí)的代理服務(wù)器,可以預(yù)先設(shè)置一個(gè)IP地址白名單,白名單中保存有各個(gè)代理服務(wù)器的IP地址;在接收到一個(gè)服務(wù)訪問請求后,首先提取出發(fā)送方的IP地址,然后判斷其是否出現(xiàn)在IP地址白名單中,如果是,則證明是來自一個(gè)真實(shí)可信的代理服務(wù)器,否則,仍然可以將接收到的服務(wù)訪問請求丟棄。
[0072]另外需要說明的是,這種使用代理服務(wù)器進(jìn)行安全性校驗(yàn)的方式,還可以實(shí)現(xiàn)各個(gè)API調(diào)用頻率的可控性。也就是說,對于一個(gè)API而言,如果在短時(shí)間內(nèi)被調(diào)用的次數(shù)過多,則可能會(huì)影響系統(tǒng)的性能,因此,在本申請實(shí)施例中,還可以由代理服務(wù)器對各個(gè)API的調(diào)用頻率進(jìn)行統(tǒng)計(jì)(例如,每接收到一次調(diào)用某API的請求,就對該API的請求次數(shù)加一,然后計(jì)算在一定時(shí)間段內(nèi)的頻率),如果在接收到調(diào)用某個(gè)API的請求時(shí),發(fā)現(xiàn)調(diào)用該API的頻率已經(jīng)超過了某閾值,則可以將該請求丟棄。
[0073]S104:根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
[0074]第一服務(wù)器在接收到代理服務(wù)器發(fā)送的服務(wù)訪問請求之后,就可以將其作為安全的服務(wù)訪問請求處理,當(dāng)然,對于服務(wù)訪問請求中攜帶的服務(wù)訪問令牌等信息可以在第一服務(wù)器中進(jìn)行校驗(yàn),之后,就可以做出響應(yīng)消息。其中,服務(wù)訪問請求中一般會(huì)指定回傳地址,因此,第一服務(wù)器按照該回傳地址返回響應(yīng)消息即可。之后,JSSDK就可以接收到該響應(yīng)消息,并將其提供給第三方應(yīng)用進(jìn)行后續(xù)的顯示等處理。
[0075]也就是說,對于第一服務(wù)器而言,其接收到的服務(wù)訪問請求有兩種來源,一直是源自JSSDK,對于這種服務(wù)訪問請求,需要首先發(fā)送到代理服務(wù)器進(jìn)行安全性校驗(yàn),另一種就是源自代理服務(wù)器,對于這種服務(wù)訪問請求,第一服務(wù)器可以作為安全的請求來看待,直接獲取到相應(yīng)的數(shù)據(jù)并返回響應(yīng)消息。
[0076]總之,在本申請實(shí)施例中,第三方應(yīng)用是通過瀏覽器中集成的JSSDK來發(fā)送服務(wù)訪問請求,這樣,如果其他的第三方應(yīng)用要偽造該服務(wù)訪問請求,就需要獲知瀏覽器中HTTP協(xié)議的所有參數(shù),因此,提高了偽造的難度。對于第一服務(wù)器而言,在接收到JSSDK發(fā)送的服務(wù)訪問請求后,還需要發(fā)送到代理服務(wù)器進(jìn)行安全性校驗(yàn),因此,第一服務(wù)器只有在重新接收到代理服務(wù)器發(fā)送的服務(wù)訪問請求時(shí),才會(huì)做出響應(yīng),因此,保證了安全性。其中,還可以對各個(gè)第三方應(yīng)用可以調(diào)用的API進(jìn)行限制,使得一個(gè)第三方應(yīng)用只能調(diào)用有限的幾個(gè)API,這樣,即使出現(xiàn)服務(wù)訪問請求被偽造的情況,也可以使得偽造方只能獲取到API權(quán)限組內(nèi)的部分信息,保證用戶的大部分信息都是安全的。
[0077]需要說明的是,在現(xiàn)有技術(shù)中,為了防止其他第三方應(yīng)用冒名頂替,一般是將第三方應(yīng)用的標(biāo)識信息(在第三方應(yīng)用注冊時(shí),由第一服務(wù)器提供)、用戶的賬戶信息(用戶在第一服務(wù)器中注冊的賬戶信息)等組裝在API參數(shù)中,之后還要利用該第三方應(yīng)用的私鑰進(jìn)行數(shù)字簽名,然后再發(fā)送到第一服務(wù)器,第一服務(wù)器在收到帶有數(shù)字簽名的服務(wù)訪問請求后,先通過簽名信息對第三方應(yīng)用進(jìn)行身份驗(yàn)證,然后再利用其中攜帶的信息進(jìn)行安全性校驗(yàn)。
[0078]但是,上述這種安全性校驗(yàn)方式中至少存在以下問題:由于需要對服務(wù)訪問請求進(jìn)行數(shù)字簽名,因此,這就要求在發(fā)送一個(gè)服務(wù)訪問請求后,執(zhí)行寫cookies的操作。如果是在本申請實(shí)施例中,由于是由JSSDK發(fā)送的服務(wù)訪問請求,因此就需要由JSSDK執(zhí)行寫cookies的操作。但是,在實(shí)際應(yīng)用中,雖然第一服務(wù)器一般是主業(yè)務(wù)平臺(例如某電子商務(wù)交易平臺等等)的一部分,但是第一服務(wù)器的cookies與主業(yè)務(wù)平臺的cookies是相互獨(dú)立的,因此,如果由JSSDK對主業(yè)務(wù)平臺的cookies執(zhí)行跨應(yīng)用的寫操作,可能會(huì)使得cookies存在不安全性。
[0079]為了避免JSSDK對主業(yè)務(wù)平臺的cookies執(zhí)行寫操作,在本申請實(shí)施例中,可以實(shí)行免簽名策略,也就是說,JSSDK在組裝好服務(wù)訪問請求后,可以直接向第一服務(wù)器發(fā)送服務(wù)訪問請求。對于第一服務(wù)器而言,在接收到服務(wù)訪問請求后,首先判斷請求的來源,也就是判斷請求的發(fā)送者是否為JSSDK,如果是,則將該服務(wù)訪問請求發(fā)送到一個(gè)代理服務(wù)器進(jìn)行安全性校驗(yàn),如果代理服務(wù)器校驗(yàn)通過了,再重新將服務(wù)訪問請求發(fā)送給第一服務(wù)器。由于代理服務(wù)器能夠?qū)Ψ?wù)訪問請求的安全性進(jìn)行校驗(yàn),而第一服務(wù)器只信任代理服務(wù)器重新發(fā)送的服務(wù)訪問請求,因此,通過這一系列的措施就可以代替數(shù)字簽名,保證安全性。
[0080]實(shí)施例二
[0081]以上實(shí)施例一從第一服務(wù)器的角度對本申請實(shí)施例提供的技術(shù)方案進(jìn)行了介紹,在本實(shí)施例二中,將從代理服務(wù)器的角度對本申請實(shí)施例提供的技術(shù)方案進(jìn)行介紹。參見圖2,代理服務(wù)器角度的對第三方應(yīng)用進(jìn)行服務(wù)訪問控制方法,可以包括以下步驟:
[0082]S201:接收第一服務(wù)器發(fā)送的服務(wù)訪問請求;所述服務(wù)訪問請求為第三方應(yīng)用通過JSSDK發(fā)送到第一服務(wù)器的服務(wù)訪問請求;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地;
[0083]S202:根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn);
[0084]其中,服務(wù)訪問請求可以為調(diào)用指定API的請求,具體的,可以在服務(wù)訪問請求中攜帶有第三方應(yīng)用的標(biāo)識信息,此時(shí),具體在進(jìn)行安全性校驗(yàn)時(shí),可以根據(jù)第三方應(yīng)用的標(biāo)識信息以及預(yù)置的第三方應(yīng)用與可調(diào)用API之間的對應(yīng)關(guān)系,判斷該第三方應(yīng)用是否具有調(diào)用當(dāng)前指定API的權(quán)限,如果有,則此項(xiàng)校驗(yàn)通過,否則,就可以將該請求丟棄。
[0085]另外,服務(wù)訪問請求中還可以攜帶有第三方應(yīng)用的refer地址,具體在進(jìn)行安全性校驗(yàn)時(shí),可以根據(jù)各個(gè)第三方應(yīng)用的refer地址與標(biāo)識信息之間的對應(yīng)關(guān)系,判斷當(dāng)前服務(wù)訪問請求中攜帶的第三方應(yīng)用的refer地址及標(biāo)識信息之間的對應(yīng)關(guān)系是否正確。
[0086]S203:如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
[0087]如果針對某服務(wù)訪問請求進(jìn)行的所有校驗(yàn)都通過,則可以重新發(fā)送到第一服務(wù)器,第一服務(wù)器就可以將代理服務(wù)器發(fā)送的服務(wù)器請求作為安全的請求,并按照指定的回傳地址返回響應(yīng)消息即可。
[0088]實(shí)施例三
[0089]該實(shí)施例三從JSSDK的角度對本申請實(shí)施例提供的技術(shù)方案進(jìn)行介紹。其中,第三方應(yīng)用中添加有第一服務(wù)器中特定功能對應(yīng)的JS組件,JS組件的代碼自動(dòng)將第一服務(wù)器提供的JSSDK下載到第三方應(yīng)用本地,參見圖3,JSSDK角度的對第三方應(yīng)用進(jìn)行服務(wù)訪問控制方法可以包括以下步驟:
[0090]S301:監(jiān)控用戶發(fā)出的與所述特定功能相關(guān)的操作指令;
[0091]S302:接收到所述操作指令后,生成服務(wù)訪問請求;
[0092]具體生成服務(wù)訪問請求時(shí),可以是確定出需要調(diào)用的API,并組裝API參數(shù),生成調(diào)用API的請求。其中,在組裝API參數(shù)時(shí),可以將用于進(jìn)行安全性校驗(yàn)的信息組裝在API參數(shù)中。例如,可以包括第一服務(wù)器頒發(fā)給第三方應(yīng)用的標(biāo)識信息,以便代理服務(wù)器根據(jù)第三方應(yīng)用的標(biāo)識信息以及預(yù)置的第三方應(yīng)用與可調(diào)用API之間的對應(yīng)關(guān)系,判斷該第三方應(yīng)用是否具有調(diào)用所述指定API的權(quán)限。
[0093]還可以將第三方應(yīng)用的refer地址組裝到API參數(shù)中,以便代理服務(wù)器根據(jù)各個(gè)第三方應(yīng)用的refer地址與標(biāo)識信息之間的一一對應(yīng)關(guān)系,判斷服務(wù)訪問請求中攜帶的第三方應(yīng)用的refer地址及標(biāo)識信息之間的對應(yīng)關(guān)系是否正確。
[0094]另外,還可以將第一服務(wù)器為第三方應(yīng)用頒發(fā)的服務(wù)訪問令牌組裝到API參數(shù)中,這樣,第一服務(wù)器可以根據(jù)服務(wù)訪問令牌確定第三方應(yīng)用是否是在經(jīng)過用戶允許的情況下發(fā)送的所述服務(wù)訪問請求。
[0095]S303:將所述服務(wù)訪問請求發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器在判斷出所述服務(wù)訪問請求是由JSSDK發(fā)出的之后,將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器進(jìn)行安全性校驗(yàn),并在校驗(yàn)通過后返回響應(yīng)消息;
[0096]服務(wù)訪問請求組裝完成之后,無需進(jìn)行簽名,JSSDK就可以根據(jù)第一服務(wù)器的URL,向第一服務(wù)器發(fā)送服務(wù)訪問請求。通過后續(xù)發(fā)送到代理服務(wù)器校驗(yàn)等一系列流程來代替簽名過程確保安全性。
[0097]S304:接收所述第一服務(wù)器返回的響應(yīng)消息,并提供給所述第三方應(yīng)用進(jìn)行處理。
[0098]最后,JSSDK可以接收第一服務(wù)器返回的響應(yīng)消息,并提供給第三方應(yīng)用進(jìn)行后續(xù)的界面顯示等處理。
[0099]需要說明的是,以上實(shí)施例二及實(shí)施例三與實(shí)施例一相比,僅僅是描述的角度不同,具體的實(shí)現(xiàn)方案是相同的,因此,相關(guān)的技術(shù)細(xì)節(jié)可以相互參見,這里不再贅述。
[0100]為了更好地理解本申請實(shí)施例提供的技術(shù)方案,下面通過一個(gè)具體的例子,對本申請實(shí)施例進(jìn)行介紹。
[0101]假設(shè)某第三方網(wǎng)站中添加了某電子商務(wù)交易平臺中的“購物車”功能對應(yīng)的JS組件,則用戶可以在該第三方網(wǎng)站中選擇自己喜歡的商品,并進(jìn)行“加入購物車”操作。
[0102]此時(shí),JSSDK就可以判斷該用戶是否已經(jīng)登錄到電子商務(wù)交易平臺,如果尚未登錄,則可以跳轉(zhuǎn)至登錄界面提示用戶進(jìn)行登錄;如果已經(jīng)登錄,則可以從電子商務(wù)交易平臺的會(huì)話參數(shù)中讀取出一些信息,包括用戶的賬戶信息、第一服務(wù)器頒發(fā)的服務(wù)訪問令牌等,將這些信息連同第三方網(wǎng)站的APPkeyaefer地址等信息組裝到API參數(shù)中,并將調(diào)用API的請求發(fā)送到第一服務(wù)器。當(dāng)然,調(diào)用API的請求中還會(huì)攜帶有具體的業(yè)務(wù)數(shù)據(jù),例如用戶選擇的商品的彳目息,等等。
[0103]第一服務(wù)器在收到服務(wù)訪問請求后,發(fā)現(xiàn)是由JSSDK發(fā)送來的,則可以將該請求轉(zhuǎn)發(fā)給代理服務(wù)器。
[0104]代理服務(wù)器收到服務(wù)訪問請求后,可以根據(jù)其中攜帶的信息進(jìn)行安全性校驗(yàn),包括對第三方網(wǎng)站對應(yīng)的API權(quán)限組、refer地址與APPkey之間的對應(yīng)關(guān)系等信息進(jìn)行校驗(yàn),校驗(yàn)通過后,就可以重新將服務(wù)訪問請求發(fā)送到第一服務(wù)器。如果校驗(yàn)未通過,則可以返回添加購物車失敗的消息。
[0105]第一服務(wù)器重新接收到服務(wù)訪問請求后,可以將請求發(fā)送方的IP地址與預(yù)置的IP地址白名單進(jìn)行比對,如果出現(xiàn)在IP地址白名單中,則證明是來自代理服務(wù)器的服務(wù)訪問請求,因此,可以作為安全可信的服務(wù)訪問請求來處理,根據(jù)請求中攜帶的業(yè)務(wù)信息執(zhí)行將指定商品加入指定用戶購物車的操作,并根據(jù)請求中指定的回傳地址返回響應(yīng)消息。
[0106]JSSDK將響應(yīng)消息提供給第三方應(yīng)用中購物車功能對應(yīng)的JS組件,進(jìn)而,可以在第三方網(wǎng)站中顯示“添加購物車成功”等信息。
[0107]與本申請實(shí)施例一提供的對第三方應(yīng)用進(jìn)行服務(wù)訪問控制方法相對應(yīng),本申請實(shí)施例還提供了一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制系統(tǒng),參見圖4,該系統(tǒng)可以包括:
[0108]第一判斷單元401,用于接收到服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為預(yù)置的JS軟件開發(fā)工具包JSSDK ;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地;
[0109]發(fā)送單元402,用于如果第一判斷單元401的判斷結(jié)果為是,則將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器,以便所述代理服務(wù)器根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到第一服務(wù)器;
[0110]第二判斷單元403,用于重新接收到所述服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為代理服務(wù)器;
[0111]響應(yīng)單元404,用于如果第二判斷單元403的判斷結(jié)果為是,則根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
[0112]其中,所述服務(wù)訪問請求為調(diào)用指定應(yīng)用程序編程接口 API的請求,所述服務(wù)訪問請求中攜帶有第三方應(yīng)用的標(biāo)識信息;所述標(biāo)識信息為第一服務(wù)器為所述第三方應(yīng)用頒發(fā)的標(biāo)識信息;相應(yīng)的,代理服務(wù)器可以根據(jù)第三方應(yīng)用的標(biāo)識信息以及預(yù)置的第三方應(yīng)用與可調(diào)用API之間的對應(yīng)關(guān)系,判斷該第三方應(yīng)用是否具有調(diào)用所述指定API的權(quán)限。
[0113]在一種優(yōu)選的實(shí)施方式中,服務(wù)訪問請求中還可以攜帶有所述第三方應(yīng)用的refer地址,所述refer地址與第一服務(wù)器頒發(fā)的標(biāo)識信息一一對應(yīng);此時(shí),代理服務(wù)器還可以根據(jù)各個(gè)第三方應(yīng)用的refer地址與標(biāo)識信息之間的對應(yīng)關(guān)系,判斷所述服務(wù)訪問請求中攜帶的第三方應(yīng)用的refer地址及標(biāo)識信息之間的對應(yīng)關(guān)系是否正確。
[0114]具體實(shí)現(xiàn)時(shí),第二判斷單元403具體可以用于:
[0115]判斷所述請求的發(fā)送方的IP地址是否處于預(yù)置的IP地址白名單中;其中,所述預(yù)置的IP地址白名單中保存有各個(gè)代理服務(wù)器的IP地址。
[0116]在實(shí)際應(yīng)用中,該系統(tǒng)還可以包括:
[0117]授權(quán)單元,用于接收第三方應(yīng)用的授權(quán)請求,根據(jù)所述第三方應(yīng)用在注冊時(shí)申請的權(quán)限,生成授權(quán)界面,并返回,以便用戶根據(jù)所述授權(quán)界面對所述第三方應(yīng)用進(jìn)行授權(quán)。
[0118]另外,為了便于第一服務(wù)器判斷一服務(wù)訪問請求是否為在得到用戶允許的情況下發(fā)出的,該系統(tǒng)還可以包括:
[0119]令牌生成單元,用于在接收到用戶的確認(rèn)授權(quán)的消息后,生成服務(wù)訪問令牌并寫到cookies中,以便在所述服務(wù)訪問請求中攜帶所述服務(wù)訪問令牌,所述第一服務(wù)器根據(jù)所述服務(wù)訪問令牌確定所述第三方應(yīng)用是否是在經(jīng)過用戶允許的情況下發(fā)送的所述服務(wù)訪問請求。
[0120]其中,在本申請實(shí)施例中,所述服務(wù)訪問請求未經(jīng)過簽名處理,以避免JSSDK對主業(yè)務(wù)平臺的cookies執(zhí)行寫操作。
[0121]與本申請實(shí)施例二提供的方法相對應(yīng),本申請實(shí)施例還提供了一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的代理服務(wù)器,參見圖5,該代理服務(wù)器可以包括:
[0122]請求接收單元501,用于接收第一服務(wù)器發(fā)送的服務(wù)訪問請求;所述服務(wù)訪問請求為第三方應(yīng)用通過JSSDK發(fā)送到第一服務(wù)器的服務(wù)訪問請求;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地;
[0123]校驗(yàn)單元502,用于根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn);
[0124]請求發(fā)送單元503,用于如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
[0125]其中,所述服務(wù)訪問請求為調(diào)用指定應(yīng)用程序編程接口 API的請求,所述服務(wù)訪問請求中攜帶有第三方應(yīng)用的標(biāo)識信息;所述標(biāo)識信息為第一服務(wù)器為所述第三方應(yīng)用頒發(fā)的標(biāo)識信息;
[0126]所述校驗(yàn)單元502具體可以包括:
[0127]第一校驗(yàn)子單元,用于根據(jù)所述第三方應(yīng)用的標(biāo)識信息以及預(yù)置的第三方應(yīng)用與可調(diào)用API之間的對應(yīng)關(guān)系,判斷該第三方應(yīng)用是否具有調(diào)用所述指定API的權(quán)限。
[0128]其中,所述服務(wù)訪問請求中還可以攜帶有所述第三方應(yīng)用的refer地址,所述refer地址與第一服務(wù)器頒發(fā)的標(biāo)識信息一一對應(yīng);
[0129]所述校驗(yàn)單元502還可以包括:
[0130]第二校驗(yàn)子單元,用于根據(jù)各個(gè)第三方應(yīng)用的refer地址與標(biāo)識信息之間的對應(yīng)關(guān)系,判斷所述服務(wù)訪問請求中攜帶的第三方應(yīng)用的refer地址及標(biāo)識信息之間的對應(yīng)關(guān)系是否正確。
[0131]在實(shí)際應(yīng)用中,代理服務(wù)器還可以包括:
[0132]調(diào)用頻率統(tǒng)計(jì)單元,用于統(tǒng)計(jì)各個(gè)API被調(diào)用的頻率;
[0133]控制單元,用于當(dāng)收到調(diào)用某API的請求時(shí),判斷該API被調(diào)用的頻率是否達(dá)到預(yù)置的閾值,如果是,則將該請求丟棄。
[0134]與本申請實(shí)施例三提供的方法相對應(yīng),本申請實(shí)施例還提供了一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制裝置,其中,所述第三方應(yīng)用中添加有第一服務(wù)器中特定功能對應(yīng)的JS組件,所述JS組件的代碼自動(dòng)將第一服務(wù)器提供的JSSDK下載到第三方應(yīng)用本地,所述裝置可以對應(yīng)于JSSDK,參見圖6,該裝置具體可以包括:
[0135]監(jiān)控單元601,用于監(jiān)控用戶發(fā)出的與所述特定功能相關(guān)的操作指令;
[0136]請求生成單元602,用于接收到所述操作指令后,生成服務(wù)訪問請求;
[0137]請求發(fā)送單元603,用于將所述服務(wù)訪問請求發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器在判斷出所述服務(wù)訪問請求是由JSSDK發(fā)出的之后,將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器進(jìn)行安全性校驗(yàn),并在校驗(yàn)通過后返回響應(yīng)消息;
[0138]響應(yīng)接收單元604,用于接收所述第一服務(wù)器返回的響應(yīng)消息,并提供給所述第三方應(yīng)用進(jìn)行處理。
[0139]其中,所述請求生成單元602具體可以用于:
[0140]接收到所述操作指令后,確定需要調(diào)用的API,并組裝API參數(shù),生成調(diào)用API的請求。
[0141]其中,API參數(shù)中包括第一服務(wù)器頒發(fā)給第三方應(yīng)用的標(biāo)識信息,以便代理服務(wù)器根據(jù)第三方應(yīng)用的標(biāo)識信息以及預(yù)置的第三方應(yīng)用與可調(diào)用API之間的對應(yīng)關(guān)系,判斷該第三方應(yīng)用是否具有調(diào)用所述指定API的權(quán)限。
[0142]API參數(shù)中還可以包括所述第三方應(yīng)用的refer地址,以便代理服務(wù)器根據(jù)各個(gè)第三方應(yīng)用的refer地址與標(biāo)識信息之間的一一對應(yīng)關(guān)系,判斷服務(wù)訪問請求中攜帶的第三方應(yīng)用的refer地址及標(biāo)識信息之間的對應(yīng)關(guān)系是否正確。
[0143]另外,API參數(shù)中還可以包括第一服務(wù)器為所述第三方應(yīng)用頒發(fā)的服務(wù)訪問令牌,以便第一服務(wù)器根據(jù)服務(wù)訪問令牌確定第三方應(yīng)用是否是在經(jīng)過用戶允許的情況下發(fā)送的所述服務(wù)訪問請求。
[0144]總之,在本申請實(shí)施例中,第三方應(yīng)用是通過瀏覽器中集成的JSSDK來發(fā)送服務(wù)訪問請求,這樣,如果其他的第三方應(yīng)用要偽造該服務(wù)訪問請求,就需要獲知瀏覽器中HTTP協(xié)議的所有參數(shù),因此,提高了偽造的難度。對于第一服務(wù)器而言,在接收到JSSDK發(fā)送的服務(wù)訪問請求后,還需要發(fā)送到代理服務(wù)器進(jìn)行安全性校驗(yàn),因此,第一服務(wù)器只有在重新接收到代理服務(wù)器發(fā)送的服務(wù)訪問請求時(shí),才會(huì)做出響應(yīng),因此,保證了安全性。其中,還可以對各個(gè)第三方應(yīng)用可以調(diào)用的API進(jìn)行限制,使得一個(gè)第三方應(yīng)用只能調(diào)用有限的幾個(gè)API,這樣,即使出現(xiàn)服務(wù)訪問請求被偽造的情況,也可以使得偽造方只能獲取到API權(quán)限組內(nèi)的部分信息,保證用戶的大部分信息都是安全的。
[0145]通過以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請可借助軟件加必需的通用硬件平臺的方式來實(shí)現(xiàn)?;谶@樣的理解,本申請的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。
[0146]本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見即可,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處。尤其,對于系統(tǒng)或系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述得比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。以上所描述的系統(tǒng)及系統(tǒng)實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
[0147]以上對本申請所提供的對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法、裝置及系統(tǒng),進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對本申請的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本申請的方法及其核心思想;同時(shí),對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請的思想,在【具體實(shí)施方式】及應(yīng)用范圍上均會(huì)有改變之處。綜上所述,本說明書內(nèi)容不應(yīng)理解為對本申請的限制。
【權(quán)利要求】
1.一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法,其特征在于,所述第三方應(yīng)用中添加有所述第一服務(wù)器中特定功能對應(yīng)的JS組件,所述方法包括: 接收到服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為預(yù)置的JS軟件開發(fā)工具包JSSDK ;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地; 如果是,則將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器,以便所述代理服務(wù)器根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到第一服務(wù)器; 重新接收到所述服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為代理服務(wù)器; 如果是,則根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述服務(wù)訪問請求為調(diào)用指定應(yīng)用程序編程接口 API的請求,所述服務(wù)訪問請求中攜帶有第三方應(yīng)用的標(biāo)識信息;所述標(biāo)識信息為第一服務(wù)器為所述第三方應(yīng)用頒發(fā)的標(biāo)識信息; 所述代理服務(wù)器根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),包括: 所述代理服務(wù)器根據(jù)所述第三方應(yīng)用的標(biāo)識信息以及預(yù)置的第三方應(yīng)用與可調(diào)用API之間的對應(yīng)關(guān)系,判斷該第三方應(yīng)用是否具有調(diào)用所述指定API的權(quán)限。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述服務(wù)訪問請求中還攜帶有所述第三方應(yīng)用的refer地址,所述refer地址與第一服務(wù)器頒發(fā)的標(biāo)識信息一一對應(yīng); 所述代理服務(wù)器根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),還包括: 根據(jù)各個(gè)第三方應(yīng)用的refer地址與標(biāo)識信息之間的對應(yīng)關(guān)系,判斷所述服務(wù)訪問請求中攜帶的第三方應(yīng)用的refer地址及標(biāo)識信息之間的對應(yīng)關(guān)系是否正確。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述判斷所述請求的發(fā)送方是否為代理服務(wù)器包括: 判斷所述請求的發(fā)送方的IP地址是否處于預(yù)置的IP地址白名單中;其中,所述預(yù)置的IP地址白名單中保存有各個(gè)代理服務(wù)器的IP地址。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法之前還包括: 接收第三方應(yīng)用的授權(quán)請求,根據(jù)所述第三方應(yīng)用在注冊時(shí)申請的權(quán)限,生成授權(quán)界面,并返回,以便用戶根據(jù)所述授權(quán)界面對所述第三方應(yīng)用進(jìn)行授權(quán)。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,還包括: 在接收到用戶的確認(rèn)授權(quán)的消息后,生成服務(wù)訪問令牌并寫到cookies中,以便在所述服務(wù)訪問請求中攜帶所述服務(wù)訪問令牌,所述第一服務(wù)器根據(jù)所述服務(wù)訪問令牌確定所述第三方應(yīng)用是否是在經(jīng)過用戶允許的情況下發(fā)送的所述服務(wù)訪問請求。
7.根據(jù)權(quán)利要求1至6任一項(xiàng)所述的方法,其特征在于,所述服務(wù)訪問請求未經(jīng)過簽名處理。
8.一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法,其特征在于,所述第三方應(yīng)用中添加有第一服務(wù)器中特定功能對應(yīng)的JS組件,所述方法包括: 接收第一服務(wù)器發(fā)送的服務(wù)訪問請求;所述服務(wù)訪問請求為第三方應(yīng)用通過JSSDK發(fā)送到第一服務(wù)器的服務(wù)訪問請求;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地; 根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn); 如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,所述服務(wù)訪問請求為調(diào)用指定應(yīng)用程序編程接口 API的請求,所述服務(wù)訪問請求中攜帶有第三方應(yīng)用的標(biāo)識信息;所述標(biāo)識信息為第一服務(wù)器為所述第三方應(yīng)用頒發(fā)的標(biāo)識信息; 所述根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),包括: 根據(jù)所述第三方應(yīng)用的標(biāo)識信息以及預(yù)置的第三方應(yīng)用與可調(diào)用API之間的對應(yīng)關(guān)系,判斷該第三方應(yīng)用是否具有調(diào)用所述指定API的權(quán)限。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述服務(wù)訪問請求中還攜帶有所述第三方應(yīng)用的refer地址,所述refer地址與第一服務(wù)器頒發(fā)的標(biāo)識信息一一對應(yīng); 所述根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),還包括: 根據(jù)各個(gè)第三方應(yīng)用的refer地址與標(biāo)識信息之間的對應(yīng)關(guān)系,判斷所述服務(wù)訪問請求中攜帶的第三方應(yīng)用的refer地址及標(biāo)識信息之間的對應(yīng)關(guān)系是否正確。
11.根據(jù)權(quán)利要求9或10任一項(xiàng)所述的方法,其特征在于,還包括: 統(tǒng)計(jì)各個(gè)API被調(diào)用的頻率; 當(dāng)收到調(diào)用某API的請求時(shí),判斷該API被調(diào)用的頻率是否達(dá)到預(yù)置的閾值,如果是,則將該請求丟棄。
12.—種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的方法,其特征在于,所述第三方應(yīng)用中添加有第一服務(wù)器中特定功能對應(yīng)的JS組件,所述JS組件的代碼自動(dòng)將第一服務(wù)器提供的JSSDK下載到第三方應(yīng)用本地,所述方法包括由所述JSSDK執(zhí)行的以下步驟: 監(jiān)控用戶發(fā)出的與所述特定功能相關(guān)的操作指令; 接收到所述操作指令后,生成服務(wù)訪問請求; 將所述服務(wù)訪問請求發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器在判斷出所述服務(wù)訪問請求是由JSSDK發(fā)出的之后,將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器進(jìn)行安全性校驗(yàn),并在校驗(yàn)通過后返回響應(yīng)消息; 接收所述第一服務(wù)器返回的響應(yīng)消息,并提供給所述第三方應(yīng)用進(jìn)行處理。
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,所述接收到所述操作指令后,生成服務(wù)訪問請求包括: 接收到所述操作指令后,確定需要調(diào)用的API,并組裝API參數(shù),生成調(diào)用API的請求。
14.根據(jù)權(quán)利要求13所述的方法,其特征在于,所述API參數(shù)中包括第一服務(wù)器頒發(fā)給第三方應(yīng)用的標(biāo)識信息,以便所述代理服務(wù)器根據(jù)所述第三方應(yīng)用的標(biāo)識信息以及預(yù)置的第三方應(yīng)用與可調(diào)用API之間的對應(yīng)關(guān)系,判斷該第三方應(yīng)用是否具有調(diào)用所述指定API的權(quán)限。
15.根據(jù)權(quán)利要求14所述的方法,其特征在于,所述API參數(shù)中還包括所述第三方應(yīng)用的refer地址,以便所述代理服務(wù)器根據(jù)各個(gè)第三方應(yīng)用的refer地址與標(biāo)識信息之間的一一對應(yīng)關(guān)系,判斷所述服務(wù)訪問請求中攜帶的第三方應(yīng)用的refer地址及標(biāo)識信息之間的對應(yīng)關(guān)系是否正確。
16.根據(jù)權(quán)利要求13所述的方法,其特征在于,所述API參數(shù)中包括第一服務(wù)器為所述第三方應(yīng)用頒發(fā)的服務(wù)訪問令牌,以便所述第一服務(wù)器根據(jù)所述服務(wù)訪問令牌確定所述第三方應(yīng)用是否是在經(jīng)過用戶允許的情況下發(fā)送的所述服務(wù)訪問請求。
17.一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的系統(tǒng),其特征在于,所述第三方應(yīng)用中添加有所述第一服務(wù)器中特定功能對應(yīng)的JS組件,所述系統(tǒng)包括: 第一判斷單元,用于接收到服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為預(yù)置的JS軟件開發(fā)工具包JSSDK ;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地; 發(fā)送單元,用于如果第一判斷單元的判斷結(jié)果為是,則將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器,以便所述代理服務(wù)器根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn),如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到第一服務(wù)器;第二判斷單元,用于重新接收到所述服務(wù)訪問請求后,判斷所述服務(wù)訪問請求的發(fā)送方是否為代理服務(wù)器; 響應(yīng)單元,用于如果第二判斷單元的判斷結(jié)果為是,則根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
18.一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的代理服務(wù)器,其特征在于,所述第三方應(yīng)用中添加有第一服務(wù)器中特定功能對應(yīng)的JS組件,所述代理服務(wù)器包括: 請求接收單元,用于接收第一服務(wù)器發(fā)送的服務(wù)訪問請求;所述服務(wù)訪問請求為第三方應(yīng)用通過JSSDK發(fā)送到第一服務(wù)器的服務(wù)訪問請求;其中,所述JSSDK由第一服務(wù)器提供,并由第三方應(yīng)用中添加的JS組件代碼自動(dòng)將所述JSSDK下載到第三方應(yīng)用本地; 校驗(yàn)單元,用于根據(jù)所述服務(wù)訪問請求中攜帶的信息對所述服務(wù)訪問請求進(jìn)行安全性校驗(yàn); 請求發(fā)送單元,用于如果校驗(yàn)通過,則將所述服務(wù)訪問請求重新發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器根據(jù)所述服務(wù)訪問請求中指定的回傳地址返回響應(yīng)消息。
19.一種對第三方應(yīng)用進(jìn)行服務(wù)訪問控制的裝置,其特征在于,所述第三方應(yīng)用中添加有第一服務(wù)器中特定功能對應(yīng)的JS組件,所述JS組件的代碼自動(dòng)將第一服務(wù)器提供的JSSDK下載到第三方應(yīng)用本地,所述裝置包括: 監(jiān)控單元,用于監(jiān)控用戶發(fā)出的與所述特定功能相關(guān)的操作指令; 請求生成單元,用于接收到所述操作指令后,生成服務(wù)訪問請求; 請求發(fā)送單元,用于將所述服務(wù)訪問請求發(fā)送到所述第一服務(wù)器,以便所述第一服務(wù)器在判斷出所述服務(wù)訪問請求是由JSSDK發(fā)出的之后,將所述服務(wù)訪問請求發(fā)送到預(yù)置的代理服務(wù)器進(jìn)行安全性校驗(yàn),并在校驗(yàn)通過后返回響應(yīng)消息; 響應(yīng)接收單元,用于接收所述第一服務(wù)器返回的響應(yīng)消息,并提供給所述第三方應(yīng)用進(jìn)行處理。
【文檔編號】H04L29/06GK104283841SQ201310274901
【公開日】2015年1月14日 申請日期:2013年7月2日 優(yōu)先權(quán)日:2013年7月2日
【發(fā)明者】陽際榮, 莊嬌艷, 崔婧 申請人:阿里巴巴集團(tuán)控股有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
湘西| 桂东县| 鹤壁市| 女性| 宝坻区| 舒城县| 时尚| 阿坝| 淳化县| 雷山县| 宁乡县| 康马县| 余庆县| 红桥区| 麻城市| 庆城县| 白山市| 永和县| 旌德县| 定边县| 永定县| 寿阳县| 天峻县| 高清| 鹿邑县| 黔西县| 寻甸| 曲阜市| 长治市| 衡阳县| 巴彦县| 余姚市| 南昌县| 昭觉县| 芒康县| 龙胜| 柘荣县| 通渭县| 视频| 濉溪县| 乳山市|