一種身份驗證方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計算機安全技術(shù)領(lǐng)域,尤其涉及一種身份驗證方法。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)的發(fā)展,以及智能手機的普及,移動互聯(lián)網(wǎng)開始進入人們的日常生活。由于移動終端比較容易丟失,丟失的移動終端容易被他人利用來登錄用戶的互聯(lián)網(wǎng)應(yīng)用帳號。因此現(xiàn)在的互聯(lián)網(wǎng)應(yīng)用都設(shè)置有用戶身份驗證的環(huán)節(jié),通過校驗用戶身份與手機號戶主身份的關(guān)聯(lián),確認是用戶本人在使用。
[0003]目前進行身份驗證的過程通常由客戶端發(fā)送請求到后臺服務(wù)器,后臺服務(wù)器生成驗證碼,通過多種形式發(fā)送給用戶,例如短信、郵件、微信等等,用戶收到驗證碼后,在客戶端上輸入驗證碼發(fā)送給后臺服務(wù)器,后臺服務(wù)器接收到客戶端發(fā)來的驗證碼,通過比較發(fā)來的驗證碼與后臺服務(wù)器生成的驗證碼是否一致,來判斷是否是用戶本人在使用。
[0004]但是目前這種方式的送達率較低,采用多次/多途徑驗證客戶信息時,方案間會互相產(chǎn)生數(shù)據(jù)沖突,導(dǎo)致降低用戶體驗。例如在后臺服務(wù)器生成一個驗證碼發(fā)送給用戶后,如果用戶沒有在規(guī)定時間內(nèi)收到,客戶端則會再次發(fā)送請求,后臺服務(wù)器再生成另一個驗證碼發(fā)送給用戶,前一個驗證碼失效。而此時如果用戶收到并填寫第一個驗證碼,則會導(dǎo)致驗證錯誤,后臺服務(wù)器會再次生成并發(fā)出第三個驗證碼。
[0005]顯然當(dāng)用戶經(jīng)歷過多次驗證錯誤后,會降低用戶體驗。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的是提供一種身份驗證方法,以避免現(xiàn)有技術(shù)中出現(xiàn)數(shù)據(jù)沖突,導(dǎo)致降低用戶體驗的問題。
[0007]為了實現(xiàn)上述目的,本發(fā)明技術(shù)方案如下:
[0008]—種身份驗證方法,用于用戶通過客戶端與后臺服務(wù)器之間實現(xiàn)身份驗證,所述方法包括:
[0009]用戶發(fā)送驗證請求到后臺服務(wù)器;
[0010]后臺服務(wù)器接收到用戶發(fā)來的驗證請求后,查找是否存在對應(yīng)的校驗信息,如果存在對應(yīng)的校驗信息,則讀取該校驗信息;如果沒有對應(yīng)的校驗信息,則生成新的校驗信息,并保存;
[0011]后臺服務(wù)器將所述校驗信息發(fā)送給用戶;
[0012]用戶接收到校驗信息后,將接收到的校驗信息發(fā)送給后臺服務(wù)器;
[0013]后臺服務(wù)器比較從用戶處接收到的校驗信息與本地保存的校驗信息,如果一致則驗證通過,清除對應(yīng)的校驗信息,否則驗證失敗。
[0014]進一步地,所述校驗信息還設(shè)置有對應(yīng)的有效期,所述后臺服務(wù)器接收到用戶發(fā)來的驗證請求后,查找是否存在對應(yīng)的校驗信息,是查找是否存在對應(yīng)的有效校驗信息。
[0015]進一步地,所述如果存在對應(yīng)的校驗信息,則讀取該校驗信息之后,還包括步驟:
[0016]延長該校驗信息的有效期,并將延長了有效期的該校驗信息保存。
[0017]進一步地,所述清除對應(yīng)的校驗信息是設(shè)置該校驗信息的有效期為失效。
[0018]本發(fā)明所述驗證請求還包括校驗信息發(fā)送所采用的通道模式,所述通道模式包括短信模式、郵件模式、微信模式。
[0019]進一步地,所述后臺服務(wù)器接收到用戶發(fā)來的驗證請求后,還包括步驟:
[0020]獲取驗證請求中包括的通道模式,根據(jù)通道模式查找對應(yīng)的校驗信息或生成新的校驗信息。
[0021]進一步地,所述后臺服務(wù)器將所述校驗信息發(fā)送給用戶,是通過驗證請求中包括的通道模式發(fā)送校驗信息。
[0022]本發(fā)明所述校驗信息保存在緩存中,該緩存可以是后臺服務(wù)器本地的緩存,也可以是與后臺服務(wù)器相連的緩存系統(tǒng)。
[0023]本發(fā)明提出的一種身份驗證方法,通過在緩存中存儲校驗信息,在接收到用戶的驗證請求后,查找對應(yīng)的校驗信息,在存在有效的校驗信息時,直接使用該有效校驗信息發(fā)送給用戶,能夠有效避免數(shù)據(jù)沖突導(dǎo)致的用戶體驗不好的情況。
【附圖說明】
[0024]圖1為本發(fā)明一種身份驗證方法流程圖。
【具體實施方式】
[0025]下面結(jié)合附圖和實施例對本發(fā)明技術(shù)方案做進一步詳細說明,以下實施例不構(gòu)成對本發(fā)明的限定。
[0026]身份驗證是通過比較用戶輸入的校驗信息與后臺服務(wù)器存儲的最后一次校驗信息是否一致,來判斷當(dāng)前登錄的用戶確實是注冊的合法用戶。通常通過短信、郵件、微信等通道模式來實現(xiàn)驗證,其實質(zhì)是判斷當(dāng)前登錄的用戶確實是某個關(guān)聯(lián)信息的用戶,例如是注冊時注冊的手機號碼的戶主,或者是注冊時注冊的郵件地址、微信號的戶主。
[0027]本實施例以短信發(fā)送校驗信息(一般為驗證碼)為例,來對本發(fā)明的方法進行說明,對于微信、郵件通道模式的用戶驗證同樣適用。
[0028]如圖1所示,一種身份驗證方法,包括如下步驟:
[0029]Fl、用戶發(fā)送驗證請求到后臺服務(wù)器。
[0030]用戶在登錄互聯(lián)網(wǎng)應(yīng)用時,或在需要進行用戶身份驗證時,通過客戶端向后臺服務(wù)器發(fā)送驗證請求。客戶端是用戶用來登錄和訪問互聯(lián)網(wǎng)應(yīng)用的設(shè)備,可以是安裝了客戶端軟件的手機、平板電腦、普通PC等。
[0031]F2、后臺服務(wù)器接收到用戶發(fā)來的驗證請求后,查找是否存在對應(yīng)的校驗信息,如果存在對應(yīng)的校驗信息,則讀取該校驗信息;如果沒有對應(yīng)的校驗信息,則生成新的校驗信息,并保存。
[0032]本實施例的校驗信息保存在緩存中,緩存可以是后臺服務(wù)器本地的緩存,也可以是與后臺服務(wù)器相連的緩存系統(tǒng),本發(fā)明不限于緩存的具體形式。
[0033]后臺服務(wù)器接收到用戶發(fā)來的驗證請求后,根據(jù)用戶的ID在緩存中查找對應(yīng)的驗證信息。
[0034]如果緩存中存在對應(yīng)的校驗信息,則讀取該校驗信息,從而后臺服務(wù)器具有了該校驗信息。如果緩存中沒有對應(yīng)的校驗信息,則生成新的校驗信息,并將該校驗信息同步到緩存,在緩存中保存。
[0035]可見通過本步驟,本發(fā)明的身份驗證方法能夠有效避免用戶沒有在規(guī)定時間內(nèi)收到校驗信息,而重復(fù)發(fā)送驗證請求導(dǎo)致的后臺服務(wù)器再生成另一個校驗信息的問題。當(dāng)用戶沒有在規(guī)定時間內(nèi)收到校驗信息,而重復(fù)發(fā)送驗證請求,本實施例的方法是在緩存中查找對應(yīng)的校驗信息,當(dāng)后臺服務(wù)器第二次收到驗證請求時,首先是在緩存中查找是否存在該用戶對應(yīng)的校驗信息,由于第一次驗證請求生成的校驗信息沒有被清除,因此就會查找到該校驗信息,從而將該校驗信息發(fā)送給用戶,不會再生成第二個校驗信息。也就不會發(fā)生用戶在發(fā)送第二次驗證請求后收到第一個校驗信息,輸入第一次的校驗信息而導(dǎo)致的驗證失敗問題,即消除了數(shù)據(jù)沖突的可能,提高了校驗的效率。
[0036]需要說明的是,本發(fā)明并不限于校驗信息保存的介質(zhì),可以是上述的緩存,也可以是