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

一種鑒權(quán)及業(yè)務(wù)調(diào)用方法、裝置和系統(tǒng)的制作方法

文檔序號(hào):7758343閱讀:158來(lái)源:國(guó)知局
專利名稱:一種鑒權(quán)及業(yè)務(wù)調(diào)用方法、裝置和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)業(yè)務(wù)技術(shù)領(lǐng)域,尤其涉及一種鑒權(quán)方法和裝置、以及一種業(yè)務(wù)調(diào)用方法和系統(tǒng)。
背景技術(shù)
隨著第三代移動(dòng)通信系統(tǒng)(3rd Generation,簡(jiǎn)稱3G)和移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)的大力推進(jìn),網(wǎng)絡(luò)運(yùn)營(yíng)商為用戶提供越來(lái)越豐富的增值業(yè)務(wù)的同時(shí),也為第三方SP(SerVice Provider,服務(wù)提供商)的業(yè)務(wù)整合提供越來(lái)越豐富的網(wǎng)絡(luò)能力資源,例如位置服務(wù)能力、 GIS (Geographic Information System,地理信息系統(tǒng))能力、游戲服務(wù)能力、代計(jì)費(fèi)能力、 IMS(IP Multimedia Subsystem,IP多媒體系統(tǒng))能力、短消息能力、多媒體消息能力、搜索引擎能力、云計(jì)算能力、Presence (呈現(xiàn))能力、Widget服務(wù)能力、即時(shí)通信能力等。一般來(lái)說(shuō),上述網(wǎng)絡(luò)能力資源基本上是通a^rvice (網(wǎng)絡(luò)服務(wù))或API (ApplicationProgramming hterface,應(yīng)用程序接口)的形式為用戶或第三方SP提供服務(wù)。本申請(qǐng)文件中,將上述krvice或API統(tǒng)稱為平臺(tái)能力API,而且平臺(tái)能力API大部分都是通過(guò)在終端上以客戶端應(yīng)用的方式進(jìn)行部署提供給用戶的,即用戶在使用相應(yīng)的業(yè)務(wù)之前,需要在用戶終端上安裝一個(gè)與該業(yè)務(wù)相關(guān)的客戶端應(yīng)用進(jìn)行業(yè)務(wù)使用和推廣,例如位置服務(wù)客戶端應(yīng)用、游戲客戶端應(yīng)用、MobileMarket應(yīng)用、Widget應(yīng)用、音樂(lè)隨身聽(tīng)?wèi)?yīng)用、飛信應(yīng)用等,這些業(yè)務(wù)形態(tài)均有別于以往的STK(SIM Tool Kit,用戶識(shí)別應(yīng)用發(fā)展工具)業(yè)務(wù)或 WAP(WirelessApplication Protocol,無(wú)線應(yīng)用協(xié)議)業(yè)務(wù)。但是,通過(guò)在用戶終端上以客戶端應(yīng)用的方式部署業(yè)務(wù),本身存在著極大的安全隱患例如,平臺(tái)能力API可能被非法用戶或非法第三方SP所使用;平臺(tái)能力API可能被假冒的客戶端應(yīng)用所調(diào)用;非法第三方SP可能提供假冒的平臺(tái)能力API供用戶使用;等等。 因此,亟待提供一種高效可靠的安全保護(hù)機(jī)制,用以保障基于平臺(tái)能力API的移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)的安全部署及運(yùn)營(yíng)。目前,網(wǎng)絡(luò)運(yùn)營(yíng)商普遍采用基于靜態(tài)令牌傳遞的鑒權(quán)機(jī)制保障移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)的安全部署和運(yùn)營(yíng),移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)的鑒權(quán)系統(tǒng)主要包括客戶端應(yīng)用、應(yīng)用服務(wù)器、鑒權(quán)服務(wù)器三個(gè)實(shí)體,如圖1所示,其中客戶端應(yīng)用是安裝在用戶終端上的客戶端應(yīng)用程序,客戶端應(yīng)用可以通過(guò)特定的接口訪問(wèn)鑒權(quán)服務(wù)器,完成獲取令牌的操作;應(yīng)用服務(wù)器處理由業(yè)務(wù)網(wǎng)關(guān)轉(zhuǎn)發(fā)的客戶端應(yīng)用的業(yè)務(wù)請(qǐng)求,并為客戶端應(yīng)用提供服務(wù);鑒權(quán)服務(wù)器存儲(chǔ)業(yè)務(wù)鑒權(quán)相關(guān)的用戶訂購(gòu)關(guān)系、以及業(yè)務(wù)訂購(gòu)狀態(tài)數(shù)據(jù),具有業(yè)務(wù)鑒權(quán)功能,并根據(jù)鑒權(quán)結(jié)果向客戶端應(yīng)用提供業(yè)務(wù)使用的令牌。移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)的鑒權(quán)流程,如圖2所示,包括如下步驟步驟1、客戶端應(yīng)用向鑒權(quán)服務(wù)器發(fā)起業(yè)務(wù)鑒權(quán)請(qǐng)求;步驟2、鑒權(quán)服務(wù)器檢查發(fā)起業(yè)務(wù)鑒權(quán)請(qǐng)求的用戶ID (標(biāo)識(shí)符)對(duì)應(yīng)的業(yè)務(wù)定購(gòu)狀態(tài),如果業(yè)務(wù)訂購(gòu)狀態(tài)合法,則產(chǎn)生指示該客戶端應(yīng)用可以使用應(yīng)用服務(wù)器所提供業(yè)務(wù)的令牌;客戶端應(yīng)用后續(xù)在訪問(wèn)應(yīng)用服務(wù)器時(shí)必須攜帶該令牌,以正常獲得相應(yīng)的服務(wù); 并且,為了保證令牌的安全性,令牌由鑒權(quán)服務(wù)器生成并已經(jīng)在鑒權(quán)服務(wù)器側(cè)進(jìn)行安全保護(hù);步驟3、鑒權(quán)服務(wù)器將產(chǎn)生的令牌攜帶在鑒權(quán)結(jié)果中返回給客戶端應(yīng)用;步驟4、客戶端應(yīng)用向應(yīng)用服務(wù)器發(fā)起業(yè)務(wù)請(qǐng)求,其中攜帶從鑒權(quán)服務(wù)器處獲取的令牌;步驟5、應(yīng)用服務(wù)器對(duì)業(yè)務(wù)請(qǐng)求中的令牌進(jìn)行驗(yàn)證;步驟6、驗(yàn)證通過(guò)后,應(yīng)用服務(wù)器在后續(xù)應(yīng)用會(huì)話中為客戶端應(yīng)用提供服務(wù);步驟7、應(yīng)用服務(wù)器在收到合法的令牌后,通告鑒權(quán)服務(wù)器,并在通告消息中攜帶該令牌,鑒權(quán)服務(wù)器可據(jù)此判斷服務(wù)是否已經(jīng)發(fā)生?,F(xiàn)有技術(shù)中,基于靜態(tài)令牌傳遞的鑒權(quán)機(jī)制存在如下的缺點(diǎn)1、現(xiàn)有基于靜態(tài)令牌傳遞的鑒權(quán)機(jī)制,在令牌獲取階段,僅鑒權(quán)服務(wù)器對(duì)用戶ID 對(duì)應(yīng)的業(yè)務(wù)訂購(gòu)狀態(tài)進(jìn)行鑒權(quán),而沒(méi)有考慮對(duì)客戶端應(yīng)用的合法性進(jìn)行鑒權(quán),導(dǎo)致假冒的客戶端應(yīng)用可能發(fā)起非法的業(yè)務(wù)請(qǐng)求,例如發(fā)起非法的計(jì)費(fèi)請(qǐng)求,從而導(dǎo)致惡意訂購(gòu)事件的發(fā)生。2、現(xiàn)有基于靜態(tài)令牌傳遞的鑒權(quán)機(jī)制,在業(yè)務(wù)發(fā)起階段,僅應(yīng)用服務(wù)器對(duì)客戶端應(yīng)用攜帶的令牌進(jìn)行鑒權(quán),而沒(méi)有考慮客戶端應(yīng)用對(duì)應(yīng)用服務(wù)器的鑒權(quán),導(dǎo)致假冒的應(yīng)用服務(wù)器可能對(duì)用戶提供非法的服務(wù)。3、現(xiàn)有基于靜態(tài)令牌傳遞的鑒權(quán)機(jī)制安全性差,用戶終端獲取的令牌能夠應(yīng)用于所有的業(yè)務(wù)請(qǐng)求中,無(wú)法防止令牌被攻擊者非法獲取后應(yīng)用于非法業(yè)務(wù)請(qǐng)求中。

發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種鑒權(quán)方法和裝置,用以實(shí)現(xiàn)業(yè)務(wù)平臺(tái)中的鑒權(quán)服務(wù)器對(duì)客戶端應(yīng)用的合法性認(rèn)證鑒權(quán)。本發(fā)明實(shí)施例還提供一種業(yè)務(wù)調(diào)用方法和系統(tǒng),用以提升平臺(tái)能力API的調(diào)用機(jī)制的安全可靠性。本發(fā)明實(shí)施例提供一種鑒權(quán)方法,包括在下載到用戶終端中的客戶端應(yīng)用滿足觸發(fā)條件時(shí),所述客戶端應(yīng)用中的客戶端鑒權(quán)模塊根據(jù)客戶端鑒權(quán)模塊本地存儲(chǔ)的與鑒權(quán)服務(wù)器共享的客戶端應(yīng)用密鑰ClientKey 生成第一消息認(rèn)證碼MACl ;并向所述鑒權(quán)服務(wù)器發(fā)送攜帶所述MACl的注冊(cè)請(qǐng)求,所述注冊(cè)請(qǐng)求中攜帶的MACl 供鑒權(quán)服務(wù)器根據(jù)與所述客戶端應(yīng)用共享的ClientKey對(duì)所述客戶端應(yīng)用進(jìn)行合法性認(rèn)證鑒權(quán)。本發(fā)明實(shí)施例提供另一種鑒權(quán)方法,包括鑒權(quán)服務(wù)器接收客戶端應(yīng)用中的客戶端鑒權(quán)模塊發(fā)送的注冊(cè)請(qǐng)求,其中攜帶根據(jù)客戶端鑒權(quán)模塊本地存儲(chǔ)的與鑒權(quán)服務(wù)器共享的客戶端應(yīng)用密鑰ClientKey生成的第一消息認(rèn)證碼MACl ;
所述鑒權(quán)服務(wù)器根據(jù)與所述客戶端鑒權(quán)模塊共享的clientKey,對(duì)接收到的注冊(cè)請(qǐng)求中攜帶的MACl進(jìn)行合法性認(rèn)證鑒權(quán),如果鑒權(quán)通過(guò)則確認(rèn)所述客戶端應(yīng)用合法。本發(fā)明實(shí)施例提供一種客戶端應(yīng)用,所述客戶端應(yīng)用中包括客戶端鑒權(quán)模塊,所述客戶端鑒權(quán)模塊中包括安全存儲(chǔ)單元,用于存儲(chǔ)與鑒權(quán)服務(wù)器共享的客戶端應(yīng)用密鑰clientKey ;生成單元,用于在下載到用戶終端中的客戶端應(yīng)用滿足觸發(fā)條件時(shí),根據(jù)所述安全存儲(chǔ)單元中存儲(chǔ)的clientKey生成第一消息認(rèn)證碼MACl ;控制單元,用于向所述鑒權(quán)服務(wù)器發(fā)送攜帶所述MACl的注冊(cè)請(qǐng)求,所述注冊(cè)請(qǐng)求中攜帶的MACl供鑒權(quán)服務(wù)器根據(jù)與所述客戶端應(yīng)用共享的clientKey對(duì)所述客戶端應(yīng)用進(jìn)行合法性認(rèn)證鑒權(quán)。本發(fā)明實(shí)施例提供一種鑒權(quán)服務(wù)器,包括存儲(chǔ)單元,用于存儲(chǔ)與每一個(gè)客戶端鑒權(quán)模塊共享的clientKey ;接收單元,用于接收客戶端應(yīng)用中的客戶端鑒權(quán)模塊發(fā)送的注冊(cè)請(qǐng)求,其中攜帶根據(jù)客戶端鑒權(quán)模塊本地存儲(chǔ)與鑒權(quán)服務(wù)器共享的客戶端應(yīng)用密鑰clientKey生成的第一消息認(rèn)證碼MACl ;認(rèn)證鑒權(quán)單元,用于根據(jù)與所述客戶端鑒權(quán)模塊共享的clientKey,對(duì)接收到的注冊(cè)請(qǐng)求中攜帶的MACl進(jìn)行合法性認(rèn)證鑒權(quán),如果鑒權(quán)通過(guò)則確認(rèn)所述客戶端應(yīng)用合法。本發(fā)明實(shí)施例提供一種業(yè)務(wù)調(diào)用方法,包括應(yīng)用程序接口 API訪問(wèn)控制模塊接收客戶端應(yīng)用發(fā)送的業(yè)務(wù)請(qǐng)求,其中攜帶根據(jù)從鑒權(quán)服務(wù)器中獲取到的鑒權(quán)因子生成的動(dòng)態(tài)令牌;API訪問(wèn)控制模塊根據(jù)鑒權(quán)服務(wù)器對(duì)所述業(yè)務(wù)請(qǐng)求中攜帶的動(dòng)態(tài)令牌的認(rèn)證結(jié)果確認(rèn)認(rèn)證通過(guò)時(shí),允許所述API調(diào)用模塊調(diào)用平臺(tái)能力API。本發(fā)明實(shí)施例提供一種業(yè)務(wù)調(diào)用系統(tǒng),包括客戶端應(yīng)用、應(yīng)用程序接口 API訪問(wèn)控制模塊和鑒權(quán)服務(wù)器,其中所述客戶端應(yīng)用,用于發(fā)送業(yè)務(wù)請(qǐng)求,其中攜帶根據(jù)從鑒權(quán)服務(wù)器中獲取到的鑒權(quán)因子生成的動(dòng)態(tài)令牌;所述API訪問(wèn)控制模塊,用于接收到所述業(yè)務(wù)請(qǐng)求之后,根據(jù)鑒權(quán)服務(wù)器對(duì)所述業(yè)務(wù)請(qǐng)求中攜帶的動(dòng)態(tài)令牌的認(rèn)證結(jié)果確認(rèn)認(rèn)證通過(guò)時(shí),允許所述API調(diào)用模塊調(diào)用平臺(tái)能力API ;所述鑒權(quán)服務(wù)器,用于對(duì)所述API訪問(wèn)控制模塊轉(zhuǎn)發(fā)的所述動(dòng)態(tài)令牌進(jìn)行認(rèn)證。本發(fā)明實(shí)施例提供另一種業(yè)務(wù)調(diào)用方法,包括應(yīng)用程序接口 API訪問(wèn)控制模塊接收客戶端應(yīng)用發(fā)送的業(yè)務(wù)請(qǐng)求,其中攜帶從 API訪問(wèn)控制模塊處獲取到的有效的臨時(shí)令牌;API訪問(wèn)控制模塊根據(jù)本地存儲(chǔ)的所述客戶端鑒權(quán)模塊的臨時(shí)令牌對(duì)所述業(yè)務(wù)請(qǐng)求中攜帶的臨時(shí)令牌進(jìn)行匹配;若匹配一致,則允許所述API調(diào)用模塊調(diào)用平臺(tái)能力API。本發(fā)明實(shí)施例提供另一種業(yè)務(wù)調(diào)用系統(tǒng),包括客戶端應(yīng)用和應(yīng)用程序接口 API訪問(wèn)控制模塊,其中所述客戶端應(yīng)用,用于發(fā)送業(yè)務(wù)請(qǐng)求,其中攜帶從API訪問(wèn)控制模塊處獲取到的有效的臨時(shí)令牌;所述API訪問(wèn)控制模塊,用于接收到所述業(yè)務(wù)請(qǐng)求之后,根據(jù)本地存儲(chǔ)的所述客戶端鑒權(quán)模塊的臨時(shí)令牌對(duì)所述業(yè)務(wù)請(qǐng)求中攜帶的臨時(shí)令牌進(jìn)行匹配;若匹配一致,則允許所述API調(diào)用模塊調(diào)用平臺(tái)能力API。本發(fā)明實(shí)施例提供的鑒權(quán)方法和裝置,支持業(yè)務(wù)平臺(tái)中的鑒權(quán)服務(wù)器對(duì)客戶端應(yīng)用的合法性認(rèn)證鑒權(quán),現(xiàn)有技術(shù)中僅針對(duì)用戶終端進(jìn)行身份認(rèn)證鑒權(quán),沒(méi)有考慮到假冒或被篡改過(guò)的客戶端應(yīng)用對(duì)平臺(tái)能力API的安全威脅,本發(fā)明實(shí)施例基于共享的ClientKey 所生成的MACl實(shí)現(xiàn)鑒權(quán)服務(wù)器對(duì)客戶端應(yīng)用的合法性認(rèn)證鑒權(quán)。本發(fā)明實(shí)施例提供的業(yè)務(wù)調(diào)用方法及系統(tǒng),解決了現(xiàn)有方案中的安全漏洞問(wèn)題。 現(xiàn)有方案中基于靜態(tài)令牌機(jī)制,用戶終端所獲取的令牌應(yīng)用于所有的業(yè)務(wù)請(qǐng)求中,而且無(wú)法防止令牌被攻擊者非法獲取后應(yīng)用于非法業(yè)務(wù)請(qǐng)求中,存在被重放攻擊可能。本發(fā)明實(shí)施例中,當(dāng)客戶端應(yīng)用發(fā)起業(yè)務(wù)請(qǐng)求時(shí),客戶端應(yīng)用基于鑒權(quán)因子生成動(dòng)態(tài)令牌或根據(jù)動(dòng)態(tài)令牌獲取到臨時(shí)令牌并添加到業(yè)務(wù)請(qǐng)求消息中,以防止重放攻擊等。本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書(shū)中闡述,并且,部分地從說(shuō)明書(shū)中變得顯而易見(jiàn),或者通過(guò)實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過(guò)在所寫的說(shuō)明書(shū)、權(quán)利要求書(shū)、以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。


圖1為現(xiàn)有技術(shù)中移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)的鑒權(quán)系統(tǒng)框圖;圖2為現(xiàn)有技術(shù)中移動(dòng)互聯(lián)網(wǎng)業(yè)務(wù)的鑒權(quán)流程圖;圖3為本發(fā)明實(shí)施例一中業(yè)務(wù)平臺(tái)與客戶端應(yīng)用系統(tǒng)架構(gòu)圖;圖4為本發(fā)明實(shí)施例二中客戶端應(yīng)用的注冊(cè)流程即鑒權(quán)方法流程圖;圖5為本發(fā)明實(shí)施例二中客戶端鑒權(quán)模塊的結(jié)構(gòu)框圖;圖6為本發(fā)明實(shí)施例二中鑒權(quán)服務(wù)器的結(jié)構(gòu)框圖;圖7為本發(fā)明實(shí)施例三中業(yè)務(wù)調(diào)用方法流程圖;圖8為本發(fā)明實(shí)施例四中臨時(shí)令牌獲取階段的處理流程圖;圖9為本發(fā)明實(shí)施例四中安全業(yè)務(wù)請(qǐng)求階段的處理流程圖。
具體實(shí)施例方式本發(fā)明實(shí)施例基于客戶端應(yīng)用的注冊(cè)機(jī)制和動(dòng)態(tài)令牌機(jī)制,提出一種可雙向鑒權(quán)的、可實(shí)現(xiàn)對(duì)用戶終端、客戶端應(yīng)用和業(yè)務(wù)平臺(tái)進(jìn)行鑒權(quán)的平臺(tái)能力API保護(hù)機(jī)制。本發(fā)明實(shí)施例中,為了避免開(kāi)發(fā)者或第三方SP在非法的客戶端應(yīng)用中非法濫用、重用客戶端應(yīng)用密鑰(本申請(qǐng)文件中稱為clientKey),在客戶端應(yīng)用的測(cè)試審核通過(guò)之后,由業(yè)務(wù)平臺(tái)將該客戶端應(yīng)用密鑰ClientKey安全存儲(chǔ)在客戶端應(yīng)用的客戶端鑒權(quán)模塊中,并通過(guò)基于客戶端應(yīng)用的MAC指紋機(jī)制的完整性保護(hù)方案將客戶端鑒權(quán)模塊與該客戶端應(yīng)用進(jìn)行綁定, 從而實(shí)現(xiàn)客戶端應(yīng)用密鑰clientKey對(duì)開(kāi)發(fā)者是不可知的;同時(shí),通過(guò)將開(kāi)發(fā)者提交的客戶端應(yīng)用的測(cè)試鑒權(quán)模塊置換為客戶端鑒權(quán)模塊,或者將測(cè)試鑒權(quán)模塊中預(yù)先指定的文件置換為預(yù)置有MAC指紋和clientKey (客戶端應(yīng)用密鑰)的文件,得到客戶端鑒權(quán)模塊,從而實(shí)現(xiàn)了 clientKey的安全分發(fā)。下載到用戶終端中的客戶端應(yīng)用首先通過(guò)注冊(cè)機(jī)制,基于用戶ID(標(biāo)識(shí)符)及客戶端應(yīng)用密鑰ClientKey等實(shí)現(xiàn)業(yè)務(wù)平臺(tái)中的鑒權(quán)服務(wù)器對(duì)用戶終端的身份認(rèn)證鑒權(quán)、客戶端應(yīng)用與業(yè)務(wù)平臺(tái)之間的雙向鑒權(quán)、獲取相應(yīng)的會(huì)話ID從而再獲取鑒權(quán)因子??蛻舳藨?yīng)用在調(diào)用平臺(tái)能力API之前,通過(guò)鑒權(quán)因子生成動(dòng)態(tài)令牌并添加到平臺(tái)能力API的業(yè)務(wù)請(qǐng)求中,以實(shí)現(xiàn)對(duì)平臺(tái)能力API的訪問(wèn)保護(hù);同時(shí),本發(fā)明實(shí)施例還提供一種高效的基于動(dòng)態(tài)更新的可重用令牌機(jī)制的平臺(tái)能力API的調(diào)用機(jī)制。以下結(jié)合說(shuō)明書(shū)附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說(shuō)明,應(yīng)當(dāng)理解,此處所描述的優(yōu)選實(shí)施例僅用于說(shuō)明和解釋本發(fā)明,并不用于限定本發(fā)明,并且在不沖突的情況下,本發(fā)明中的實(shí)施例及實(shí)施例中的特征可以相互組合。實(shí)施例一首先介紹本發(fā)明實(shí)施例涉及的系統(tǒng)架構(gòu),如圖3所示,包括平臺(tái)能力API,其中平臺(tái)能力API分為“運(yùn)行環(huán)境平臺(tái)能力API”和“開(kāi)發(fā)環(huán)境平臺(tái)能力API”,“運(yùn)行環(huán)境平臺(tái)能力API”主要在業(yè)務(wù)運(yùn)營(yíng)過(guò)程中被用戶終端所使用,而“開(kāi)發(fā)環(huán)境平臺(tái)能力API “主要在開(kāi)發(fā)測(cè)試過(guò)程中被開(kāi)發(fā)者與網(wǎng)絡(luò)運(yùn)營(yíng)商所使用,主要在開(kāi)發(fā)環(huán)境 SDK中進(jìn)行調(diào)用測(cè)試;鑒權(quán)服務(wù)器,用于存儲(chǔ)用戶終端、以及客戶端應(yīng)用的身份信息,并為運(yùn)行階段提供安全的身份信息及動(dòng)態(tài)令牌;API訪問(wèn)控制模塊,在業(yè)務(wù)平臺(tái)能力開(kāi)放引擎中進(jìn)行實(shí)現(xiàn),用于對(duì)客戶端應(yīng)用進(jìn)行合法性認(rèn)證鑒權(quán),以保護(hù)平臺(tái)能力API的安全,避免平臺(tái)能力API被非法調(diào)用或越權(quán)調(diào)用;客戶端鑒權(quán)模塊,用于封裝客戶端應(yīng)用與平臺(tái)能力API鑒權(quán)交互的所有功能,其中客戶端鑒權(quán)模塊中包括安全存儲(chǔ)單元,主要用于相關(guān)密鑰、鑒權(quán)因子和動(dòng)態(tài)令牌等敏感信息的安全存儲(chǔ),安全存儲(chǔ)可以基于軟件安全加固技術(shù),也可以基于硬件技術(shù),如敏感信息可存放于加密的智能卡中;API調(diào)用模塊,用于調(diào)用平臺(tái)能力API (例如位置服務(wù)API);業(yè)務(wù)網(wǎng)關(guān),在本申請(qǐng)文件中,用于向其它網(wǎng)絡(luò)實(shí)體提供用戶ID等身份信息,例如, WAP網(wǎng)關(guān)可基于radius模塊提供MSISDN以標(biāo)識(shí)用戶身份。其中,平臺(tái)能力API、API訪問(wèn)控制模塊、鑒權(quán)服務(wù)器和業(yè)務(wù)網(wǎng)關(guān)屬于業(yè)務(wù)平臺(tái)中的網(wǎng)絡(luò)實(shí)體,客戶端鑒權(quán)模塊和API調(diào)用模塊屬于客戶端應(yīng)用中的功能模塊。由于客戶端應(yīng)用內(nèi)置重要的客戶端鑒權(quán)模塊及API調(diào)用模塊,因而由自身安全保護(hù)極為重要,主要安全加固可包括以下幾個(gè)方面完整性保護(hù)客戶端應(yīng)用通過(guò)基于MAC指紋機(jī)制軟件自我完整性檢測(cè)方法(用以保護(hù)除“客戶端鑒權(quán)模塊”之外的其它模塊被非法篡改或替換)及代碼混淆(用以防止整個(gè)客戶端應(yīng)用被實(shí)施反逆向工程攻擊)等方法來(lái)實(shí)現(xiàn)完整性保護(hù),代碼混淆機(jī)制可通過(guò)在 SDK中的編輯鏈接環(huán)境自動(dòng)完成;敏感信息機(jī)密性客戶端應(yīng)用通過(guò)代碼混淆、反靜態(tài)反編輯分析、反動(dòng)態(tài)執(zhí)行跟蹤、安全算法轉(zhuǎn)換、敏感信息轉(zhuǎn)換等機(jī)制實(shí)現(xiàn)敏感信息的機(jī)密性保護(hù),保護(hù)能力API鑒權(quán)機(jī)制中的相關(guān)秘密信息(如clientkey、鑒權(quán)因子、臨時(shí)令牌);本地API保護(hù)客戶端應(yīng)用可通過(guò)輸入輸出入口轉(zhuǎn)移、安全算法轉(zhuǎn)換、敏感信息轉(zhuǎn)換等機(jī)制,保障不同組件之間的調(diào)用安全;安全能力更新機(jī)制當(dāng)監(jiān)測(cè)到客戶端應(yīng)用被攻擊后,可及時(shí)通過(guò)安全能力更新機(jī)制更新終端應(yīng)用中的安全組件或通過(guò)平臺(tái)安全策略禁止被攻擊后的終端訪問(wèn)平臺(tái)能力 API,以確保平臺(tái)能力API被合法使用。實(shí)施例二為了實(shí)現(xiàn)鑒權(quán)服務(wù)器(鑒權(quán)服務(wù)器屬于業(yè)務(wù)平臺(tái)的一部分)對(duì)客戶端應(yīng)用的合法性認(rèn)證鑒權(quán),本發(fā)明實(shí)施例基于客戶端應(yīng)用的注冊(cè)機(jī)制,提出一種鑒權(quán)方法,實(shí)現(xiàn)業(yè)務(wù)平臺(tái)對(duì)用戶終端的合法性認(rèn)證鑒權(quán)、以及客戶端應(yīng)用與業(yè)務(wù)平臺(tái)之間的雙向鑒權(quán),同時(shí)實(shí)現(xiàn)了客戶端應(yīng)用對(duì)鑒權(quán)因子的獲取,為后續(xù)調(diào)用平臺(tái)能力API提供基礎(chǔ)。首先介紹客戶端應(yīng)用的開(kāi)發(fā)測(cè)試階段。在SDK環(huán)境中包括用于開(kāi)發(fā)測(cè)試的“測(cè)試鑒權(quán)模塊”。開(kāi)發(fā)者基于“測(cè)試鑒權(quán)模塊” 進(jìn)行客戶端應(yīng)用的開(kāi)發(fā)測(cè)試,客戶端應(yīng)用中包括“測(cè)試鑒權(quán)模塊”。測(cè)試過(guò)程中需要開(kāi)發(fā)環(huán)境平臺(tái)能力API的支持。首先介紹客戶端應(yīng)用的發(fā)布階段。當(dāng)開(kāi)發(fā)者基于SDK環(huán)境中將開(kāi)發(fā)完成的客戶端應(yīng)用提交到業(yè)務(wù)平臺(tái)后,業(yè)務(wù)平臺(tái)將對(duì)客戶端應(yīng)用進(jìn)行嚴(yán)格測(cè)試,以確保該客戶端應(yīng)用符合安全策略要求,沒(méi)有內(nèi)置的惡意代碼及非法計(jì)費(fèi)代碼等。同時(shí)業(yè)務(wù)平臺(tái)中的鑒權(quán)服務(wù)器將為該客戶端應(yīng)用獨(dú)立生成用于運(yùn)行的客戶端鑒權(quán)模塊,確定出客戶端應(yīng)用中除客戶端鑒權(quán)模塊之外的其它功能模塊(例如信息一般不會(huì)更新的關(guān)鍵模塊)的MAC指紋并安全存儲(chǔ)到客戶端鑒權(quán)模塊中,以使用戶終端在使用客戶端應(yīng)用過(guò)程中進(jìn)行本地的完整性校驗(yàn)。其中,所述的MAC指紋可以通過(guò)現(xiàn)有技術(shù)中的多種計(jì)算方法確定,例如HMAC值或HASH值計(jì)算方法;所述的安全存儲(chǔ)可以采用加密存儲(chǔ)、代碼混淆、加密算法轉(zhuǎn)換等手段實(shí)現(xiàn)。MAC指紋實(shí)現(xiàn)了客戶端鑒權(quán)模塊與該客戶端應(yīng)用的綁定關(guān)系,防止客戶端鑒權(quán)模塊被其它客戶端應(yīng)用非法使用。每個(gè)客戶端應(yīng)用中的客戶端鑒權(quán)模塊與鑒權(quán)服務(wù)器共享客戶端應(yīng)用密鑰 clientKey,每個(gè)客戶端應(yīng)用均有一個(gè)或多個(gè)clientKey。在用戶終端使用客戶端應(yīng)用的階段,業(yè)務(wù)平臺(tái)基于clientKey實(shí)現(xiàn)對(duì)客戶端應(yīng)用的合法性認(rèn)證。為了避免開(kāi)發(fā)者或第三方SP在非法的客戶端應(yīng)用中非法濫用、重用該客戶端應(yīng)用密鑰clientKey,在客戶端應(yīng)用測(cè)試審核通過(guò)之后,由業(yè)務(wù)平臺(tái)中的鑒權(quán)服務(wù)器將該clientKey安全存儲(chǔ)在新建的客戶端鑒權(quán)模塊中。由于clientKey在客戶端鑒權(quán)模塊中進(jìn)行了安全存儲(chǔ),因此除鑒權(quán)服務(wù)器, clientKey對(duì)任何人(包括開(kāi)發(fā)者)而言均是不可知的??蛻舳髓b權(quán)模塊安全存儲(chǔ)了 MAC指紋和clientKey之后,需要說(shuō)明的是,兩者存儲(chǔ)的順序沒(méi)有特別要求,鑒權(quán)服務(wù)器將用其替換開(kāi)發(fā)者在開(kāi)發(fā)測(cè)試階段所使用的測(cè)試鑒權(quán)模塊(用于開(kāi)發(fā)測(cè)試的所有測(cè)試鑒權(quán)模塊均可采用相同的用于測(cè)試的Test clientkey)。鑒權(quán)服務(wù)器通過(guò)對(duì)客戶端鑒權(quán)模塊的置換,實(shí)現(xiàn)了對(duì)clientKey的安全分發(fā)。此外,鑒權(quán)服務(wù)器也可以通過(guò)將測(cè)試鑒權(quán)模塊中某個(gè)預(yù)先指定的文件置換為預(yù)置有MAC指紋和客戶端應(yīng)用密鑰clientKey的文件來(lái)實(shí)現(xiàn)對(duì)clientKey的安全分發(fā),從而實(shí)現(xiàn)測(cè)試鑒權(quán)模塊到客戶端鑒權(quán)模塊的置換而無(wú)需置換整個(gè)測(cè)試鑒權(quán)模塊。基于開(kāi)發(fā)測(cè)試階段和發(fā)布階段,詳細(xì)介紹客戶端應(yīng)用的運(yùn)行注冊(cè)階段。當(dāng)用戶將客戶端應(yīng)用下載到用戶終端上之后,需要安裝并運(yùn)行,如果客戶端應(yīng)用初次運(yùn)行、或者用戶終端更換用戶智能卡(例如SIM卡、USIM卡)、或者預(yù)先指定的參數(shù)過(guò)期,則客戶端應(yīng)用需要執(zhí)行如下注冊(cè)流程實(shí)現(xiàn)鑒權(quán),如圖4所示,包括如下步驟S401 S402、客戶端鑒權(quán)模塊對(duì)客戶端應(yīng)用進(jìn)行本地完整性檢測(cè)之后(重新確定 MAC指紋并與安全存儲(chǔ)在客戶端鑒權(quán)模塊中的MAC指紋進(jìn)行匹配,并且匹配一致),向鑒權(quán)服務(wù)器發(fā)送注冊(cè)請(qǐng)求,注冊(cè)請(qǐng)求消息中包括業(yè)務(wù)ID、業(yè)務(wù)版本、時(shí)間戳、第一消息認(rèn)證碼 MAC1、以及其它可選參數(shù)。MACl是采用clientkey或其派生值對(duì)業(yè)務(wù)ID、業(yè)務(wù)版本和時(shí)間戳等參數(shù)的散列值進(jìn)行加密生成的,或者對(duì)包括clientkey、業(yè)務(wù)ID、業(yè)務(wù)版本和時(shí)間戳在內(nèi)的參數(shù)進(jìn)行計(jì)算散列值生成的。注冊(cè)請(qǐng)求必需經(jīng)過(guò)業(yè)務(wù)網(wǎng)關(guān)(如WAP網(wǎng)關(guān))以便攜帶上用戶ID (如MSISDN)。鑒權(quán)服務(wù)器收到注冊(cè)請(qǐng)求后,對(duì)MACl進(jìn)行認(rèn)證以確保該注冊(cè)請(qǐng)求是否來(lái)自于合法的客戶端應(yīng)用(即經(jīng)過(guò)網(wǎng)絡(luò)運(yùn)營(yíng)商授權(quán)使用的客戶端應(yīng)用),至此已經(jīng)實(shí)現(xiàn)了鑒權(quán)服務(wù)器對(duì)客戶端應(yīng)用的合法性認(rèn)證鑒權(quán);通過(guò)認(rèn)證用戶ID以確保該注冊(cè)請(qǐng)求來(lái)自于合法的網(wǎng)絡(luò)運(yùn)營(yíng)商的用戶終端;一般來(lái)說(shuō),如果鑒權(quán)服務(wù)器無(wú)法直接從業(yè)務(wù)平臺(tái)根據(jù)用戶ID(例如MSISDN)獲取得到用戶智能卡的唯一標(biāo)識(shí)號(hào)(例如IMSI international MobileStation Equipment Identity,國(guó)際移動(dòng)臺(tái)設(shè)備標(biāo)識(shí)),則在注冊(cè)請(qǐng)求中還需要包括經(jīng)過(guò)clientkey或 clientkey的派生值進(jìn)行加密得到的用戶智能卡的唯一標(biāo)識(shí)號(hào)和其它可選參數(shù)的密文值;具體實(shí)施中,基于安全策略的要求,客戶端鑒權(quán)模塊對(duì)客戶端應(yīng)用進(jìn)行本地完整性檢測(cè)可以作為可選方案,即客戶端鑒權(quán)模塊中可以僅存儲(chǔ)與鑒權(quán)服務(wù)器共享的 ClientKey而無(wú)需存儲(chǔ)MAC指紋,在下載到用戶終端中的客戶端應(yīng)用滿足觸發(fā)條件時(shí),客戶端鑒權(quán)模塊根據(jù)clientKey生成MACl ;并向鑒權(quán)服務(wù)器發(fā)送攜帶MACl的注冊(cè)請(qǐng)求;S403 S404、鑒權(quán)服務(wù)器隨機(jī)生成會(huì)話ID后,經(jīng)過(guò)業(yè)務(wù)網(wǎng)關(guān)(如WAP網(wǎng)關(guān))向客戶端鑒權(quán)模塊返回會(huì)話ID ;S405、客戶端鑒權(quán)模塊直接與鑒權(quán)服務(wù)器建立HTTPS連接,該HTTPS連接為單向認(rèn)證(客戶端鑒權(quán)模塊認(rèn)證鑒權(quán)服務(wù)器),鑒權(quán)服務(wù)器的PKI (PublicKey Infrastructure,公鑰基礎(chǔ)設(shè)施)證書(shū)對(duì)應(yīng)的根證書(shū)已于開(kāi)發(fā)階段預(yù)置于客戶端鑒權(quán)模塊中。接著,客戶端鑒權(quán)模塊向鑒權(quán)服務(wù)器發(fā)送攜帶會(huì)話ID的鑒權(quán)因子獲取請(qǐng)求,鑒權(quán)因子獲取請(qǐng)中包括業(yè)務(wù) ID、業(yè)務(wù)版本、時(shí)間戳、會(huì)話ID、用戶智能卡的唯一標(biāo)識(shí)號(hào)、第二消息認(rèn)證碼(MAC2)、以及其它可選參數(shù)。MAC2的生成方法同步驟1,該鑒權(quán)因子獲取請(qǐng)求無(wú)需經(jīng)過(guò)業(yè)務(wù)網(wǎng)關(guān);S406、鑒權(quán)服務(wù)器收到鑒權(quán)因子獲取請(qǐng)求后,根據(jù)之前的記錄對(duì)會(huì)話ID及用戶智能卡的唯一標(biāo)識(shí)號(hào)等進(jìn)行驗(yàn)證以確保用戶終端的合法性,同時(shí)對(duì)MAC2進(jìn)行認(rèn)證以確保該請(qǐng)求來(lái)自于合法的客戶端應(yīng)用。認(rèn)證通過(guò)后,鑒權(quán)服務(wù)器隨機(jī)生成一鑒權(quán)因子(每個(gè)用戶終端的鑒權(quán)因子均不相同,對(duì)同一用戶終端每次下發(fā)的鑒權(quán)因子也不相同)經(jīng)過(guò)HTTS安全數(shù)據(jù)傳輸通道返回給客戶端鑒權(quán)模塊??蛻舳髓b權(quán)模塊收到鑒權(quán)因子后由安全存儲(chǔ)單元對(duì)其進(jìn)行安全存儲(chǔ)。需要說(shuō)明的是,根據(jù)安全策略在一定的時(shí)間周期后,或用戶終端更換用戶智能卡 (如USIM卡)后,或某些預(yù)先指定的參數(shù)過(guò)期后,要求客戶端應(yīng)用重新發(fā)起注冊(cè)流程。所述的預(yù)先指定的參數(shù)過(guò)期,例如后續(xù)根據(jù)鑒權(quán)因子生成動(dòng)態(tài)令牌的過(guò)程中使用HOTP動(dòng)態(tài)令牌,則該預(yù)先指定的參數(shù)可以為計(jì)數(shù)器counter。MAC2和MACl的生成可采用不同的clientkey,此時(shí),客戶端鑒權(quán)模塊內(nèi)就不是預(yù)置一個(gè)clientkey,而是預(yù)置至少兩個(gè) clientkey。
基于同一技術(shù)構(gòu)思,本實(shí)施例還提供了一種鑒權(quán)系統(tǒng),包括客戶端應(yīng)用和鑒權(quán)服務(wù)器,所述客戶端應(yīng)用中包括客戶端鑒權(quán)模塊,所述客戶端鑒權(quán)模塊中存儲(chǔ)與鑒權(quán)服務(wù)器共享的客戶端應(yīng)用密鑰clientKey,其中所述客戶端鑒權(quán)模塊,用于在下載到用戶終端中的客戶端應(yīng)用滿足觸發(fā)條件時(shí), 根據(jù)本地存儲(chǔ)的clientKey生成MACl,并向鑒權(quán)服務(wù)器發(fā)送攜帶該MACl的注冊(cè)請(qǐng)求;所述鑒權(quán)服務(wù)器,用于根據(jù)與所述客戶端鑒權(quán)模塊共享的clientKey,對(duì)接收到的注冊(cè)請(qǐng)求中攜帶的MACl進(jìn)行合法性認(rèn)證鑒權(quán),如果鑒權(quán)通過(guò)則確認(rèn)所述客戶端應(yīng)用合法。其中,客戶端應(yīng)用中包括客戶端鑒權(quán)模塊,所述客戶端鑒權(quán)模塊的一種可能結(jié)構(gòu), 如圖5所示,包括安全存儲(chǔ)單元501,用于存儲(chǔ)與鑒權(quán)服務(wù)器共享的clientKey(客戶端應(yīng)用密鑰);生成單元502,用于在下載到用戶終端中的客戶端應(yīng)用滿足觸發(fā)條件時(shí),根據(jù)安全存儲(chǔ)單元501中存儲(chǔ)的clientKey生成MACl ;控制單元503,用于在匹配單元匹配一致時(shí),向所述鑒權(quán)服務(wù)器發(fā)送攜帶該MACl 的注冊(cè)請(qǐng)求,所述注冊(cè)請(qǐng)求中攜帶的MACl供鑒權(quán)服務(wù)器根據(jù)與所述客戶端應(yīng)用共享的 clientKey對(duì)所述客戶端應(yīng)用進(jìn)行合法性認(rèn)證鑒權(quán)。鑒權(quán)服務(wù)器的一種可能結(jié)構(gòu),如圖6所示,包括存儲(chǔ)單元601,用于存儲(chǔ)與每一個(gè)客戶端鑒權(quán)模塊共享的clientKey ;接收單元602,用于接收客戶端應(yīng)用中的客戶端鑒權(quán)模塊發(fā)送的注冊(cè)請(qǐng)求,其中攜帶根據(jù)客戶端鑒權(quán)模塊本地存儲(chǔ)與鑒權(quán)服務(wù)器共享的客戶端應(yīng)用密鑰clientKey生成的第一消息認(rèn)證碼MACl ;認(rèn)證鑒權(quán)單元603,用于根據(jù)與所述客戶端鑒權(quán)模塊共享的clientKey,對(duì)接收到的注冊(cè)請(qǐng)求中攜帶的MACl進(jìn)行合法性認(rèn)證鑒權(quán),如果鑒權(quán)通過(guò)則確認(rèn)所述客戶端應(yīng)用合法。實(shí)施例三當(dāng)API調(diào)用模塊需要調(diào)用平臺(tái)能力API時(shí),API調(diào)用模塊首先將業(yè)務(wù)請(qǐng)求轉(zhuǎn)交給客戶端鑒權(quán)模塊,客戶端鑒權(quán)模塊根據(jù)安全策略可選地對(duì)客戶端應(yīng)用進(jìn)行本地完整性檢測(cè)之后,實(shí)時(shí)生成動(dòng)態(tài)令牌并可選地設(shè)置令牌用途參數(shù),并將動(dòng)態(tài)令牌和令牌用途參數(shù)添加于原業(yè)務(wù)請(qǐng)求之中再經(jīng)過(guò)與API訪問(wèn)控制模塊建立的HTTPS安全數(shù)據(jù)傳輸通道發(fā)送至業(yè)務(wù)平臺(tái),業(yè)務(wù)平臺(tái)中的API訪問(wèn)控制模塊接收到業(yè)務(wù)請(qǐng)求后,確認(rèn)業(yè)務(wù)請(qǐng)求的類型或者優(yōu)先級(jí)別滿足令牌用途參數(shù)的規(guī)定,則將動(dòng)態(tài)令牌轉(zhuǎn)發(fā)至鑒權(quán)服務(wù)器進(jìn)行驗(yàn)證,如果動(dòng)態(tài)令牌通過(guò)鑒權(quán)服務(wù)器的驗(yàn)證則返回正確信息,API訪問(wèn)控制模塊允許調(diào)用平臺(tái)能力API,具體的是運(yùn)行環(huán)境平臺(tái)能力API,否則,返回錯(cuò)誤信息。如圖7所示,本實(shí)施例提供的業(yè)務(wù)調(diào)用方法,包括如下步驟S701 S702、API調(diào)用模塊將向業(yè)務(wù)平臺(tái)發(fā)送的業(yè)務(wù)請(qǐng)求首先轉(zhuǎn)發(fā)到客戶端鑒權(quán)模塊進(jìn)行處理,客戶端鑒權(quán)模塊根據(jù)安全策略可選地對(duì)客戶端應(yīng)用進(jìn)行本地完整性檢測(cè)之后,根據(jù)注冊(cè)請(qǐng)求階段從鑒權(quán)服務(wù)器處獲取到的鑒權(quán)因子生成動(dòng)態(tài)令牌,例如生成的動(dòng)態(tài)令牌可以是HOTP動(dòng)態(tài)令牌,則鑒權(quán)因子可充當(dāng)生成HOTP動(dòng)態(tài)令牌的ked參數(shù);S703 S704、客戶端鑒權(quán)模塊與API訪問(wèn)控制模塊建立單向HTTPS (客戶端鑒權(quán)模塊認(rèn)證API訪問(wèn)控制模塊)連接,并將包括動(dòng)態(tài)令牌、令牌用途參數(shù)、業(yè)務(wù)ID、業(yè)務(wù)版本、 客戶端應(yīng)用ID、用戶智能卡的唯一標(biāo)識(shí)號(hào)(如IMSI)等參數(shù)(如果為HOTP動(dòng)態(tài)令牌,需要包括讀數(shù)器counter參數(shù))的業(yè)務(wù)請(qǐng)求轉(zhuǎn)發(fā)到業(yè)務(wù)平臺(tái),API訪問(wèn)控制模塊截取到業(yè)務(wù)請(qǐng)求后,確認(rèn)業(yè)務(wù)請(qǐng)求的類型或者優(yōu)先級(jí)別滿足令牌用途參數(shù)的規(guī)定,則將動(dòng)態(tài)令牌轉(zhuǎn)發(fā)至鑒權(quán)服務(wù)器進(jìn)行認(rèn)證;S705、鑒權(quán)服務(wù)器根據(jù)本地保存的相應(yīng)用戶終端的鑒權(quán)因子對(duì)業(yè)務(wù)請(qǐng)求中攜帶的動(dòng)態(tài)令牌進(jìn)行認(rèn)證,并返回認(rèn)證結(jié)果給API訪問(wèn)控制模塊;S706 S707、API訪問(wèn)控制模塊接收認(rèn)證結(jié)果,如果認(rèn)證結(jié)果為通過(guò),則允許調(diào)用運(yùn)行環(huán)境平臺(tái)能力API,否則通過(guò)客戶端鑒權(quán)模塊返回錯(cuò)誤信息至API調(diào)用模塊。以上的令牌用途參數(shù)用于規(guī)定該動(dòng)態(tài)令牌可以應(yīng)用的業(yè)務(wù)請(qǐng)求的類型或者安全級(jí)別,例如僅能夠用于位置服務(wù)平臺(tái)能力API的業(yè)務(wù)請(qǐng)求中,或僅能夠用于普通安全級(jí)別的平臺(tái)能力API類中,以實(shí)現(xiàn)對(duì)不同類型或不同安全級(jí)別的平臺(tái)能力API的保護(hù)。另外,在上述調(diào)用流程中,如果無(wú)需客戶端應(yīng)用認(rèn)證業(yè)務(wù)平臺(tái)的安全需求及對(duì)業(yè)務(wù)請(qǐng)求和響應(yīng)消息的安全保密需求,則單向HTTPS安全數(shù)據(jù)傳輸通道是可選的?;谕患夹g(shù)構(gòu)思,本實(shí)施例還提供了一種業(yè)務(wù)調(diào)用系統(tǒng),包括客戶端應(yīng)用、API 訪問(wèn)控制模塊和鑒權(quán)服務(wù)器,其中所述客戶端應(yīng)用,用于發(fā)送業(yè)務(wù)請(qǐng)求,其中攜帶根據(jù)從鑒權(quán)服務(wù)器中獲取到的鑒權(quán)因子生成的動(dòng)態(tài)令牌;所述API訪問(wèn)控制模塊,用于接收到所述業(yè)務(wù)請(qǐng)求之后,根據(jù)鑒權(quán)服務(wù)器對(duì)所述業(yè)務(wù)請(qǐng)求中攜帶的動(dòng)態(tài)令牌的認(rèn)證結(jié)果確認(rèn)認(rèn)證通過(guò)時(shí),允許所述API調(diào)用模塊調(diào)用平臺(tái)能力API ;所述鑒權(quán)服務(wù)器,用于對(duì)所述API訪問(wèn)控制模塊轉(zhuǎn)發(fā)的所述動(dòng)態(tài)令牌進(jìn)行認(rèn)證。實(shí)施例四在實(shí)施例三提供的業(yè)務(wù)調(diào)用流程中,每次發(fā)出業(yè)務(wù)請(qǐng)求,鑒權(quán)服務(wù)器均需要對(duì)動(dòng)態(tài)令牌進(jìn)行驗(yàn)證。為了減輕鑒權(quán)服務(wù)器的負(fù)擔(dān),在業(yè)務(wù)調(diào)用階段,本發(fā)明實(shí)施例還提供一種高效的基于動(dòng)態(tài)更新的可重用令牌機(jī)制的平臺(tái)能力API的調(diào)用機(jī)制。該機(jī)制共分為兩個(gè)階段臨時(shí)令牌獲取階段和安全業(yè)務(wù)請(qǐng)求階段。A.臨時(shí)令牌獲取階段本階段的目的是客戶端鑒權(quán)模塊通過(guò)動(dòng)態(tài)令牌來(lái)獲取臨時(shí)令牌。當(dāng)API調(diào)用模塊需要調(diào)用訪問(wèn)平臺(tái)能力API時(shí),API調(diào)用模塊首先將請(qǐng)求消息轉(zhuǎn)交給客戶端鑒權(quán)模塊,客戶端鑒權(quán)模塊根據(jù)安全策略可選地對(duì)客戶端應(yīng)用進(jìn)行本地完整性檢測(cè)之后,實(shí)時(shí)生成動(dòng)態(tài)令牌并設(shè)置令牌用途參數(shù),同時(shí)經(jīng)過(guò)建立的HTTPS通道向API訪問(wèn)控制模塊發(fā)送包括動(dòng)態(tài)令牌的臨時(shí)令牌獲取請(qǐng)求,API訪問(wèn)控制模塊收到請(qǐng)求后,向鑒權(quán)服務(wù)器轉(zhuǎn)發(fā)動(dòng)態(tài)令牌。如果鑒權(quán)服務(wù)器驗(yàn)證動(dòng)態(tài)令牌通過(guò),則返回臨時(shí)令牌到API訪問(wèn)控制模塊(臨時(shí)令牌也可以由 API訪問(wèn)控制模塊生成),否則返回錯(cuò)誤代碼。最后,由API訪問(wèn)控制模塊向客戶端鑒權(quán)模塊返回臨時(shí)令牌或錯(cuò)誤代碼,同時(shí)向API調(diào)用模塊返回狀態(tài)值。臨時(shí)令牌由API訪問(wèn)控制模塊進(jìn)行安全存儲(chǔ),該臨時(shí)令牌即可用于保護(hù)后繼相同類型的多個(gè)業(yè)務(wù)請(qǐng)求消息中,也可用于保護(hù)相同安全等級(jí)的某類能力API請(qǐng)求消息中,并在一定安全策略的定義內(nèi)有效(如在10分鐘或1小時(shí)內(nèi)有效),當(dāng)該臨時(shí)令牌過(guò)期后,則客戶端鑒權(quán)模塊將重新獲取新的臨時(shí)令牌。如圖8所示,臨時(shí)令牌獲取階段的處理流程包括如下步驟S801 S802、API調(diào)用模塊將向業(yè)務(wù)平臺(tái)發(fā)送的業(yè)務(wù)請(qǐng)求首先轉(zhuǎn)發(fā)到客戶端鑒權(quán)模塊進(jìn)行處理,客戶端鑒權(quán)模塊根據(jù)安全策略可選地對(duì)客戶端應(yīng)用進(jìn)行本地完整性檢測(cè)之后,根據(jù)注冊(cè)請(qǐng)求階段從鑒權(quán)服務(wù)器處獲取到的鑒權(quán)因子生成動(dòng)態(tài)令牌,例如生成的動(dòng)態(tài)令牌可以是HOTP動(dòng)態(tài)令牌,則鑒權(quán)因子可充當(dāng)生成HOTP動(dòng)態(tài)令牌的ked參數(shù);S803 S804、客戶端鑒權(quán)模塊與API訪問(wèn)控制模塊建立單向HTTPS (客戶端鑒權(quán)模塊認(rèn)證API訪問(wèn)控制模塊)安全數(shù)據(jù)傳輸通道,并將包括動(dòng)態(tài)令牌、令牌用途參數(shù)、業(yè)務(wù) ID、業(yè)務(wù)版本、客戶端應(yīng)用ID、用戶智能卡的唯一標(biāo)識(shí)號(hào)(如IMSI)等參數(shù)(如果為HOTP令牌,需要包括讀數(shù)器counter參數(shù))的臨時(shí)令牌獲取請(qǐng)求轉(zhuǎn)發(fā)到業(yè)務(wù)平臺(tái),API訪問(wèn)控制模塊截取到臨時(shí)令牌獲取請(qǐng)求后,確認(rèn)業(yè)務(wù)請(qǐng)求的類型或者安全級(jí)別滿足令牌用途參數(shù)的規(guī)定,則將動(dòng)態(tài)令牌轉(zhuǎn)發(fā)至鑒權(quán)服務(wù)器進(jìn)行認(rèn)證;S805、鑒權(quán)服務(wù)器根據(jù)本地保存的相應(yīng)用戶終端的鑒權(quán)因子對(duì)動(dòng)態(tài)令牌進(jìn)行驗(yàn)證,如果驗(yàn)證通過(guò)則返回隨機(jī)生成的臨時(shí)令牌,否則返回錯(cuò)誤信息,需要說(shuō)明的是,臨時(shí)令牌也可以由API訪問(wèn)控制模塊生成;S806 S807、API訪問(wèn)控制模向客戶端鑒權(quán)模塊返回臨時(shí)令牌或錯(cuò)誤信息,客戶端鑒權(quán)模塊向API調(diào)用模塊返回狀態(tài)值。B.安全業(yè)務(wù)請(qǐng)求階段API調(diào)用模塊再次發(fā)起訪問(wèn)平臺(tái)能力API的業(yè)務(wù)請(qǐng)求,同樣地,API調(diào)用模塊首先將請(qǐng)求消息轉(zhuǎn)交給客戶端鑒權(quán)模塊中,客戶端鑒權(quán)模塊根據(jù)安全策略可選地對(duì)客戶端應(yīng)用進(jìn)行本地完整性檢測(cè)之后,取出對(duì)應(yīng)的臨時(shí)令牌并添加于原請(qǐng)求消息之中,再經(jīng)過(guò)建立的 HTTPS安全數(shù)據(jù)傳輸通道發(fā)送至業(yè)務(wù)平臺(tái)。業(yè)務(wù)平臺(tái)中的API訪問(wèn)控制模塊接收到業(yè)務(wù)請(qǐng)求后,根據(jù)所保存的臨時(shí)令牌對(duì)業(yè)務(wù)請(qǐng)求消息中的臨時(shí)令牌進(jìn)行匹配,如果匹配一致,則允許調(diào)用平臺(tái)能力API (具體為運(yùn)行環(huán)境平臺(tái)能力API),否則,返回錯(cuò)誤信息。如圖9所示,安全業(yè)務(wù)請(qǐng)求階段的處理流程包括如下步驟S901、API調(diào)用模塊將向業(yè)務(wù)平臺(tái)發(fā)送的業(yè)務(wù)請(qǐng)求首先轉(zhuǎn)發(fā)到客戶端鑒權(quán)模塊進(jìn)行處理,客戶端鑒權(quán)模塊根據(jù)安全策略可選地對(duì)客戶端應(yīng)用進(jìn)行本地完整性檢測(cè);S902、客戶端鑒權(quán)模塊與API訪問(wèn)控制模塊建立單向HTTPS(客戶端鑒權(quán)模塊認(rèn)證 API訪問(wèn)控制模塊)安全數(shù)據(jù)傳輸通道,并將包括臨時(shí)令牌等參數(shù)的業(yè)務(wù)請(qǐng)求轉(zhuǎn)發(fā)到業(yè)務(wù)平臺(tái);S903 S904、API訪問(wèn)控制模塊截取到業(yè)務(wù)請(qǐng)求后,根據(jù)所保存的臨時(shí)令牌對(duì)業(yè)務(wù)請(qǐng)求消息中的臨時(shí)令牌進(jìn)行匹配,如果匹配一致,則允許調(diào)用平臺(tái)能力API (具體為運(yùn)行環(huán)境平臺(tái)能力API),否則,否則通過(guò)客戶端鑒權(quán)模塊返回錯(cuò)誤信息至API調(diào)用模塊?;谕患夹g(shù)構(gòu)思,本實(shí)施例還提供了一種業(yè)務(wù)調(diào)用系統(tǒng),包括客戶端應(yīng)用和API 訪問(wèn)控制模塊,其中客戶端應(yīng)用,用于發(fā)送業(yè)務(wù)請(qǐng)求,其中攜帶從API訪問(wèn)控制模塊處獲取到的有效的臨時(shí)令牌;API訪問(wèn)控制模塊,用于接收到所述業(yè)務(wù)請(qǐng)求之后,根據(jù)本地存儲(chǔ)的所述客戶端鑒權(quán)模塊的臨時(shí)令牌對(duì)所述業(yè)務(wù)請(qǐng)求中攜帶的臨時(shí)令牌進(jìn)行匹配;若匹配一致,則允許所述API調(diào)用模塊調(diào)用平臺(tái)能力API。需要說(shuō)明的是1、在業(yè)務(wù)調(diào)用流程中(包括實(shí)施例三和實(shí)施例四),API調(diào)用模塊的業(yè)務(wù)請(qǐng)求可不經(jīng)過(guò)客戶端鑒權(quán)模塊處理后再轉(zhuǎn)發(fā),而是API調(diào)用模塊在發(fā)送業(yè)務(wù)請(qǐng)求前從客戶端鑒權(quán)模塊獲取相應(yīng)的動(dòng)態(tài)令牌或臨時(shí)令牌等參數(shù)后,由API調(diào)用模塊自進(jìn)行添加到業(yè)務(wù)請(qǐng)求中再發(fā)送到業(yè)務(wù)平臺(tái);2、在第一種業(yè)務(wù)調(diào)用流程中(實(shí)施例三),客戶端應(yīng)用發(fā)送到業(yè)務(wù)平臺(tái)的業(yè)務(wù)請(qǐng)求可全部經(jīng)過(guò)鑒權(quán)服務(wù)器,由鑒權(quán)服務(wù)器對(duì)其中的動(dòng)態(tài)令牌進(jìn)行驗(yàn)證通過(guò)后,再轉(zhuǎn)發(fā)給業(yè)務(wù)平臺(tái),以減少業(yè)務(wù)平臺(tái)轉(zhuǎn)發(fā)動(dòng)態(tài)令牌到鑒權(quán)服務(wù)器進(jìn)行驗(yàn)證的流程。但在業(yè)務(wù)請(qǐng)求中,需要添加業(yè)務(wù)服務(wù)器的URL參數(shù)等,以供鑒權(quán)服務(wù)器在驗(yàn)證動(dòng)態(tài)令牌成功后,根據(jù)業(yè)務(wù)服務(wù)器URL將不含動(dòng)態(tài)令牌等安全參數(shù)的業(yè)務(wù)請(qǐng)求轉(zhuǎn)發(fā)到相應(yīng)的業(yè)務(wù)平臺(tái);3、本發(fā)明實(shí)施例所述的平臺(tái)能力API的保護(hù)機(jī)制可作為一個(gè)通用的安全能力,重用到多個(gè)業(yè)務(wù)平臺(tái)中。本發(fā)明實(shí)施例提供的技術(shù)方案,支持業(yè)務(wù)平臺(tái)對(duì)客戶端應(yīng)用的合法性認(rèn)證鑒權(quán), 現(xiàn)有技術(shù)中僅針對(duì)用戶終端進(jìn)行身份認(rèn)證鑒權(quán),沒(méi)有考慮到假冒或被篡改過(guò)的客戶端應(yīng)用對(duì)平臺(tái)能力API的安全威脅,本發(fā)明實(shí)施例基于“MAC指紋機(jī)制”及“客戶端鑒權(quán)模塊置換機(jī)制”實(shí)現(xiàn)了客戶端應(yīng)用的完整性保護(hù)及客戶端應(yīng)用密鑰(在客戶端應(yīng)用與鑒權(quán)服務(wù)器之間共享的密鑰)的安全分發(fā),并由客戶端應(yīng)用根據(jù)客戶端應(yīng)用密鑰生成消息認(rèn)證碼以實(shí)現(xiàn)業(yè)務(wù)平臺(tái)對(duì)客戶端應(yīng)用的鑒權(quán)。同時(shí),可防止開(kāi)發(fā)者或第三方在非授權(quán)客戶端應(yīng)用當(dāng)中非法濫用重用該客戶端應(yīng)用密鑰。本發(fā)明實(shí)施例提供的技術(shù)方案,支持客戶端應(yīng)用對(duì)業(yè)務(wù)平臺(tái)的鑒權(quán)。現(xiàn)有技術(shù)為單向鑒權(quán),沒(méi)有考慮到業(yè)務(wù)平臺(tái)本身也可能被假冒或用戶終端發(fā)送的業(yè)務(wù)請(qǐng)求被重定位。 本發(fā)明實(shí)施例基于在客戶端應(yīng)用中內(nèi)置業(yè)務(wù)平臺(tái)的根證書(shū)及執(zhí)行單向HTTPS來(lái)實(shí)現(xiàn)客戶端應(yīng)用對(duì)業(yè)務(wù)平臺(tái)的鑒權(quán)及雙方的保密通信。同時(shí)避免了復(fù)雜的針對(duì)客戶端應(yīng)用的PKI證
書(shū)管理。本發(fā)明實(shí)施例提供的技術(shù)方案解決了現(xiàn)有方案中的安全漏洞問(wèn)題?,F(xiàn)有方案中基于靜態(tài)令牌機(jī)制,用戶終端所獲取的令牌應(yīng)用于所有的業(yè)務(wù)請(qǐng)求中,而且無(wú)法防止令牌被攻擊者非法獲取后應(yīng)用于非法業(yè)務(wù)請(qǐng)求中,存在被重放攻擊可能。本發(fā)明實(shí)施例中,當(dāng)客戶端應(yīng)用發(fā)起業(yè)務(wù)請(qǐng)求時(shí),客戶端應(yīng)用臨時(shí)生成動(dòng)態(tài)令牌并添加到業(yè)務(wù)請(qǐng)求消息中,以防止重放攻擊等。本發(fā)明實(shí)施例提供的技術(shù)方案,支持對(duì)不同類型或不同安全級(jí)別要求的平臺(tái)能力 API進(jìn)行分別管理?,F(xiàn)有方案中,用戶令牌應(yīng)用于所有的業(yè)務(wù)請(qǐng)求中,容易造成用戶令牌的泄露并被非法或越權(quán)使用。本發(fā)明實(shí)施例中,針對(duì)不同類型或不同安全級(jí)別要求的平臺(tái)能力API,基于通過(guò)“令牌用途參數(shù)”進(jìn)行標(biāo)識(shí)的動(dòng)態(tài)令牌來(lái)實(shí)現(xiàn)對(duì)實(shí)現(xiàn)平臺(tái)能力API的細(xì)粒度安全保護(hù)。顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
權(quán)利要求
1.一種鑒權(quán)方法,其特征在于,包括在下載到用戶終端中的客戶端應(yīng)用滿足觸發(fā)條件時(shí),所述客戶端應(yīng)用中的客戶端鑒權(quán)模塊根據(jù)客戶端鑒權(quán)模塊本地存儲(chǔ)的與鑒權(quán)服務(wù)器共享的客戶端應(yīng)用密鑰ClientKey生成第一消息認(rèn)證碼MACl ;并向所述鑒權(quán)服務(wù)器發(fā)送攜帶所述MACl的注冊(cè)請(qǐng)求,所述注冊(cè)請(qǐng)求中攜帶的MACl供鑒權(quán)服務(wù)器根據(jù)與所述客戶端應(yīng)用共享的ClientKey對(duì)所述客戶端應(yīng)用進(jìn)行合法性認(rèn)證鑒權(quán)。
2.如權(quán)利要求1所述的方法,其特征在于,所述客戶端鑒權(quán)模塊中還存儲(chǔ)所述鑒權(quán)服務(wù)器確定出的所述客戶端應(yīng)用中除客戶端鑒權(quán)模塊之外的功能模塊的MAC指紋;以及所述方法還包括所述客戶端鑒權(quán)模塊發(fā)送所述注冊(cè)請(qǐng)求之前,確定所述客戶端應(yīng)用中除客戶端鑒權(quán)模塊之外的功能模塊的MAC指紋,并確認(rèn)確定出的MAC指紋與客戶端鑒權(quán)模塊本地存儲(chǔ)的MAC 指紋匹配一致。
3.如權(quán)利要求1或2所述的方法,其特征在于,所述客戶端鑒權(quán)模塊通過(guò)業(yè)務(wù)網(wǎng)關(guān)將所述注冊(cè)請(qǐng)求發(fā)送給鑒權(quán)服務(wù)器,所述注冊(cè)請(qǐng)求中還攜帶所述業(yè)務(wù)網(wǎng)關(guān)添加的所述用戶終端對(duì)應(yīng)的用戶標(biāo)識(shí)符ID,所述注冊(cè)請(qǐng)求中攜帶的用戶ID供鑒權(quán)服務(wù)器對(duì)所述用戶終端進(jìn)行身份認(rèn)證鑒權(quán)。
4.如權(quán)利要求3所述的方法,其特征在于,還包括所述客戶端鑒權(quán)模塊接收所述鑒權(quán)服務(wù)器對(duì)所述客戶端應(yīng)用和用戶終端鑒權(quán)通過(guò)后返回的會(huì)話ID,基于預(yù)先設(shè)置的鑒權(quán)服務(wù)器的公鑰基礎(chǔ)設(shè)施PKI證書(shū)對(duì)應(yīng)的根證書(shū),與所述鑒權(quán)服務(wù)器建立安全數(shù)據(jù)傳輸通道,并驗(yàn)證所述鑒權(quán)服務(wù)器的合法性;所述客戶端鑒權(quán)模塊通過(guò)與所述鑒權(quán)服務(wù)器建立的安全數(shù)據(jù)傳輸通道,發(fā)送攜帶所述會(huì)話ID的鑒權(quán)因子獲取請(qǐng)求;并接收所述鑒權(quán)服務(wù)器根據(jù)預(yù)先記錄的為所述用戶終端隨機(jī)生成的會(huì)話ID,對(duì)接收到的鑒權(quán)因子獲取請(qǐng)求中攜帶的會(huì)話ID認(rèn)證通過(guò)后,通過(guò)建立的安全數(shù)據(jù)傳輸通道返回的為所述用戶終端隨機(jī)生成的鑒權(quán)因子。
5.如權(quán)利要求1所述的方法,其特征在于,所述滿足觸發(fā)條件包括所述客戶端應(yīng)用初次運(yùn)行、或者所述用戶終端更換用戶智能卡、或者預(yù)先指定的參數(shù)過(guò)期。
6.如權(quán)利要求2所述的方法,其特征在于,還包括將開(kāi)發(fā)者提交的客戶端應(yīng)用中的測(cè)試鑒權(quán)模塊置換為所述客戶端鑒權(quán)模塊;或者將測(cè)試鑒權(quán)模塊中預(yù)先指定的文件置換為預(yù)置有MAC指紋和客戶端應(yīng)用密鑰 ClientKey的文件,得到所述客戶端鑒權(quán)模塊。
7.—種鑒權(quán)方法,其特征在于,包括鑒權(quán)服務(wù)器接收客戶端應(yīng)用中的客戶端鑒權(quán)模塊發(fā)送的注冊(cè)請(qǐng)求,其中攜帶根據(jù)客戶端鑒權(quán)模塊本地存儲(chǔ)的與鑒權(quán)服務(wù)器共享的客戶端應(yīng)用密鑰ClientKey生成的第一消息認(rèn)證碼MACl ;所述鑒權(quán)服務(wù)器根據(jù)與所述客戶端鑒權(quán)模塊共享的clientKey,對(duì)接收到的注冊(cè)請(qǐng)求中攜帶的MACl進(jìn)行合法性認(rèn)證鑒權(quán),如果鑒權(quán)通過(guò)則確認(rèn)所述客戶端應(yīng)用合法。
8.如權(quán)利要求7所述的方法,其特征在于,所述注冊(cè)請(qǐng)求通過(guò)業(yè)務(wù)網(wǎng)關(guān)發(fā)送給鑒權(quán)服務(wù)器,所述鑒權(quán)服務(wù)器接收到的注冊(cè)請(qǐng)求中還攜帶所述業(yè)務(wù)網(wǎng)關(guān)添加的所述用戶終端對(duì)應(yīng)的用戶標(biāo)識(shí)符ID;以及所述方法還包括所述鑒權(quán)服務(wù)器對(duì)接收到的注冊(cè)請(qǐng)求中攜帶的用戶ID進(jìn)行身份認(rèn)證鑒權(quán),如果鑒權(quán)通過(guò)則確認(rèn)所述用戶終端合法;對(duì)所述客戶端應(yīng)用和用戶終端鑒權(quán)通過(guò)后隨機(jī)生成會(huì)話標(biāo)識(shí)符ID,并將生成的會(huì)話 ID經(jīng)過(guò)所述業(yè)務(wù)網(wǎng)關(guān)返回給所述客戶端鑒權(quán)模塊;所述鑒權(quán)服務(wù)器接收所述客戶端鑒權(quán)模塊通過(guò)與所述鑒權(quán)服務(wù)器建立的安全數(shù)據(jù)傳輸通道發(fā)送的攜帶所述會(huì)話ID的鑒權(quán)因子獲取請(qǐng)求;根據(jù)預(yù)先記錄的為所述用戶終端隨機(jī)生成的會(huì)話ID,對(duì)接收到的鑒權(quán)因子獲取請(qǐng)求中攜帶的會(huì)話ID進(jìn)行認(rèn)證,如果認(rèn)證通過(guò)則為所述用戶終端隨機(jī)生成鑒權(quán)因子并通過(guò)建立的安全數(shù)據(jù)傳輸通道返回給所述客戶端鑒權(quán)模塊。
9.如權(quán)利要求8所述的方法,其特征在于,所述鑒權(quán)因子獲取請(qǐng)求中還攜帶用戶終端中用戶智能卡的唯一標(biāo)識(shí)、以及根據(jù)客戶端鑒權(quán)模塊本地存儲(chǔ)的ClientKey生成的第二消息認(rèn)證碼MAC2 ;以及所述鑒權(quán)服務(wù)器為所述用戶終端隨機(jī)生成鑒權(quán)因子之前,還包括 根據(jù)預(yù)先獲取到的所述用戶終端中用戶智能卡的唯一標(biāo)識(shí),對(duì)接收到的注冊(cè)請(qǐng)求中攜帶的用戶終端中用戶智能卡的唯一標(biāo)識(shí)進(jìn)行認(rèn)證;以及根據(jù)與所述客戶端鑒權(quán)模塊共享的 clientKey,對(duì)接收到的注冊(cè)請(qǐng)求中攜帶的MAC2進(jìn)行認(rèn)證,并確認(rèn)認(rèn)證通過(guò)。
10.如權(quán)利要求9所述的方法,其特征在于,所述鑒權(quán)服務(wù)器獲取所述用戶終端中用戶智能卡的唯一標(biāo)識(shí)的步驟,具體包括所述鑒權(quán)服務(wù)器根據(jù)所述注冊(cè)請(qǐng)求中攜帶的用戶終端對(duì)應(yīng)的用戶ID,查詢預(yù)先記錄的用戶ID與用戶智能卡的唯一標(biāo)識(shí)的對(duì)應(yīng)關(guān)系,獲取所述用戶終端中用戶智能卡的唯一標(biāo)識(shí);或者,所述注冊(cè)請(qǐng)求中還攜帶根據(jù)根據(jù)客戶端鑒權(quán)模塊本地存儲(chǔ)的clientKey對(duì)所述用戶終端中用戶智能卡的唯一標(biāo)識(shí)進(jìn)行加密得到的密文值;以及所述鑒權(quán)服務(wù)器根據(jù)與所述客戶端鑒權(quán)模塊共享的clientKey,對(duì)接收到的注冊(cè)請(qǐng)求中攜帶的密文值進(jìn)行解密,獲取所述用戶終端中用戶智能卡的唯一標(biāo)識(shí)。
11.一種客戶端應(yīng)用,其特征在于,所述客戶端應(yīng)用中包括客戶端鑒權(quán)模塊,所述客戶端鑒權(quán)模塊中包括安全存儲(chǔ)單元,用于存儲(chǔ)與鑒權(quán)服務(wù)器共享的客戶端應(yīng)用密鑰clientKey ; 生成單元,用于在下載到用戶終端中的客戶端應(yīng)用滿足觸發(fā)條件時(shí),根據(jù)所述安全存儲(chǔ)單元中存儲(chǔ)的clientKey生成第一消息認(rèn)證碼MACl ;控制單元,用于向所述鑒權(quán)服務(wù)器發(fā)送攜帶所述MACl的注冊(cè)請(qǐng)求,所述注冊(cè)請(qǐng)求中攜帶的MACl供鑒權(quán)服務(wù)器根據(jù)與所述客戶端應(yīng)用共享的clientKey對(duì)所述客戶端應(yīng)用進(jìn)行合法性認(rèn)證鑒權(quán)。
12.—種鑒權(quán)服務(wù)器,其特征在于,包括存儲(chǔ)單元,用于存儲(chǔ)與每一個(gè)客戶端鑒權(quán)模塊共享的clientKey ;接收單元,用于接收客戶端應(yīng)用中的客戶端鑒權(quán)模塊發(fā)送的注冊(cè)請(qǐng)求,其中攜帶根據(jù)客戶端鑒權(quán)模塊本地存儲(chǔ)與鑒權(quán)服務(wù)器共享的客戶端應(yīng)用密鑰ClientKey生成的第一消息認(rèn)證碼MACl ;認(rèn)證鑒權(quán)單元,用于根據(jù)與所述客戶端鑒權(quán)模塊共享的clientKey,對(duì)接收到的注冊(cè)請(qǐng)求中攜帶的MACl進(jìn)行合法性認(rèn)證鑒權(quán),如果鑒權(quán)通過(guò)則確認(rèn)所述客戶端應(yīng)用合法。
13.—種業(yè)務(wù)調(diào)用方法,其特征在于,包括應(yīng)用程序接口 API訪問(wèn)控制模塊接收客戶端應(yīng)用發(fā)送的業(yè)務(wù)請(qǐng)求,其中攜帶根據(jù)從鑒權(quán)服務(wù)器中獲取到的鑒權(quán)因子生成的動(dòng)態(tài)令牌;API訪問(wèn)控制模塊根據(jù)鑒權(quán)服務(wù)器對(duì)所述業(yè)務(wù)請(qǐng)求中攜帶的動(dòng)態(tài)令牌的認(rèn)證結(jié)果確認(rèn)認(rèn)證通過(guò)時(shí),允許所述API調(diào)用模塊調(diào)用平臺(tái)能力API。
14.如權(quán)利要求13所述的方法,其特征在于,所述業(yè)務(wù)請(qǐng)求由客戶端應(yīng)用中的客戶端鑒權(quán)模塊發(fā)送;以及所述客戶端鑒權(quán)模塊發(fā)送所述業(yè)務(wù)請(qǐng)求的步驟,具體包括所述客戶端鑒權(quán)模塊接收所述客戶端應(yīng)用中的API調(diào)用模塊生成的業(yè)務(wù)請(qǐng)求,根據(jù)從鑒權(quán)服務(wù)器中獲取到的鑒權(quán)因子生成動(dòng)態(tài)令牌,將所述動(dòng)態(tài)令牌添加到所述業(yè)務(wù)請(qǐng)求中并發(fā)送給API訪問(wèn)控制模塊;或者,所述業(yè)務(wù)請(qǐng)求由客戶端應(yīng)用中的API調(diào)用模塊發(fā)送;以及所述API調(diào)用模塊發(fā)送所述業(yè)務(wù)請(qǐng)求的步驟,具體包括所述API調(diào)用模塊從所述客戶端應(yīng)用中的客戶端鑒權(quán)模塊處獲取動(dòng)態(tài)令牌,所述動(dòng)態(tài)令牌由客戶端鑒權(quán)模塊根據(jù)從鑒權(quán)服務(wù)器中獲取到的鑒權(quán)因子生成;并將所述動(dòng)態(tài)令牌攜帶在業(yè)務(wù)請(qǐng)求中發(fā)送給API訪問(wèn)控制模塊。
15.如權(quán)利要求14所述的方法,其特征在于,還包括客戶端鑒權(quán)模塊為生成的動(dòng)態(tài)令牌設(shè)置令牌用途參數(shù),所述令牌用途參數(shù)用于規(guī)定所述動(dòng)態(tài)令牌能夠應(yīng)用的業(yè)務(wù)請(qǐng)求的類型或者安全級(jí)別;以及所述API訪問(wèn)控制模塊根據(jù)接收到的業(yè)務(wù)請(qǐng)求中攜帶的令牌用途參數(shù),確認(rèn)所述業(yè)務(wù)請(qǐng)求的類型或者安全級(jí)別滿足令牌用途參數(shù)的規(guī)定,則將所述業(yè)務(wù)請(qǐng)求中攜帶的動(dòng)態(tài)令牌轉(zhuǎn)發(fā)給鑒權(quán)服務(wù)器進(jìn)行認(rèn)證,并接收所述鑒權(quán)服務(wù)器返回的認(rèn)證結(jié)果。
16.如權(quán)利要求14所述的方法,其特征在于,還包括所述客戶端鑒權(quán)模塊根據(jù)從鑒權(quán)服務(wù)器中獲取到的鑒權(quán)因子生成動(dòng)態(tài)令牌之前,確定所述客戶端應(yīng)用中除客戶端鑒權(quán)模塊之外的功能模塊的MAC指紋,并與本地存儲(chǔ)的MAC指紋進(jìn)行匹配,且確認(rèn)匹配一致,所述客戶端鑒權(quán)模塊中存儲(chǔ)鑒權(quán)服務(wù)器確定出的所述客戶端應(yīng)用中除客戶端鑒權(quán)模塊之外的功能模塊的MAC指紋。
17.—種業(yè)務(wù)調(diào)用系統(tǒng),其特征在于,包括客戶端應(yīng)用、應(yīng)用程序接口 API訪問(wèn)控制模塊和鑒權(quán)服務(wù)器,其中所述客戶端應(yīng)用,用于發(fā)送業(yè)務(wù)請(qǐng)求,其中攜帶根據(jù)從鑒權(quán)服務(wù)器中獲取到的鑒權(quán)因子生成的動(dòng)態(tài)令牌;所述API訪問(wèn)控制模塊,用于接收到所述業(yè)務(wù)請(qǐng)求之后,根據(jù)鑒權(quán)服務(wù)器對(duì)所述業(yè)務(wù)請(qǐng)求中攜帶的動(dòng)態(tài)令牌的認(rèn)證結(jié)果確認(rèn)認(rèn)證通過(guò)時(shí),允許所述API調(diào)用模塊調(diào)用平臺(tái)能力API ;所述鑒權(quán)服務(wù)器,用于對(duì)所述API訪問(wèn)控制模塊轉(zhuǎn)發(fā)的所述動(dòng)態(tài)令牌進(jìn)行認(rèn)證。
18.—種業(yè)務(wù)調(diào)用方法,其特征在于,包括應(yīng)用程序接口 API訪問(wèn)控制模塊接收客戶端應(yīng)用發(fā)送的業(yè)務(wù)請(qǐng)求,其中攜帶從API訪問(wèn)控制模塊處獲取到的有效的臨時(shí)令牌;API訪問(wèn)控制模塊根據(jù)本地存儲(chǔ)的所述客戶端鑒權(quán)模塊的臨時(shí)令牌對(duì)所述業(yè)務(wù)請(qǐng)求中攜帶的臨時(shí)令牌進(jìn)行匹配;若匹配一致,則允許所述API調(diào)用模塊調(diào)用平臺(tái)能力API。
19.如權(quán)利要求18所述的方法,其特征在于,所述業(yè)務(wù)請(qǐng)求由客戶端應(yīng)用中的客戶端鑒權(quán)模塊發(fā)送;以及所述客戶端鑒權(quán)模塊發(fā)送所述業(yè)務(wù)請(qǐng)求的步驟,具體包括所述客戶端鑒權(quán)模塊接收所述客戶端應(yīng)用中的API調(diào)用模塊生成的業(yè)務(wù)請(qǐng)求,如果本地存儲(chǔ)有從API訪問(wèn)控制模塊處獲取到的有效的臨時(shí)令牌,則將所述臨時(shí)令牌添加到所述業(yè)務(wù)請(qǐng)求中,并發(fā)送給所述API訪問(wèn)控制模塊; 或者,所述業(yè)務(wù)請(qǐng)求由客戶端應(yīng)用中的API調(diào)用模塊發(fā)送;以及所述API調(diào)用模塊發(fā)送所述業(yè)務(wù)請(qǐng)求的步驟,具體包括所述API調(diào)用模塊從所述客戶端應(yīng)用中的客戶端鑒權(quán)模塊處獲取有效的臨時(shí)令牌,所述有效的臨時(shí)令牌由客戶端鑒權(quán)模塊從API訪問(wèn)控制模塊處獲??;并將所述有效的臨時(shí)令牌攜帶在業(yè)務(wù)請(qǐng)求中發(fā)送給API訪問(wèn)控制模塊。
20.如權(quán)利要求19所述的方法,其特征在于,還包括如果客戶端鑒權(quán)模塊中沒(méi)有存儲(chǔ)從API訪問(wèn)控制模塊處獲取到的臨時(shí)令牌或者所述臨時(shí)令牌無(wú)效,則根據(jù)從鑒權(quán)服務(wù)器中獲取到的鑒權(quán)因子生成動(dòng)態(tài)令牌,并將攜帶所述動(dòng)態(tài)令牌的臨時(shí)令牌獲取請(qǐng)求發(fā)送給API訪問(wèn)控制模塊;API訪問(wèn)控制模塊接收到所述臨時(shí)令牌獲取請(qǐng)求之后,將所述臨時(shí)令牌獲取請(qǐng)求中攜帶的動(dòng)態(tài)令牌轉(zhuǎn)發(fā)給鑒權(quán)服務(wù)器進(jìn)行認(rèn)證;并根據(jù)鑒權(quán)服務(wù)器返回的認(rèn)證結(jié)果確認(rèn)認(rèn)證通過(guò)時(shí),將臨時(shí)令牌返回給客戶端鑒權(quán)模塊。
21.如權(quán)利要求20所述的方法,其特征在于,還包括所述臨時(shí)令牌由鑒權(quán)服務(wù)器生成并攜帶在認(rèn)證結(jié)果中返回給所述API訪問(wèn)控制模塊; 或者,所述臨時(shí)令牌由API訪問(wèn)控制模塊在根據(jù)鑒權(quán)服務(wù)器返回的認(rèn)證結(jié)果確認(rèn)認(rèn)證通過(guò)時(shí)生成。
22.—種業(yè)務(wù)調(diào)用系統(tǒng),其特征在于,包括客戶端應(yīng)用和應(yīng)用程序接口 API訪問(wèn)控制模塊,其中所述客戶端應(yīng)用,用于發(fā)送業(yè)務(wù)請(qǐng)求,其中攜帶從API訪問(wèn)控制模塊處獲取到的有效的臨時(shí)令牌;所述API訪問(wèn)控制模塊,用于接收到所述業(yè)務(wù)請(qǐng)求之后,根據(jù)本地存儲(chǔ)的所述客戶端鑒權(quán)模塊的臨時(shí)令牌對(duì)所述業(yè)務(wù)請(qǐng)求中攜帶的臨時(shí)令牌進(jìn)行匹配;若匹配一致,則允許所述API調(diào)用模塊調(diào)用平臺(tái)能力API。
全文摘要
本發(fā)明公開(kāi)了一種鑒權(quán)及業(yè)務(wù)調(diào)用方法、裝置和系統(tǒng),用以實(shí)現(xiàn)業(yè)務(wù)平臺(tái)中的鑒權(quán)服務(wù)器對(duì)客戶端應(yīng)用的合法性認(rèn)證鑒權(quán),并提升平臺(tái)能力API的調(diào)用機(jī)制的安全可靠性。鑒權(quán)服務(wù)器通過(guò)將客戶端應(yīng)用中的測(cè)試鑒權(quán)模塊置換成預(yù)置了MAC指紋及clientKey的客戶端鑒權(quán)模塊,實(shí)現(xiàn)了clientKey的安全分發(fā)。當(dāng)客戶端應(yīng)用滿足觸發(fā)條件時(shí),客戶端鑒權(quán)模塊先基于MAC指紋機(jī)制通過(guò)完整性校驗(yàn),再基于共享的clientKey所生成的MAC1向鑒權(quán)服務(wù)器申請(qǐng)注冊(cè)并獲取隨機(jī)的鑒權(quán)因子。在客戶端應(yīng)用需要調(diào)用平臺(tái)能力API時(shí),基于鑒權(quán)因子生成動(dòng)態(tài)令牌攜帶在業(yè)務(wù)請(qǐng)求中,當(dāng)動(dòng)態(tài)令牌認(rèn)證通過(guò)后,允許調(diào)用平臺(tái)能力API。
文檔編號(hào)H04W12/04GK102378170SQ201010265918
公開(kāi)日2012年3月14日 申請(qǐng)日期2010年8月27日 優(yōu)先權(quán)日2010年8月27日
發(fā)明者左敏, 江為強(qiáng) 申請(qǐng)人:中國(guó)移動(dòng)通信有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
岢岚县| 阳江市| 大同县| 开化县| 溧阳市| 八宿县| 含山县| 武隆县| 堆龙德庆县| 漳州市| 公主岭市| 嘉祥县| 巴彦淖尔市| 禹州市| 屏南县| 西宁市| 故城县| 墨竹工卡县| 石门县| 安丘市| 泗洪县| 南郑县| 河西区| 嵊州市| 石城县| 齐河县| 晋江市| 阿瓦提县| 普宁市| 沙洋县| 沁阳市| 高安市| 高雄县| 东乡县| 买车| 苍山县| 汝城县| 醴陵市| 泗洪县| 乌什县| 临沧市|