錄操作,例如若登錄失敗則提示用戶(hù)登錄失敗以及提醒其重新登錄,又如登錄成功則進(jìn)入客戶(hù)端或提示用戶(hù)登錄成功等。
[0039]綜上所述,在當(dāng)前客戶(hù)端中進(jìn)行登錄時(shí)調(diào)用獨(dú)立登錄進(jìn)程進(jìn)行登錄,即將獨(dú)立登錄進(jìn)程對(duì)應(yīng)登錄窗口顯示在所述當(dāng)前客戶(hù)端的顯示窗口之上,獲取在該登錄窗口中輸入的登錄信息反饋給服務(wù)器進(jìn)行驗(yàn)證,再依據(jù)服務(wù)器反饋的驗(yàn)證結(jié)果數(shù)據(jù)執(zhí)行登錄操作,從而通過(guò)第三方的獨(dú)立登錄進(jìn)程執(zhí)行用戶(hù)的登錄,防止由于客戶(hù)端出現(xiàn)問(wèn)題而導(dǎo)致用戶(hù)信息泄露,提供用戶(hù)信息的安全性。
[0040]實(shí)施例二
[0041]在上述實(shí)施例的基礎(chǔ)上,本實(shí)施例詳細(xì)論述第三方獨(dú)立登錄進(jìn)程執(zhí)行客戶(hù)端登錄的方法。
[0042]參照?qǐng)D2,示出了根據(jù)本發(fā)明實(shí)施例的另一種客戶(hù)端的登錄方法的步驟流程圖,具體可以包括如下步驟:
[0043]步驟202,在當(dāng)前客戶(hù)端中進(jìn)行登錄時(shí),啟動(dòng)第三方的獨(dú)立登錄進(jìn)程。
[0044]步驟204,調(diào)用所述獨(dú)立登錄進(jìn)程對(duì)應(yīng)登錄窗口,將所述窗口顯示在所述當(dāng)前客戶(hù)端的顯示窗口之上。
[0045]本實(shí)施中,采用第三方的獨(dú)立登錄進(jìn)程進(jìn)行客戶(hù)端中用戶(hù)的登錄,該獨(dú)立登錄進(jìn)程是一個(gè)獨(dú)立于客戶(hù)端進(jìn)程之外的第三方進(jìn)程,通過(guò)將信息敏感組件和功能以獨(dú)立進(jìn)程的方式封裝生成,其中,信息敏感組件包括用戶(hù)名輸入組件、密碼輸入組件、與云端交互/加密邏輯組件等,對(duì)應(yīng)功能包括獲取用戶(hù)名、密碼等登錄信息,以及與云端的服務(wù)器進(jìn)行加密交互等。
[0046]在客戶(hù)端中進(jìn)行登錄時(shí),客戶(hù)端作為調(diào)用方調(diào)用相應(yīng)的第三方獨(dú)立模塊,通過(guò)該模塊啟動(dòng)第三方的獨(dú)立登錄進(jìn)程,調(diào)用該獨(dú)立登錄進(jìn)程對(duì)應(yīng)登錄窗口,將所述窗口顯示在所述當(dāng)前客戶(hù)端的顯示窗口之上。
[0047]本發(fā)明一個(gè)可選實(shí)施例中,調(diào)用所述獨(dú)立登錄進(jìn)程對(duì)應(yīng)登錄窗口,將所述窗口顯示在所述當(dāng)前客戶(hù)端的顯示窗口之上,包括如下子步驟:
[0048]子步驟2042,依據(jù)所述當(dāng)前客戶(hù)端的進(jìn)程填寫(xiě)的導(dǎo)出函數(shù),調(diào)用所述獨(dú)立登錄進(jìn)程對(duì)應(yīng)登錄窗口。
[0049]子步驟2044,將所述登錄窗口作為所述當(dāng)前客戶(hù)端的顯示窗口的子窗口,將子窗口顯示在所述當(dāng)前客戶(hù)端的顯示窗口之上。
[0050]本實(shí)施例中,通過(guò)第三方獨(dú)立模塊調(diào)用上述封裝生成的獨(dú)立登錄進(jìn)程,第三方獨(dú)立模塊的一種呈現(xiàn)形式以動(dòng)態(tài)鏈接庫(kù)(Dynamic Link Library,DLL)為載體??蛻?hù)端調(diào)用DLL,DLL提供簡(jiǎn)單的導(dǎo)出函數(shù)給客戶(hù)端填寫(xiě)簡(jiǎn)單的句柄,顯示區(qū)域,結(jié)果回調(diào)函數(shù)等信息,如導(dǎo)出函數(shù)為:
[0051]UserLogon (HffND hParentffnd, RECT rcClien, LPLoginResultCalIBackIpLoginCalIBack)
[0052]DLL接口自動(dòng)與獨(dú)立登錄進(jìn)程通信交互,包括啟動(dòng)第三方的獨(dú)立登錄進(jìn)程,以及控制進(jìn)程中登錄窗口的顯示,以達(dá)到當(dāng)前客戶(hù)端的進(jìn)程調(diào)用獨(dú)立登錄進(jìn)程中窗口顯示的目的。
[0053]DLL基于當(dāng)前客戶(hù)端的進(jìn)程填寫(xiě)的導(dǎo)出函數(shù)調(diào)用所述獨(dú)立登錄進(jìn)程對(duì)應(yīng)的登錄組件包括用戶(hù)名輸入組件、密碼輸入組件,從而生成相應(yīng)的登錄窗口,并確定登錄窗口的顯示區(qū)域,將當(dāng)前客戶(hù)端的顯示窗口作為父窗口,該登錄窗口作為所述當(dāng)前客戶(hù)端的顯示窗口的子窗口,將子窗口顯不在父窗口之上。
[0054]步驟206,從所述登錄窗口中獲取輸入的登錄信息。
[0055]步驟208,對(duì)所述登錄信息進(jìn)行加密處理,得到加密的登錄信息。
[0056]步驟210,將所述加密的登錄信息發(fā)送給所述服務(wù)器,以使服務(wù)器基于所述加密的登錄信息對(duì)用戶(hù)進(jìn)行驗(yàn)證。
[0057]用戶(hù)可以在登錄窗口中輸入登錄信息,如用戶(hù)名、密碼等敏感信息,對(duì)應(yīng)獨(dú)立登錄進(jìn)程從該登錄窗口中獲取輸入的登錄信息,然后通過(guò)與云端交互/加密邏輯組件對(duì)登錄信息進(jìn)行加密處理得到加密的登錄信息,登錄信息的加密方法可以有多種,本實(shí)施例對(duì)此不作限定。將加密的登錄信息發(fā)送給服務(wù)器。
[0058]服務(wù)器在接收到加密的登錄信息后,服務(wù)器依據(jù)該加密的登錄信息對(duì)用戶(hù)進(jìn)行驗(yàn)證,如首先對(duì)登錄信息進(jìn)行解密,然后依據(jù)解密得到的登錄信息與數(shù)據(jù)庫(kù)中存儲(chǔ)的用戶(hù)登錄信息進(jìn)行比對(duì),確定該登錄信息是否準(zhǔn)確,能夠通過(guò)驗(yàn)證。
[0059]步驟212,接收服務(wù)器反饋的驗(yàn)證結(jié)果數(shù)據(jù)。
[0060]服務(wù)器對(duì)該登錄信息驗(yàn)證完成后會(huì)生成相應(yīng)的驗(yàn)證結(jié)果數(shù)據(jù),將驗(yàn)證結(jié)果數(shù)據(jù)反饋給獨(dú)立登錄進(jìn)程。獨(dú)立登錄進(jìn)程接收到驗(yàn)證結(jié)果數(shù)據(jù)后,對(duì)驗(yàn)證數(shù)據(jù)進(jìn)行檢測(cè)確定驗(yàn)證結(jié)果。若驗(yàn)證結(jié)果為驗(yàn)證失敗,執(zhí)行步驟214 ;若驗(yàn)證結(jié)果為驗(yàn)證通過(guò),執(zhí)行步驟220。
[0061]步驟214,從所述服務(wù)器反饋的驗(yàn)證結(jié)果數(shù)據(jù)中獲取錯(cuò)誤標(biāo)識(shí)。
[0062]步驟216,依據(jù)所述錯(cuò)誤標(biāo)識(shí)生成登錄失敗的提示信息。
[0063]步驟218,在當(dāng)前客戶(hù)端的顯示窗口之上顯示登錄失敗的提示信息。
[0064]本實(shí)施例中,校驗(yàn)結(jié)果數(shù)據(jù)描述為如果錯(cuò)誤,直接顯示錯(cuò)誤標(biāo)記,即當(dāng)服務(wù)器驗(yàn)證登錄信息登錄失敗時(shí),會(huì)生成錯(cuò)誤標(biāo)識(shí)構(gòu)成驗(yàn)證結(jié)果數(shù)據(jù)進(jìn)行反饋。獨(dú)立登錄進(jìn)程從驗(yàn)證結(jié)果數(shù)據(jù)中獲取錯(cuò)誤標(biāo)識(shí),依據(jù)該錯(cuò)誤標(biāo)識(shí)生成登錄失敗的提示信息,如提示“登錄失敗”,或者提示“用戶(hù)名或密碼錯(cuò)誤”,以及提示用戶(hù)可以重新登錄等。在當(dāng)前客戶(hù)端的顯示窗口之上顯示登錄失敗的提示信息。
[0065]步驟220,依據(jù)所述服務(wù)器反饋的驗(yàn)證結(jié)果數(shù)據(jù)確認(rèn)登錄成功。
[0066]步驟222,依據(jù)所述驗(yàn)證結(jié)果數(shù)據(jù)對(duì)所述客戶(hù)端進(jìn)行反饋。
[0067]當(dāng)服務(wù)器驗(yàn)證登錄信息通過(guò)登錄成功時(shí),會(huì)生成相應(yīng)的驗(yàn)證結(jié)果數(shù)據(jù),獨(dú)立登錄進(jìn)程依據(jù)該驗(yàn)證結(jié)果數(shù)據(jù)確認(rèn)登錄成功,然后依據(jù)所述驗(yàn)證結(jié)果數(shù)據(jù)對(duì)所述客戶(hù)端進(jìn)行反饋,如從驗(yàn)證結(jié)果數(shù)據(jù)中獲取驗(yàn)證數(shù)據(jù)等使客戶(hù)端能夠獲取登錄用戶(hù)的用戶(hù)信息,例如以回調(diào)函數(shù)方式反饋給作為調(diào)用方的客戶(hù)端,如回調(diào)函數(shù)為L(zhǎng)PLoginResultCallBackIpLoginCalIBack0
[0068]本發(fā)明一個(gè)可選實(shí)施例中,依據(jù)所述服務(wù)器反饋的驗(yàn)證結(jié)果數(shù)據(jù)確認(rèn)登錄成功,包括如下子步驟:
[0069]子步驟2202,從所述服務(wù)器反饋的驗(yàn)證結(jié)果數(shù)據(jù)中獲取用于驗(yàn)證賬號(hào)的加密字符串;
[0070]子步驟2204,依據(jù)所述加密字符串確定登錄成功,并將所述加密字符串存儲(chǔ)在客戶(hù)端所在終端本地。
[0071]服務(wù)器驗(yàn)證登錄信息通過(guò)登錄成功,會(huì)生成用于驗(yàn)證賬號(hào)的加密字符串,該字符串是對(duì)非敏感信息的加密,即是加密字符串與該用戶(hù)的賬號(hào)相關(guān)的內(nèi)部ID碼對(duì)應(yīng)校驗(yàn)串,將該加密字符串添加到驗(yàn)證結(jié)果數(shù)據(jù)中反饋給服務(wù)器。獨(dú)立登錄進(jìn)程從驗(yàn)證結(jié)果數(shù)據(jù)中獲取用于驗(yàn)證賬號(hào)的加密字符串,依據(jù)該加密字符串可以確認(rèn)用戶(hù)登錄成功,將該加密字符串存儲(chǔ)在客戶(hù)端所在終端本地,以及將該加密字符串發(fā)送給客戶(hù)端,客戶(hù)端后續(xù)可以基于加密字符串獲取登錄用戶(hù)的相關(guān)信息,因此該加密字符串還可以表示登錄狀態(tài)和關(guān)于用戶(hù)的內(nèi)部標(biāo)記等信息。
[0072]步驟224,接收所述客戶(hù)端的進(jìn)程反饋的包括加密字符串的用戶(hù)信息消息。
[0073]步驟226,將所述用戶(hù)信息消息通過(guò)所述獨(dú)立登錄進(jìn)程反饋給服務(wù)器,以使服務(wù)器依據(jù)所述加密字符串獲取對(duì)應(yīng)用戶(hù)的用戶(hù)信息。
[0074]步驟228,將所述獨(dú)立登錄進(jìn)程從服務(wù)器獲取的用戶(hù)信息發(fā)送給所述客戶(hù)端的進(jìn)程。
[0075]客戶(hù)端在用戶(hù)登錄成功后,需要獲取登錄用戶(hù)的相關(guān)信息,因此會(huì)將加密字符串添加到用戶(hù)信息消息中反饋給獨(dú)立登錄進(jìn)程,獨(dú)立登錄進(jìn)程從用戶(hù)信息消息中獲取加密字符串,并依據(jù)該用戶(hù)信息消息確定要獲取的用戶(hù)消息,如用戶(hù)頭像、用戶(hù)賬號(hào)名、角色等,再通知服務(wù)器以使服務(wù)器依據(jù)所述加密字符串獲取對(duì)應(yīng)用戶(hù)的用戶(hù)信息。
[0076]服務(wù)器依據(jù)該加密字符串確定對(duì)應(yīng)賬號(hào),查找該賬號(hào)對(duì)應(yīng)用戶(hù)的用戶(hù)信息反饋給獨(dú)立登錄進(jìn)程,獨(dú)立登錄進(jìn)程在反饋給客戶(hù)端的進(jìn)程。其中,客戶(hù)端可以將包括加密字符串的用戶(hù)信息消息傳給DLL,DLL在通知獨(dú)立登錄進(jìn)程使得獨(dú)立登錄進(jìn)程與服務(wù)器端再次交互返回相關(guān)結(jié)果。
[0077]從而通過(guò)獨(dú)立登錄進(jìn)程實(shí)現(xiàn)在客戶(hù)端中用戶(hù)的安全登錄,并且,客戶(hù)端所選的用戶(hù)信息也通過(guò)獨(dú)立登錄進(jìn)程與服務(wù)器交互加密傳輸,從而保證數(shù)據(jù)的安全性,實(shí)現(xiàn)了在無(wú)任何敏感信息暴露情況下調(diào)用獨(dú)立登錄進(jìn)程執(zhí)行登錄。
[0078]本發(fā)明另一個(gè)可選實(shí)施例中,采用守護(hù)進(jìn)程加固防護(hù)所述獨(dú)立登錄進(jìn)程。本實(shí)施例中,以Windows系統(tǒng)為例,Windows系統(tǒng)中以進(jìn)程為最基本的資源載體和單位。為了進(jìn)一步保證在獨(dú)立登錄進(jìn)程中登錄的安全,可以采用守護(hù)進(jìn)程對(duì)獨(dú)立登錄進(jìn)程進(jìn)行加固并防護(hù),其中,守護(hù)進(jìn)程的加固保護(hù)主要從兩方面入手來(lái)從根源上防止外部惡意程序獲取進(jìn)程內(nèi)敏感信息。一為防止進(jìn)程被debug(調(diào)試)二為防止進(jìn)程被注入。
[0079]本發(fā)明實(shí)施例針對(duì)客戶(hù)端的用戶(hù)登錄提出了一種第三方的獨(dú)立登錄進(jìn)程進(jìn)行登錄的方式,其中,客戶(hù)端有多種類(lèi)型,如瀏覽器客戶(hù)端、播放器客戶(hù)端、游戲客戶(hù)端以及社交網(wǎng)絡(luò)客戶(hù)端等。
[0080]以游戲客戶(hù)端為例,用戶(hù)在啟動(dòng)客戶(hù)端游戲進(jìn)行網(wǎng)絡(luò)游戲時(shí),需要在游戲客戶(hù)端中登錄才能獲取角色、裝備等信息進(jìn)行游戲。本實(shí)施例中在游戲客戶(hù)端中調(diào)用DLL啟動(dòng)第三方的獨(dú)立登錄進(jìn)程,將獨(dú)立登錄進(jìn)程的登錄窗口作為游戲界面窗口的子窗口,顯示在游戲界面窗口之上。用戶(hù)在獨(dú)立登錄進(jìn)程的登錄窗口中輸入登錄信息后,獨(dú)立登錄進(jìn)程對(duì)登錄信息進(jìn)行加