專利名稱:一種身份認(rèn)證的方法、裝置和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種身份認(rèn)證的方法、裝置和系統(tǒng)。
背景技術(shù):
隨著信息技術(shù)(IT, Information Technology)的發(fā)展,身份認(rèn)證技術(shù)的應(yīng)用也越來(lái)越普遍,為了提高身份認(rèn)證的安全性的情況的發(fā)生,現(xiàn)有技術(shù)中提出一次性口令的身份認(rèn)證技術(shù),具體可以如下步驟I、用戶通過(guò)一次性口令生成系統(tǒng),比如通過(guò)RSA token (基于令牌的RSA加密算法)卡或軟件系統(tǒng)等方式獲取一次性口令(OTP, One Time Password);
步驟2、用戶在系統(tǒng)登錄入口輸入用戶身份和一次性口令以登錄服務(wù)器;步驟3、系統(tǒng)登錄入口發(fā)送用戶登錄請(qǐng)求給服務(wù)器,其中,用戶登錄請(qǐng)求攜帶用戶身份和一次性口令;步驟4、服務(wù)器校驗(yàn)用戶身份,若校驗(yàn)通過(guò),則執(zhí)行步驟5,否則,若檢驗(yàn)不通過(guò),則返回用戶身份校驗(yàn)失敗的提示給用戶;步驟5、服務(wù)器在身份校驗(yàn)通過(guò)后,向一次性口令校驗(yàn)系統(tǒng)校驗(yàn)一次性口令的正確性;步驟6、一次性口令校驗(yàn)系統(tǒng)對(duì)一次性口令進(jìn)行檢驗(yàn),若檢驗(yàn)通過(guò),則返回校驗(yàn)正確的通知消息給服務(wù)器,若檢驗(yàn)不通過(guò),則返回檢驗(yàn)錯(cuò)誤的知消息給服務(wù)器;步驟7、若接收到一次性口令校驗(yàn)系統(tǒng)所返回的校驗(yàn)正確的通知消息,則服務(wù)器提供服務(wù),供用戶進(jìn)行操作;若接收到一次性口令校驗(yàn)系統(tǒng)所返回的校驗(yàn)失敗的通知消息,則服務(wù)器發(fā)送一次性口令錯(cuò)誤的提示消息給用戶。在對(duì)現(xiàn)有技術(shù)的研究和實(shí)踐過(guò)程中,本發(fā)明的發(fā)明人發(fā)現(xiàn),雖然一次性口令的身份認(rèn)證方法可以提高身份認(rèn)證的安全性,但是在用戶需要訪問(wèn)多個(gè)服務(wù)時(shí),需要多次輸入用戶身份信息及一次性口令,不方便用戶使用,特別是隨著基礎(chǔ)設(shè)施的不斷完善和發(fā)展,各企業(yè)會(huì)自主開(kāi)發(fā)或者購(gòu)買若干個(gè)彼此相互隔離的應(yīng)用系統(tǒng),若每登錄一個(gè)系統(tǒng)都需要重新再獲取并輸入一次一次性口令,將十分費(fèi)時(shí)且不便。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種身份認(rèn)證的方法、裝置和系統(tǒng),以保證身份認(rèn)證的安全性的同時(shí),實(shí)現(xiàn)單點(diǎn)登錄(SS0, Single Sign On)的功能。單點(diǎn)登錄的技術(shù),即在多個(gè)應(yīng)用系統(tǒng)中,用戶只需要登錄一次就可以訪問(wèn)所有相互信任的應(yīng)用系統(tǒng)。一種身份認(rèn)證的方法,包括獲取并保存用戶身份信息;響應(yīng)于用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證;
接收服務(wù)器在身份驗(yàn)證通過(guò)后,返回的一次性口令;根據(jù)所述一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,以便所述客戶端向所述服務(wù)器發(fā)起攜帶所述一次性口令的服務(wù)請(qǐng)求。一種身份認(rèn)證的方法,包括
接收登錄裝置發(fā)送的攜帶有用戶身份信息的代理認(rèn)證請(qǐng)求;根據(jù)預(yù)置的安全認(rèn)證策略對(duì)所述用戶身份信息進(jìn)行身份驗(yàn)證;在身份驗(yàn)證通過(guò)時(shí),生成一次性口令并向登錄裝置返回一次性口令,并保存所述一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系;接收客戶端發(fā)送的攜帶所述一次性口令服務(wù)請(qǐng)求;對(duì)所述一次性口令進(jìn)行校驗(yàn);在所述一次性口令校驗(yàn)通過(guò)時(shí),根據(jù)所述一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系獲取所述一次性口令對(duì)應(yīng)的用戶身份信息,向客戶端返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù),并將所述一次性口令置為無(wú)效。一種登錄裝置,包括獲取單元,用于獲取并保存用戶身份信息;處理單元,用于響應(yīng)于用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證;驗(yàn)證結(jié)果接收單元,用于接收服務(wù)器在身份驗(yàn)證通過(guò)后,返回的一次性口令;啟動(dòng)單元,用于根據(jù)所述一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,以便所述客戶端向所述服務(wù)器發(fā)起攜帶所述一次性口令的服務(wù)請(qǐng)求。一種服務(wù)器,包括身份信息接收單元,用于接收登錄裝置發(fā)送的攜帶有用戶身份信息的代理認(rèn)證請(qǐng)求;身份驗(yàn)證單元,用于根據(jù)預(yù)置的安全認(rèn)證策略對(duì)所述用戶身份信息進(jìn)行身份驗(yàn)證;口令發(fā)送單元,用于在身份驗(yàn)證通過(guò)時(shí),生成一次性口令并向登錄裝置返回一次性口令,并保存所述一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系;服務(wù)請(qǐng)求接收單元,用于接收客戶端發(fā)送的攜帶所述一次性口令的服務(wù)請(qǐng)求;口令校驗(yàn)單元,用于對(duì)所述一次性口令進(jìn)行校驗(yàn);處理單元,用于在所述一次性口令校驗(yàn)通過(guò)時(shí),根據(jù)所述一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系獲取所述一次性口令對(duì)應(yīng)的用戶身份信息,向所述客戶端返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù),并將所述一次性口令置為無(wú)效?!N通信系統(tǒng),包括終端設(shè)備和本發(fā)明實(shí)施例提供的任一種服務(wù)器,所述終端設(shè)備包括本發(fā)明實(shí)施例提供的任一種登錄裝置和客戶端;所述客戶端由登錄裝置根據(jù)一次性口令構(gòu)造參數(shù)來(lái)啟動(dòng),并在啟動(dòng)之后,利用所述一次性口令向服務(wù)器發(fā)起服務(wù)請(qǐng)求。一種終端設(shè)備,包括客戶端和本發(fā)明實(shí)施例提供的任一種登錄裝置;所述客戶端由登錄裝置根據(jù)一次性口令構(gòu)造參數(shù)來(lái)啟動(dòng),并在啟動(dòng)之后,利用所述一次性口令向服務(wù)器發(fā)起服務(wù)請(qǐng)求。
本發(fā)明實(shí)施例采用由登錄裝置獲取并保存用戶身份信息,然后在接收到用戶發(fā)起的針對(duì)某一個(gè)服務(wù)器的服務(wù)訪問(wèn)請(qǐng)求時(shí),將保存的用戶身份信息發(fā)送給該服務(wù)器進(jìn)行身份驗(yàn)證,以獲取一次性口令,最后根據(jù)該一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,以便客戶端向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求,以實(shí)現(xiàn)訪問(wèn)該服務(wù)器的目的。由于登錄裝置在獲取到用戶身份信息之后,可以保存用戶身份信息,并在用戶發(fā)起服務(wù)訪問(wèn)請(qǐng)求時(shí),自動(dòng)地獲取一次性口令并進(jìn)行登錄,所以在本方案中,用戶只需要輸入一次用戶身份信息,就可以訪問(wèn)不同的服務(wù)器,這相對(duì)于現(xiàn)有技術(shù)中,用戶在訪問(wèn)不同的服務(wù)器時(shí)都需要重新輸入一次用戶身份信息而言,大大方便了用戶的操作,而且,由于該方案一次性口令的驗(yàn)證方式,所以,身份驗(yàn)證的安全性也較好,也就是說(shuō),本 方案可以在保證身份認(rèn)證的安全性的同時(shí),實(shí)現(xiàn)單點(diǎn)登錄的功能。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I是本發(fā)明實(shí)施例提供的身份認(rèn)證的方法的流程圖;圖2是本發(fā)明實(shí)施例提供的身份認(rèn)證的方法的另一流程圖;圖3a是本發(fā)明實(shí)施例提供的身份認(rèn)證的方法的又一流程圖;圖3b是本發(fā)明實(shí)施例提供的身份認(rèn)證的方法的場(chǎng)景示意圖;圖4a是本發(fā)明實(shí)施例提供的身份認(rèn)證的方法的又一流程圖;圖4b是本發(fā)明實(shí)施例提供的身份認(rèn)證的方法的又一場(chǎng)景示意圖;圖5是本發(fā)明實(shí)施例提供的登錄裝置的結(jié)構(gòu)示意圖;圖6a是本發(fā)明實(shí)施例提供的服務(wù)器的結(jié)構(gòu)示意圖;圖6b是本發(fā)明實(shí)施例提供的服務(wù)器的結(jié)構(gòu)示意圖;圖7是本發(fā)明實(shí)施例提供的通信系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明實(shí)施例提供一種身份認(rèn)證的方法、裝置和系統(tǒng)。以下分別進(jìn)行詳細(xì)說(shuō)明。實(shí)施例一、本實(shí)施例將從登錄裝置的角度進(jìn)行描述,該登錄裝置可以集成在操作系統(tǒng)中,t匕如具體可以集成在手機(jī)、平板、便攜電腦、個(gè)人數(shù)字處理PDA或其他終端設(shè)備等等的操作系統(tǒng)中。為了描述方便,在本發(fā)明實(shí)施例中,將該登錄裝置稱為入口(Portal)。—種身份認(rèn)證的方法,包括獲取并保存用戶身份信息,響應(yīng)于用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有該用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證,接收服務(wù)器在身份驗(yàn)證通過(guò)時(shí)返回的一次性口令,根據(jù)該一次性口令構(gòu)造參數(shù),以啟動(dòng)客戶端,以便該客戶端利用一次性口令向服務(wù)器發(fā)起服務(wù)請(qǐng)求。參見(jiàn)圖1,具體流程可以如下101、獲取并保存用戶身份信息。例如,具體可以接收用戶輸入的用戶身份信息,然后保存該用戶身份信息。即,在操作系統(tǒng)用戶身份認(rèn)證成功后,由Portal根據(jù)登錄操作系統(tǒng)的用戶信息自動(dòng)獲取用戶身份信息,使用Portal時(shí),用戶直接使用而不需要再次輸入用戶身份信息。需說(shuō)明的是,如果系統(tǒng)中存在有集中的認(rèn)證中心,即存在認(rèn)證、授權(quán)和記賬(AAA,Authentication, Authorization, Accounting)系統(tǒng),則為了節(jié)省信令流程,此時(shí)還可以請(qǐng)求認(rèn)證中心對(duì)該用戶身份信息進(jìn)行驗(yàn)證,以便確認(rèn)該用戶是否有訪問(wèn)服務(wù)的權(quán)限,如果有訪問(wèn)權(quán)限,才接收用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,否則,則拒絕用戶的訪問(wèn),流程結(jié)束。即,在獲取并保存用戶身份信息之后,方法還可以包括根據(jù)用戶身份信息發(fā)送用戶身份校驗(yàn)請(qǐng)求給認(rèn)證中心,以便認(rèn)證中心對(duì)用戶身份信息進(jìn)行校驗(yàn),若接收到認(rèn)證中心返回的表示校驗(yàn)通過(guò)的消息,則構(gòu)造用戶可訪問(wèn)服務(wù)的入口 ;若接收到認(rèn)證中心返回的表示校驗(yàn)不通過(guò)的消息,則返回拒絕訪問(wèn)的消息給用戶。102、響應(yīng)于用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有該用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證,若驗(yàn)證通過(guò),則執(zhí)行步驟103,若驗(yàn)證不通過(guò),則可以不動(dòng)作,也可以執(zhí)行步驟104。例如,具體可以響應(yīng)于用戶通過(guò)該構(gòu)造的用戶可訪問(wèn)服務(wù)的入口發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有該用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證。其中,服務(wù)器具體可以為網(wǎng)頁(yè)(web,website)服務(wù)器或其他類型的服務(wù)器(server),等等。其中,可以由服務(wù)器直接進(jìn)行身份驗(yàn)證,也可以對(duì)認(rèn)證方式進(jìn)行擴(kuò)展,比如通過(guò)認(rèn)證中心進(jìn)行身份驗(yàn)證,例如,具體可以如下向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所該用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以便服務(wù)器進(jìn)行身份驗(yàn)證;或者,向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所該用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以便服務(wù)器通過(guò)認(rèn)證中心進(jìn)行身份驗(yàn)證。比如,服務(wù)器在接收到代理認(rèn)證請(qǐng)求后,可以向認(rèn)證中心發(fā)送攜帶了用戶身份信息的用戶身份校驗(yàn)請(qǐng)求,然后接收認(rèn)證中心返回的驗(yàn)證結(jié)果,若驗(yàn)證結(jié)果指示驗(yàn)證通過(guò),則執(zhí)行步驟103,若驗(yàn)證結(jié)果指示驗(yàn)證不通過(guò),則執(zhí)行步驟104其中。其中,認(rèn)證中心進(jìn)行身份驗(yàn)證的相關(guān)技術(shù)具體可參見(jiàn)現(xiàn)有技術(shù),在此不再贅述。103、在身份驗(yàn)證通過(guò)時(shí),接收服務(wù)器返回的一次性口令,然后執(zhí)行步驟105。其中,該一次性口令由服務(wù)器生成,具體的生成方法,可以參見(jiàn)現(xiàn)有技術(shù),在此不再贅述。104、在身份驗(yàn)證不通過(guò)時(shí),可以接收服務(wù)器返回的拒絕訪問(wèn)的消息,流程結(jié)束。105、根據(jù)步驟103中得到的一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,以便該客戶端向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求。其中,客戶端根據(jù)服務(wù)系統(tǒng)(服務(wù)系統(tǒng)可以包括服務(wù)器和客戶端)結(jié)構(gòu)類型而定,比如,具體可以為⑶I UtSserver)或?yàn)g覽器(對(duì)應(yīng)web服務(wù)器)等。其中,對(duì)應(yīng)不同類型的服務(wù)系統(tǒng),啟動(dòng)的方式有所不同,例如,具體可以如下(I)如果服務(wù)系統(tǒng)為客戶端/服務(wù)器(C/S,Client/Server)結(jié)構(gòu),則可以將服務(wù)器信息和該一次性口令作為參數(shù),以啟動(dòng)該服務(wù)器對(duì)應(yīng)的圖形用戶界面(GUI,GraphicalUser Interface),以便該⑶向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求;或者,(2)如果服務(wù)系統(tǒng)為瀏覽器/服務(wù)器(B/S,Browser/Server)結(jié)構(gòu),則可以根據(jù)服務(wù)器信息和該一次性口令構(gòu)造一個(gè)臨時(shí)的統(tǒng)一資源定位符(URL, Universal ResourceLocator),以啟動(dòng)瀏覽器,以便該啟動(dòng)的瀏覽器向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求。此后,服務(wù)器在接收到服務(wù)請(qǐng)求后,將會(huì)校驗(yàn)該一次性口令的有效性,比如校驗(yàn)是否是本系統(tǒng)頒發(fā)的一次性口令,該一次性口令是否已被使用、或者該一次性口令是否已經(jīng)過(guò)期等,如果校驗(yàn)失敗,比如不是本系統(tǒng)頒發(fā)的一次性口令、該一次性口令已經(jīng)被使用、或者該一次性口令已經(jīng)過(guò)期等等,則返回拒絕訪問(wèn)的錯(cuò)誤信息;如果校驗(yàn)成功,則獲取該一次性口令對(duì)應(yīng)的用戶身份信息,返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù)給客戶端,并將該一次性口令置為無(wú)效。由上可知,本實(shí)施例采用由登錄裝置獲取并保存用戶身份信息,然后在接收到用戶發(fā)起的針對(duì)某一個(gè)服務(wù)器的服務(wù)訪問(wèn)請(qǐng)求時(shí),將保存的用戶身份信息發(fā)送給該服務(wù)器進(jìn)行身份驗(yàn)證,以獲取一次性口令,最后根據(jù)該一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,以便客戶端向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求,以實(shí)現(xiàn)訪問(wèn)該服務(wù)器的目的。由于登錄裝置在獲取到用戶身份信息之后,可以保存用戶身份信息,并在用戶發(fā)起服務(wù)訪問(wèn)請(qǐng)求時(shí),自動(dòng)地獲取一次性口令并進(jìn)行登錄,所以在本方案中,用戶只需要輸入一次用戶身份信息,就可以訪問(wèn)不同的服務(wù)器,這相對(duì)于現(xiàn)有技術(shù)中,用戶在訪問(wèn)不同的服務(wù)器時(shí)都需要重新輸入一次用戶身份信息而言,大大方便了用戶的操作,而且,由于該方案采用一次性口令的驗(yàn)證方式,所以,身份驗(yàn)證的安全性也較好,也就是說(shuō),本方案可以在保證身份認(rèn)證的安全性的同時(shí),實(shí)現(xiàn)單點(diǎn)登錄的功能。實(shí)施例二、本實(shí)施例將從服務(wù)系統(tǒng)中的服務(wù)器的角度進(jìn)行描述。其中,該服務(wù)系統(tǒng)指的是可以為用戶提供某種服務(wù),并供用戶進(jìn)行操作的系統(tǒng);服務(wù)器中的服務(wù)器指的是在該系統(tǒng)中用于管理資源并提供服務(wù)的設(shè)備,比如,該服務(wù)器具體可以為網(wǎng)頁(yè)(web,website)服務(wù)器或服務(wù)器(server)等。一種身份認(rèn)證的方法,包括接收登錄裝置發(fā)送的攜帶有用戶身份信息的代理認(rèn)證請(qǐng)求,根據(jù)預(yù)置的安全認(rèn)證策略對(duì)該代理認(rèn)證請(qǐng)求中的用戶身份信息進(jìn)行身份驗(yàn)證,在身份驗(yàn)證通過(guò)時(shí),生成一次性口令并向登錄裝置返回一次性口令,并保存該一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系,接收客戶端發(fā)送的攜帶一次性口令的服務(wù)請(qǐng)求,對(duì)一次性口令進(jìn)行校驗(yàn),在該一次性口令校驗(yàn)通過(guò)時(shí),獲取該一次性口令對(duì)應(yīng)的用戶身份信息,根據(jù)該一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系向客戶端返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù),并將該一次性口令置為無(wú)效。
參見(jiàn)圖2,具體流程可以如下201、接收登錄裝置發(fā)送的攜帶有用戶身份信息的代理認(rèn)證請(qǐng)求;其中,登錄裝置具體可參見(jiàn)實(shí)施例,在此不再贅述。202、根據(jù)預(yù)置的安全認(rèn)證策略對(duì)步驟201接收到的用戶身份信息進(jìn)行身份驗(yàn)證,如果驗(yàn)證通過(guò),則執(zhí)行步驟203,如果驗(yàn)證不通過(guò),則可以不動(dòng)作,或者,也可以執(zhí)行步驟204 ;例如,具體可以如下(I)由服務(wù)器對(duì)用戶身份信息進(jìn)行身份驗(yàn)證;或者,(2)由服務(wù)器向認(rèn)證中心發(fā)送攜帶用戶身份信息的用戶身份校驗(yàn)請(qǐng)求,以便認(rèn)證中心根據(jù)該用戶身份信息進(jìn)行身份驗(yàn)證;接收認(rèn)證中心返回的身份驗(yàn)證結(jié)果,其中,身份驗(yàn)證結(jié)果指示身份驗(yàn)證通過(guò)或不通過(guò),即身份驗(yàn)證結(jié)果具體為指示身份驗(yàn)證通過(guò)的身份驗(yàn)證結(jié)果,或指示身份驗(yàn)證不通過(guò)的身份驗(yàn)證結(jié)果。其中,安全認(rèn)證策略可以根據(jù)實(shí)際應(yīng)用的需求進(jìn)行設(shè)置,具體可以是預(yù)置的,也可以是用戶通過(guò)人機(jī)交互接口進(jìn)行動(dòng)態(tài)配置。
203、在身份驗(yàn)證通過(guò)時(shí),生成一次性口令,向登錄裝置返回該一次性口令,并保存該一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系,然后執(zhí)行步驟205。204、若身份驗(yàn)證不通過(guò),則可以向登錄裝置返回拒絕訪問(wèn)的消息,流程結(jié)束。205、接收客戶端發(fā)送的攜帶一次性口令的服務(wù)請(qǐng)求。206、對(duì)該一次性口令進(jìn)行校驗(yàn),比如校驗(yàn)是否是本系統(tǒng)頒發(fā)的一次性口令,該一次性口令是否已被使用、或者該一次性口令是否已經(jīng)過(guò)期等,如果校驗(yàn)失敗,比如不是本系統(tǒng)頒發(fā)的一次性口令、該一次性口令已經(jīng)被使用、或者該一次性口令已經(jīng)過(guò)期等等,則可以不動(dòng)作,也可以執(zhí)行步驟208 ;如果校驗(yàn)成功,則執(zhí)行步驟207。207、若該一次性口令校驗(yàn)通過(guò),則根據(jù)該一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系獲取與該一次性口令對(duì)應(yīng)的用戶身份信息,向客戶端返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù),并將所述一次性口令置為無(wú)效。208、若對(duì)一次性口令校驗(yàn)不通過(guò),則可以向客戶端返回拒絕訪問(wèn)的消息。由上可知,本實(shí)施例采用由登錄裝置獲取并保存用戶身份信息,并在用戶發(fā)起針對(duì)某一個(gè)服務(wù)器的服務(wù)訪問(wèn)請(qǐng)求時(shí),由服務(wù)器接收登錄裝置發(fā)送的用戶身份信息,然后對(duì)該用戶身份信息進(jìn)行身份驗(yàn)證,在驗(yàn)證通過(guò)時(shí)生成一次性口令,并將該一次性口令提供給登錄裝置,以便登錄裝置根據(jù)該一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,然后接收客戶端向服務(wù)器發(fā)起的攜帶一次性口令的服務(wù)請(qǐng)求,以便后續(xù)提供相應(yīng)的服務(wù)給用戶。由于登錄裝置在獲取到用戶身份信息之后,可以保存用戶身份信息,并在用戶發(fā)起服務(wù)訪問(wèn)請(qǐng)求時(shí),自動(dòng)地獲取一次性口令并進(jìn)行登錄,所以在本方案中,用戶只需要輸入一次用戶身份信息,就可以訪問(wèn)不同的服務(wù)器,這相對(duì)于現(xiàn)有技術(shù)中,用戶在訪問(wèn)不同的服務(wù)器時(shí)都需要重新輸入一次用戶身份信息而言,大大方便了用戶的操作,而且,由于該方案采用一次性口令的驗(yàn)證方式,所以,身份驗(yàn)證的安全性也較好,也就是說(shuō),本方案可以在保證身份認(rèn)證的安全性的同時(shí),實(shí)現(xiàn)單點(diǎn)登錄的功能。根據(jù)實(shí)施例一和實(shí)施例二所描述的方法,以下將在實(shí)施例三和實(shí)施例四中舉例作進(jìn)一步詳細(xì)說(shuō)明。實(shí)施例三、在本實(shí)施例中,將以由服務(wù)器直接對(duì)用戶身份信息進(jìn)行驗(yàn)證為例進(jìn)行說(shuō)明。其中,該登錄裝置具體可以通過(guò)一段代碼來(lái)實(shí)現(xiàn),為了描述方便,在本實(shí)施例中,將該登錄裝置稱為Portal,該P(yáng)ortal可以嵌入到操作系統(tǒng)中。參見(jiàn)圖3a和圖3b,該身份認(rèn)證方法的流程具體可以如下301、用戶輸入用戶身份信息,比如輸入用戶名和密碼等信息,觸發(fā)Portal的啟
動(dòng)。 302、Portal保存用戶身份信息,比如保存用戶輸入的用戶名和密碼等信息。其中,Portal在保存身份信息時(shí),可以使用安全措施,以保證用戶身份信息的安全。303、用戶在需要訪問(wèn)具體的服務(wù)時(shí),在Portal中發(fā)起服務(wù)訪問(wèn)請(qǐng)求。304、Portal接收到用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求后,根據(jù)用戶需要訪問(wèn)的服務(wù),將保存的用戶身份信息攜帶在代理認(rèn)證請(qǐng)求中,發(fā)送給相應(yīng)的服務(wù)系統(tǒng)中的服務(wù)器,比如相應(yīng)的web服務(wù)器或其他類型的服務(wù)器(server),以請(qǐng)求一次性口令,參見(jiàn)圖3b。例如,如果服務(wù)器I提供有服務(wù)A,則當(dāng)用戶需要訪問(wèn)服務(wù)A時(shí),Portal將會(huì)把保存的用戶身份信息發(fā)送給服務(wù)器I ;同理,如果服務(wù)器2提供有服務(wù)B,則當(dāng)用戶需要訪問(wèn)服務(wù)B時(shí),Portal將會(huì)把保存的用戶身份信息發(fā)送給服務(wù)器2,以此類推,等等。需說(shuō)明的是,如果用戶訪問(wèn)完服務(wù)A后,還想繼續(xù)訪問(wèn)別的服務(wù),比如服務(wù)B,則此時(shí)只需返回執(zhí)行步驟304 步驟312即可。其中,為了提高用戶身份的安全性,具體可以采用安全套接層(SSL,SecureSockets Layer)通道的方式來(lái)傳遞用戶身份信息。305、服務(wù)器(如web服務(wù)器或server)根據(jù)自身的安全認(rèn)證策略,對(duì)接收到的用戶身份信息進(jìn)行驗(yàn)證,若驗(yàn)證通過(guò),則表示用戶可以訪問(wèn)該服務(wù),于是執(zhí)行步驟306,若驗(yàn)證不通過(guò),則表示用戶不可以訪問(wèn)該服務(wù),于是可以執(zhí)行步驟307。306、若身份驗(yàn)證通過(guò),則服務(wù)器(如web服務(wù)器或server)生成一次性口令,發(fā)送一次性口令給Portal,并保存一次性口令同用戶身份信息的關(guān)聯(lián)關(guān)系。307、若身份驗(yàn)證不通過(guò),則服務(wù)器(比如web服務(wù)器或server)可以不動(dòng)作,也可以返回拒絕訪問(wèn)的消息給Portal,以提示用戶錯(cuò)誤信息。308、Portal如果獲取不到一次性口令,比如接收到服務(wù)器返回的拒絕訪問(wèn)的消息,或者,由于網(wǎng)絡(luò)的問(wèn)題導(dǎo)致沒(méi)有接收到一次性口令,則可以提示用戶無(wú)權(quán)限訪問(wèn)該服務(wù)。如果Portal獲取到該一次性口令,則根據(jù)獲取到的一次性口令構(gòu)造參數(shù)以啟動(dòng)該服務(wù)器對(duì)應(yīng)的客戶端,以便該客戶端向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求。其中,對(duì)應(yīng)不同類型的服務(wù)器,啟動(dòng)的方式有所不同,例如,參見(jiàn)圖3b,具體可以如下(I)如果服務(wù)器為客戶端/服務(wù)器結(jié)構(gòu),則Portal可以將服務(wù)器信息和該一次性口令作為參數(shù),以啟動(dòng)該服務(wù)器對(duì)應(yīng)的GUI,以便GUI向server發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求;或者,(2)如果服務(wù)器為瀏覽器/服務(wù)器結(jié)構(gòu),則Portal可以根據(jù)服務(wù)器信息和該一次性口令構(gòu)造一個(gè)臨時(shí)的URL,以啟動(dòng)瀏覽器,以便該瀏覽器向web服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求。309、客戶端(如瀏覽器或⑶I)向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求。310、服務(wù)器(比如web服務(wù)器或server)在接收到服務(wù)請(qǐng)求后,對(duì)該一次性口令進(jìn)行校驗(yàn),比如校驗(yàn)是否是本系統(tǒng)頒發(fā)的一次性口令,該一次性口令是否已被使用、或者該一次性口令是否已經(jīng)過(guò)期等,如果校驗(yàn)失敗,比如不是本系統(tǒng)頒發(fā)的一次性口令、該一次性口令已經(jīng)被使用、或者該一次性口令已經(jīng)過(guò)期等等,則可以不動(dòng)作,也可以返回拒絕訪問(wèn)的消息給客戶端,客戶端可以提示用戶出錯(cuò),比如提示用戶一次性口令錯(cuò)誤或不可以訪問(wèn)等信息;如果校驗(yàn)成功,則執(zhí)行步驟311。311、服務(wù)器根據(jù)保存的一次性口令同用戶身份信息的關(guān)聯(lián)關(guān)系,獲取與步驟310中校驗(yàn)成功的一次性口令對(duì)應(yīng)的用戶身份信息,返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù)給客戶端,并將所述一次性口令置為無(wú)效。312、客戶端根據(jù)服務(wù)器返回的服務(wù),展示最終的操作界面給用戶,以便用戶進(jìn)行操作。 由上可知,本實(shí)施例采用由Portal獲取并保存用戶身份信息,然后在接收到用戶發(fā)起的針對(duì)某一個(gè)服務(wù)器的服務(wù)訪問(wèn)請(qǐng)求時(shí),將保存的用戶身份信息發(fā)送給該服務(wù)器進(jìn)行身份驗(yàn)證,以獲取一次性口令,最后根據(jù)該一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,以便客戶端向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求,以實(shí)現(xiàn)訪問(wèn)該服務(wù)器的目的。由于Portal在獲取到用戶身份信息之后,可以保存用戶身份信息,并在用戶發(fā)起服務(wù)訪問(wèn)請(qǐng)求時(shí),自動(dòng)地獲取一次性口令并進(jìn)行登錄,所以在本方案中,用戶只需要輸入一次用戶身份信息,就可以訪問(wèn)不同的服務(wù)器,這相對(duì)于現(xiàn)有技術(shù)中,用戶在訪問(wèn)不同的服務(wù)器時(shí)都需要重新輸入一次用戶身份信息而言,大大方便了用戶的操作,而且,由于該方案采用一次性口令的驗(yàn)證方式,具有臨時(shí)性和一次性的特點(diǎn),所以,身份驗(yàn)證的安全性也較好,也就是說(shuō),本方案可以在保證身份認(rèn)證的安全性的同時(shí),不需要用戶手工干預(yù),實(shí)現(xiàn)單點(diǎn)登錄的功能。實(shí)施例四、在本實(shí)施例中,將以服務(wù)器通過(guò)認(rèn)證中心,比如AAA系統(tǒng)對(duì)用戶身份信息進(jìn)行驗(yàn)證為例進(jìn)行說(shuō)明,這種方式有利于對(duì)用戶進(jìn)行集中管理和認(rèn)證。其中,該登錄裝置具體可以通過(guò)一段代碼來(lái)實(shí)現(xiàn),為了描述方便,在本實(shí)施例中,將該登錄裝置稱為Portal,該P(yáng)ortal可以嵌入到操作系統(tǒng)中。參見(jiàn)圖4a和圖4b(其中,圖4b中的虛線部分為與實(shí)施例三的方案,即圖3b的不同之處),該身份認(rèn)證方法的流程具體可以如下401、用戶輸入用戶身份信息,比如輸入用戶名和密碼等信息,觸發(fā)Portal的啟動(dòng)。402、Portal將用戶身份信息發(fā)送向認(rèn)證中心,以進(jìn)行身份驗(yàn)證,如果驗(yàn)證通過(guò),則表示允許訪問(wèn),返回身份驗(yàn)證結(jié)果,其中,身份驗(yàn)證結(jié)果指示身份驗(yàn)證通過(guò)或不通過(guò)。此外,如果身份驗(yàn)證通過(guò),還可以返回當(dāng)前用戶可訪問(wèn)的服務(wù)信息,比如返回訪問(wèn)服務(wù)列表,以供用戶進(jìn)行選擇。403,Portal接收到認(rèn)證中心返回的身份驗(yàn)證結(jié)果后,如果該身份驗(yàn)證結(jié)果指示身份驗(yàn)證通過(guò),則Portal構(gòu)造用戶可訪問(wèn)服務(wù)的入口(比如如果步驟402中接收到了 “當(dāng)前用戶可訪問(wèn)的服務(wù)信息”,則此時(shí)可以根據(jù)該當(dāng)前用戶可訪問(wèn)的服務(wù)信息構(gòu)造用戶可訪問(wèn)服務(wù)的入口),并保存用戶的身份信息。其中,Portal在保存身份信息時(shí),可以使用安全措施,保證用戶身份信息的安全。如果接收到認(rèn)證中心指示身份驗(yàn)證不通過(guò)的校驗(yàn)結(jié)果,則不允許用戶使用Portalo404、需要訪問(wèn)具體的服務(wù)時(shí),通過(guò)Portal中所構(gòu)造的用戶可訪問(wèn)服務(wù)的入口發(fā)起服務(wù)訪問(wèn)請(qǐng)求。405、Portal接收到用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求后,根據(jù)用戶需要訪問(wèn)的服務(wù),將保存的用戶身份信息攜帶在代理認(rèn)證請(qǐng)求中,發(fā)送給相應(yīng)的服務(wù)器,比如相應(yīng)的web服務(wù)器或server,以請(qǐng)求一次性口令,參見(jiàn)圖4b。例如,如果服務(wù)器I提供有服務(wù)A,則當(dāng)用戶需要訪問(wèn)服務(wù)A時(shí),Portal將會(huì)把保存的用戶身份信息發(fā)送給服務(wù)器I ;同理,如果服務(wù)器2提供有服務(wù)B,則當(dāng)用戶需要訪問(wèn) 服務(wù)B時(shí),Portal將會(huì)把保存的用戶身份信息發(fā)送給服務(wù)器2,以此類推,等等。需說(shuō)明的是,如果用戶訪問(wèn)完服務(wù)A后,還想繼續(xù)訪問(wèn)別的服務(wù),比如服務(wù)B,則此時(shí)只需返回執(zhí)行步驟405 步驟413即可。其中,為了提高用戶身份的安全性,具體可以采用SSL通道的方式來(lái)傳遞用戶身份信息。406、服務(wù)器(如web服務(wù)器或server)向認(rèn)證中心發(fā)送身份校驗(yàn)請(qǐng)求,其中,該身份校驗(yàn)請(qǐng)求攜帶用戶身份信息。407、認(rèn)證中心對(duì)用戶身份信息進(jìn)行驗(yàn)證,并返回驗(yàn)證結(jié)果,若驗(yàn)證結(jié)果指示驗(yàn)證通過(guò),則執(zhí)行步驟408,若驗(yàn)證結(jié)果指示驗(yàn)證不通過(guò),則執(zhí)行步驟409。其中,認(rèn)證中心進(jìn)行身份驗(yàn)證的相關(guān)技術(shù)具體可參見(jiàn)現(xiàn)有技術(shù),在此不再贅述。408、服務(wù)器(如web服務(wù)器或server)在接收到認(rèn)證中心返回的指示身份驗(yàn)證通過(guò)的驗(yàn)證結(jié)果之后,服務(wù)器生成一次性口令,發(fā)送一次性口令給Portal,并保存一次性口令同用戶身份信息的關(guān)聯(lián)關(guān)系。409、服務(wù)器(如web服務(wù)器或server)在接收到認(rèn)證中心返回的指示身份驗(yàn)證不通過(guò)的驗(yàn)證結(jié)果之后,可以不動(dòng)作,或者,也可以返回拒絕訪問(wèn)的消息給Portal,以提示用戶錯(cuò)誤信息。410、Portal如果獲取不到一次性口令,比如接收到服務(wù)器返回的拒絕訪問(wèn)的消息,或者,由于網(wǎng)絡(luò)的問(wèn)題導(dǎo)致沒(méi)有接收到一次性口令,則可以提示用戶無(wú)權(quán)限訪問(wèn)該服務(wù)。如果Portal獲取到該一次性口令,則根據(jù)獲取到的一次性口令構(gòu)造參數(shù)以啟動(dòng)服務(wù)器對(duì)應(yīng)的客戶端,以便該客戶端向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求。其中,對(duì)應(yīng)不同類型的服務(wù)系統(tǒng),啟動(dòng)的方式有所不同,例如,參見(jiàn)圖4b,具體可以如下(I)如果服務(wù)系統(tǒng)為客戶端/服務(wù)器結(jié)構(gòu),則Portal可以將服務(wù)器信息和該一次性口令作為參數(shù),以啟動(dòng)該服務(wù)器對(duì)應(yīng)的GUI,以便該GUI向server發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求;或者,(2)如果服務(wù)系統(tǒng)為瀏覽器/服務(wù)器結(jié)構(gòu),則Portal可以根據(jù)服務(wù)器信息和該一次性口令構(gòu)造一個(gè)臨時(shí)的URL,以啟動(dòng)瀏覽器,以便該瀏覽器向web服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求。411、客戶端(如瀏覽器或GUI)向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求。412、服務(wù)器(比如web服務(wù)器或server)在接收到服務(wù)請(qǐng)求后,對(duì)該一次性口令進(jìn)行校驗(yàn),比如校驗(yàn)是否是本系統(tǒng)頒發(fā)的一次性口令,該一次性口令是否已被使用、或者該一次性口令是否已經(jīng)過(guò)期等,如果校驗(yàn)失敗,比如不是本系統(tǒng)頒發(fā)的一次性口令、該一次性口令已經(jīng)被使用、或者該一次性口令已經(jīng)過(guò)期等等,則可以不動(dòng)作,也可以向客戶端返回拒絕訪問(wèn)的消息;如果校驗(yàn)成功,則執(zhí)行步驟413。413、服務(wù)器根據(jù)保存的根據(jù)保存的一次性口令同用戶身份信息的關(guān)聯(lián)關(guān)系,獲取與步驟412中校驗(yàn)成功的一次性口令對(duì)應(yīng)的用戶身份信息,返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù)給客戶端,并將所述一次性口令置為無(wú)效。414、客戶端根據(jù)服務(wù)器返回的服務(wù),展示最終的操作界面給用戶,以便用戶進(jìn)行操作。由上可知,本實(shí)施例除了可以實(shí)現(xiàn)與實(shí)施例三同樣的有益效果之外,由于是通過(guò)認(rèn)證中心(比如AAA系統(tǒng))對(duì)用戶的身份信息進(jìn)行驗(yàn)證,所以有利于對(duì)用戶進(jìn)行集中的管理和控制,可以提高管理效率。
實(shí)施例五、為了更好地實(shí)施以上方法,本發(fā)明實(shí)施例還相應(yīng)地提供一種登錄裝置,該登錄裝置具體可以通過(guò)一段代碼來(lái)實(shí)現(xiàn),在本發(fā)明實(shí)施例中稱為“Portal ”。該登錄裝置可以通過(guò)獨(dú)立的實(shí)體來(lái)實(shí)現(xiàn),也可以集成在操作系統(tǒng)中。如圖5所示,該登錄裝置可以包括獲取單元501、處理單元502、驗(yàn)證結(jié)果接收單元503和啟動(dòng)單元504 ;獲取單元501,用于獲取并保存用戶身份信息;例如,具體可以接收用戶輸入的用戶身份信息,然后保存該用戶身份信息,其中,用戶身份信息具體可以包括用戶名和密碼等信息。處理單元502,用于響應(yīng)于用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證;驗(yàn)證結(jié)果接收單元503,用于接收服務(wù)器在身份驗(yàn)證通過(guò)時(shí),返回的一次性口令;其中,該一次性口令由服務(wù)器生成,具體的生成方法,可以參見(jiàn)現(xiàn)有技術(shù),在此不再贅述。啟動(dòng)單元504,用于根據(jù)驗(yàn)證結(jié)果接收單元503接收到的一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,以便該客戶端向服務(wù)器發(fā)起攜帶該一次性口令的服務(wù)請(qǐng)求。此外,驗(yàn)證結(jié)果接收單元503,還用于在身份驗(yàn)證不通過(guò)時(shí),接收服務(wù)器返回的拒絕訪問(wèn)的消息。需說(shuō)明的是,如果系統(tǒng)中存在有集中的認(rèn)證中心,即存在AAA系統(tǒng),則為了節(jié)省信令流程,此時(shí)還可以請(qǐng)求認(rèn)證中心對(duì)該用戶身份信息進(jìn)行驗(yàn)證,以便確認(rèn)該用戶是否有訪問(wèn)服務(wù)的權(quán)限,如果有訪問(wèn)權(quán)限,才接收用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求(即執(zhí)行步驟102),否貝U,則拒絕用戶的訪問(wèn),流程結(jié)束。即該登錄裝置還可以包括發(fā)送單元發(fā)送單元,可以用于向認(rèn)證中心發(fā)送攜帶用戶身份信息(即獲取單元501獲取到的用戶身份信息)的用戶身份校驗(yàn)請(qǐng)求給認(rèn)證中心,以便認(rèn)證中心對(duì)用戶身份信息進(jìn)行校驗(yàn),在接收到認(rèn)證中心返回的表示校驗(yàn)通過(guò)的消息時(shí),構(gòu)造用戶可訪問(wèn)服務(wù)的入口。此外,該發(fā)送單元,還可以用于在接收到認(rèn)證中心返回的表示校驗(yàn)不通過(guò)的消息時(shí),向用戶返回拒絕訪問(wèn)的消息。則此時(shí),處理單元502,具體可以用于響應(yīng)于用戶通過(guò)構(gòu)造的用戶可訪問(wèn)服務(wù)的入口發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證。其中,可以由服務(wù)器直接進(jìn)行身份驗(yàn)證,也可以對(duì)認(rèn)證方式進(jìn)行擴(kuò)展,比如通過(guò)認(rèn)證中心進(jìn)行身份驗(yàn)證,例如,具體可以如下處理單元502,具體用于向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有該用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以便服務(wù)器進(jìn)行身份驗(yàn)證;或者,處理單 元502,具體用于向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有該用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以便服務(wù)器通過(guò)認(rèn)證中心進(jìn)行身份驗(yàn)證。比如,服務(wù)器在接收到服務(wù)訪問(wèn)請(qǐng)求后,可以發(fā)送攜帶了用戶身份信息的用戶身份校驗(yàn)請(qǐng)求給認(rèn)證中心,然后接收認(rèn)證中心返回的驗(yàn)證結(jié)果。其中,認(rèn)證中心進(jìn)行身份驗(yàn)證的相關(guān)技術(shù)具體可參見(jiàn)現(xiàn)有技術(shù),在此不再贅述。其中,對(duì)應(yīng)不同類型的服務(wù)系統(tǒng)(服務(wù)系統(tǒng)可以包括服務(wù)器和客戶端),啟動(dòng)單元504對(duì)客戶端的啟動(dòng)的方式會(huì)有所不同,例如,具體可以如下(I)如果服務(wù)系統(tǒng)為客戶端/服務(wù)器(C/S,Client/Server)結(jié)構(gòu),則可以將服務(wù)器信息和該一次性口令作為參數(shù),以啟動(dòng)該服務(wù)器對(duì)應(yīng)的GUI,然后由該GUI向服務(wù)器發(fā)起攜帶該一次性口令的服務(wù)請(qǐng)求。即啟動(dòng)單元504,具體可以用于在服務(wù)器為客戶端/服務(wù)器結(jié)構(gòu)時(shí),將服務(wù)器信息和一次性口令作為參數(shù),以啟動(dòng)該服務(wù)器對(duì)應(yīng)的GUI,以便該GU向該服務(wù)器發(fā)起攜帶該一次性口令的服務(wù)請(qǐng)求。(2)如果服務(wù)系統(tǒng)為瀏覽器/服務(wù)器(B/S,Bix)WSer/Server)結(jié)構(gòu),則可以根據(jù)服務(wù)器信息和該一次性口令構(gòu)造一個(gè)臨時(shí)的URL,以啟動(dòng)瀏覽器,然后由該瀏覽器向服務(wù)器發(fā)起攜帶該一次性口令的服務(wù)請(qǐng)求。即啟動(dòng)單元504,具體用于在該服務(wù)器為瀏覽器/服務(wù)器結(jié)構(gòu)時(shí),根據(jù)服務(wù)器信息和一次性口令構(gòu)造一個(gè)臨時(shí)的URL,以啟動(dòng)瀏覽器,以便該瀏覽器向服務(wù)器發(fā)起攜帶該一次性口令的服務(wù)請(qǐng)求。此后,服務(wù)器在接收到服務(wù)請(qǐng)求后,將會(huì)校驗(yàn)該一次性口令的有效性,比如校驗(yàn)是否是本系統(tǒng)頒發(fā)的一次性口令,該一次性口令是否已被使用、或者該一次性口令是否已經(jīng)過(guò)期等,如果校驗(yàn)失敗,比如不是本系統(tǒng)頒發(fā)的一次性口令、該一次性口令已經(jīng)被使用、或者該一次性口令已經(jīng)過(guò)期等等,則返回拒絕訪問(wèn)的錯(cuò)誤信息;如果校驗(yàn)成功,則獲取與該一次性口令對(duì)應(yīng)的用戶身份信息,向客戶端返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù),并將該一次性口令置為無(wú)效。需說(shuō)明的是,該登錄裝置的結(jié)構(gòu)除了上述的劃分方式之外,還可以有其他的劃分方式;具體實(shí)施時(shí),以上各個(gè)單元可以通過(guò)獨(dú)立的實(shí)體來(lái)實(shí)現(xiàn),也可以進(jìn)行任意組合,作為同一或若干個(gè)實(shí)體來(lái)實(shí)現(xiàn)。以上各個(gè)單元的具體實(shí)施可參見(jiàn)前面的方法實(shí)施例,在此不再贅述。該登錄裝置具體可以是手機(jī),平板,便攜電腦、個(gè)人數(shù)字處理PDA等等,也可以作為一個(gè)模塊集成在手機(jī),平板,便攜電腦、個(gè)人數(shù)字處理PDA中。由上可知,本實(shí)施例的登錄裝置的獲取單元501可以獲取并保存用戶身份信息,然后在處理單元502接收到用戶發(fā)起的針對(duì)某一個(gè)服務(wù)器的服務(wù)訪問(wèn)請(qǐng)求時(shí),由處理單元502將保存的用戶身份信息發(fā)送給該服務(wù)器進(jìn)行身份驗(yàn)證,以獲取一次性口令,最后由啟動(dòng)單元504根據(jù)該一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,以便客戶端向服務(wù)器發(fā)起攜帶該一次性口令的服務(wù)請(qǐng)求,以實(shí)現(xiàn)訪問(wèn)該服務(wù)器的目的。由于登錄裝置在獲取到用戶身份信息之后,可以保存用戶身份信息,并在用戶發(fā)起服務(wù)訪問(wèn)請(qǐng)求時(shí),自動(dòng)地獲取一次性口令并進(jìn)行登錄,所以在本方案中,用戶只需要輸入一次用戶身份信息,就可以訪問(wèn)不同的服務(wù)器,這相對(duì)于現(xiàn)有技術(shù)中,用戶在訪問(wèn)不同的服務(wù)器時(shí)都需要重新輸入一次用戶身份信息而言,大大方便了用戶的操作,而且,由于該方案采用一次性口令的驗(yàn)證方式,所以,身份驗(yàn)證的安全性也較好,也就是說(shuō),本方案可以在保證身份認(rèn)證的安全性的同時(shí),實(shí)現(xiàn)單點(diǎn)登錄的功倉(cāng)泛。實(shí)施例六、相應(yīng)的,本發(fā)明實(shí)施例還提供一種服務(wù)器,可以作為本發(fā)明實(shí)施例所提供身份認(rèn)證方法中的服務(wù)器,如圖6a所示,該服務(wù)器可以包括身份信息接收單元601、身份驗(yàn)證單元602、口令發(fā)送單元603、服務(wù)請(qǐng)求接收單元604、口令校驗(yàn)單元605和處理單元606 ;
身份信息接收單元601,用于接收登錄裝置發(fā)送的用戶身份信息的代理認(rèn)證請(qǐng)求;身份驗(yàn)證單元602,用于根據(jù)預(yù)置的安全認(rèn)證策略對(duì)身份信息接收單元601接收到的代理認(rèn)證請(qǐng)求中的用戶身份信息進(jìn)行身份驗(yàn)證;口令發(fā)送單元603,用于身份驗(yàn)證單元602確定身份驗(yàn)證通過(guò)時(shí),生成一次性口令,向登錄裝置返回一次性口令,并保存該一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系;服務(wù)請(qǐng)求接收單元604,用于接收客戶端利用該一次性口令發(fā)送的服務(wù)請(qǐng)求;口令校驗(yàn)單元605,用于對(duì)所述一次性口令進(jìn)行校驗(yàn);處理單元606,用于在口令校驗(yàn)單元605確定一次性口令校驗(yàn)通過(guò)時(shí),根據(jù)保存的一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系,獲取與該校驗(yàn)通過(guò)的一次性口令對(duì)應(yīng)的用戶身份信息,向客戶端返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù),并將該一次性口令置為無(wú)效。
此外,處理單元606,還可以用于在口令校驗(yàn)單元605確定一次性口令校驗(yàn)不通過(guò)時(shí),向客戶端返回拒絕訪問(wèn)的消息。其中,口令校驗(yàn)單元605在對(duì)一次性口令進(jìn)行校驗(yàn)時(shí),具體可以校驗(yàn)當(dāng)前的一次性口令是否是本系統(tǒng)頒發(fā)的一次性口令、校驗(yàn)當(dāng)前的一次性口令是否已被使用、以及校驗(yàn)當(dāng)前的一次性口令是否已經(jīng)過(guò)期等,如果該一次性口令不是本系統(tǒng)頒發(fā)的一次性口令、或者該一次性口令已經(jīng)被使用、或者該一次性口令已經(jīng)過(guò)期等等,則確定校驗(yàn)失敗(即校驗(yàn)不通過(guò)),此時(shí)處理單元606可以不動(dòng)作,也可以返回拒絕訪問(wèn)的消息給客戶端;如果該一次性口令是本系統(tǒng)頒發(fā)的一次性口令、且該一次性口令沒(méi)有被使用過(guò)、且該一次性口令沒(méi)有過(guò)期,則確定校驗(yàn)成功(即校驗(yàn)通過(guò)),則此時(shí)處理單元606可以獲取與該一次性口令對(duì)應(yīng)的用戶身份信息,向客戶端返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù),并將該一次性口令置為無(wú)效。如圖6b所示,該服務(wù)器還可以包括拒絕單元607 ;拒絕單元607,用于在身份驗(yàn)證單元602確定身份驗(yàn)證不通過(guò)時(shí),向登錄裝置返回拒絕訪問(wèn)的消息。其中,具體可以由服務(wù)器自身直接對(duì)用戶身份信息進(jìn)行身份驗(yàn)證,也可以由其他的系統(tǒng),比如認(rèn)證中心,即AAA系統(tǒng)來(lái)對(duì)用戶身份信息進(jìn)行身份驗(yàn)證。即身份驗(yàn)證單元602,具體可以用于對(duì)身份信息接收單元601接收到的用戶身份信息進(jìn)行身份驗(yàn)證;或者,身份驗(yàn)證單元602,具體可以用于向認(rèn)證中心發(fā)送攜帶用戶身份信息的用戶身份校驗(yàn)請(qǐng)求,以便認(rèn)證中心根據(jù)該用戶身份信息進(jìn)行身份驗(yàn)證;接收認(rèn)證中心返回的身份驗(yàn)證結(jié)果,其中,身份驗(yàn)證結(jié)果指示身份驗(yàn)證通過(guò)或不通過(guò)。需說(shuō)明的是,該服務(wù)器的結(jié)構(gòu)除了上述的劃分方式之外,還可以有其他的劃分方式;具體實(shí)施時(shí),以上各個(gè)單元可以通過(guò)獨(dú)立的實(shí)體來(lái)實(shí)現(xiàn),也可以進(jìn)行任意組合,作為同一或若干個(gè)實(shí)體來(lái)實(shí)現(xiàn)。以上各個(gè)單元的具體實(shí)施可參見(jiàn)前面的方法實(shí)施例,在此不再贅述。該服務(wù)器具體可以為web服務(wù)器或其他的服務(wù)器(server)等。由上可知,本實(shí)施例采用由登錄裝置獲取并保存用戶身份信息,并在用戶發(fā)起針對(duì)某一個(gè)服務(wù)器(比如服務(wù)器)的服務(wù)訪問(wèn)請(qǐng)求時(shí),由服務(wù)器的身份信息接收單元601接收登錄裝置發(fā)送的用戶身份信息,然后由身份驗(yàn)證單元602對(duì)該用戶身份信息進(jìn)行身份驗(yàn)證,在驗(yàn)證通過(guò)時(shí)由口令發(fā)送單元603生成一次性口令,并將該一次性口令提供給登錄裝置,以便登錄裝置根據(jù)該一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,然后由服務(wù)請(qǐng)求接收單元604接收客戶端向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求,以便后續(xù)提供相應(yīng)的服務(wù)給用戶。由于登錄裝置在獲取到用戶身份信息之后,可以保存用戶身份信息,并在用戶發(fā)起服務(wù)訪問(wèn)請(qǐng)求時(shí),自動(dòng)地獲取一次性口令并進(jìn)行登錄,所以在本方案中,用戶只需要輸入一次用戶身份信息,就可以訪問(wèn)不同的服務(wù)器,這相對(duì)于現(xiàn)有技術(shù)中,用戶在訪問(wèn)不同的服務(wù)器時(shí)都需要重新輸入一次用戶身份信息而言,大大方便了用戶的操作,而且,由于該方案采用一次性口令的驗(yàn)證方式,所以,身份驗(yàn)證的安全性也較好,也就是說(shuō),本方案可以在保證身份認(rèn)證的安全性的同時(shí),實(shí)現(xiàn)單點(diǎn)登錄的功能。實(shí)施例七、相應(yīng)的,本發(fā)明實(shí)施例還提供一種通信系統(tǒng),包括終端設(shè)備和本發(fā)明實(shí)施例提供的任一種服務(wù)器,該終端設(shè)備包括客戶端和本發(fā)明實(shí)施例提供的任一種登錄裝置。其中,登錄裝置和服務(wù)器的具體說(shuō)明可參見(jiàn)實(shí)施例五和實(shí)施例六,在此不再贅述??蛻舳?,由登錄裝置根據(jù)一次性口令構(gòu)造參數(shù)來(lái)啟動(dòng),并在啟動(dòng)之后,利用所述一次性口令向服務(wù)器發(fā)起服務(wù)請(qǐng)求。該客戶端,還可以用于在一次性口令校驗(yàn)不通過(guò)時(shí),接收服務(wù)器702返回的拒絕訪問(wèn)的消息。其中,該客戶端具體可以為⑶I或?yàn)g覽器。例如,參見(jiàn)圖7,該通信系統(tǒng)可以包括終端設(shè)備701和服務(wù)器702 ;其中,服務(wù)器702的數(shù)量為至少一個(gè)。終端設(shè)備701,用于獲取并保存用戶身份信息,響應(yīng)于用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器702發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證,接收服務(wù)器702在身份驗(yàn)證通過(guò)時(shí)返回的一次性口令,根據(jù)該一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,由客戶端向服務(wù)器702發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求。服務(wù)器702,用于接收終端設(shè)備701發(fā)送的攜帶有用戶身份信息的代理認(rèn)證請(qǐng)求,根據(jù)預(yù)置的安全認(rèn)證策略對(duì)該接收到的用戶身份信息進(jìn)行身份驗(yàn)證,在身份驗(yàn)證通過(guò)時(shí),生成并返回一次性口令給終端設(shè)備701,并保存該一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系,接收客戶端發(fā)送的攜帶一次性口令的服務(wù)請(qǐng)求,對(duì)該一次性口令進(jìn)行校驗(yàn),在該一次性口令校驗(yàn)通過(guò)時(shí),獲取與該一次性口令對(duì)應(yīng)的用戶身份信息,向客戶端返回用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù),并將該一次性口令置為無(wú)效。其中,服務(wù)器702,還用于在身份驗(yàn)證不通過(guò)時(shí),向終端設(shè)備701發(fā)送拒絕訪問(wèn)的消息;則此時(shí),終端設(shè)備701,還可以用于在身份驗(yàn)證不通過(guò)時(shí),接收服務(wù)器702返回的拒絕訪問(wèn)的消息。此外,服務(wù)器702,還可以用于在對(duì)一次性口令校驗(yàn)不通過(guò)時(shí),向客戶端返回拒絕訪問(wèn)的消息。其中,可以由服務(wù)器702自身直接對(duì)用戶身份信息進(jìn)行身份驗(yàn)證,也可以對(duì)認(rèn)證方式進(jìn)行擴(kuò)展,比如通過(guò)認(rèn)證中心進(jìn)行身份驗(yàn)證,即具體可以采用如下任意一種方式(I)由服務(wù)器702自身直接對(duì)用戶身份信息進(jìn)行身份驗(yàn)證;終端設(shè)備701,具體可以向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器702發(fā)送攜帶用戶身份信息的代理認(rèn)證請(qǐng)求;則此時(shí),服務(wù)器702,具體可以用于直接對(duì)該用戶身份信息進(jìn)行身份驗(yàn)證;或者,(2)通過(guò)認(rèn)證中心對(duì)用戶身份信息進(jìn)行身份驗(yàn)證;終端設(shè)備701,具體可以用于向與該服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器702發(fā)送代理認(rèn)證請(qǐng)求,其中,該代理認(rèn)證請(qǐng)求中攜帶保存的用戶身份信息;則此時(shí),服務(wù)器702,具體可以用于向認(rèn)證中心發(fā)送攜帶用戶身份信息的用戶身份校驗(yàn)請(qǐng)求,以便認(rèn)證中心根據(jù)所述用戶身份信息進(jìn)行身份驗(yàn)證;接收認(rèn)證中心返回的身份驗(yàn)證結(jié)果,其中,身份驗(yàn)證結(jié)果指示身份驗(yàn)證通過(guò)或不通過(guò)。其中,認(rèn)證中心進(jìn)行身份驗(yàn)證的相關(guān)技術(shù)具體可參見(jiàn)現(xiàn)有技術(shù),在此不再贅述。如果是通過(guò)認(rèn)證中心對(duì)用戶身份進(jìn)行認(rèn)證的話,則在登錄裝置獲取到用戶身份信息之后,還可以請(qǐng)求認(rèn)證中心對(duì)該用戶身份信息進(jìn)行驗(yàn)證,以便確認(rèn)該用戶是否有訪問(wèn)服務(wù)的權(quán)限,如果有訪問(wèn)權(quán)限,才接收用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求(即執(zhí)行步驟102),否則,則拒絕用戶的訪問(wèn);即終端設(shè)備701,具體還可以用于根據(jù)用戶身份信息向認(rèn)證中心發(fā)送用戶身份校驗(yàn)請(qǐng)求,以便認(rèn)證中心對(duì)用戶身份信息進(jìn)行校驗(yàn);若接收到認(rèn)證中心返回的表示校驗(yàn)通過(guò)的消息,則構(gòu)造用戶可訪問(wèn)服務(wù)的入口 ;若接收到認(rèn)證中心返回的表示校驗(yàn)不通過(guò)的消息,則向用戶返回拒絕訪問(wèn)的消息。此后,終端設(shè)備701可以通過(guò)該構(gòu)造的用戶可訪問(wèn)服務(wù)的入口來(lái)接收用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求。需說(shuō)明的是,該通信系統(tǒng)除了包括上述終端設(shè)備701和服務(wù)器702之外,還可以包括其他設(shè)備,比如一次性口令生成系統(tǒng)、和/或認(rèn)證中心。 一次性口令生成系統(tǒng),用于在服務(wù)器702的請(qǐng)求下,生成一次性口令,并將生成的一次性口令提供給服務(wù)器702。認(rèn)證中心,即AAA系統(tǒng),用于對(duì)用戶身份信息進(jìn)行認(rèn)證,并將認(rèn)證結(jié)果通知給終端設(shè)備701或服務(wù)器702。以上各個(gè)設(shè)備的具體實(shí)施可參見(jiàn)前面的實(shí)施例,在此不再贅述。需要說(shuō)明的是,本發(fā)明實(shí)施例的終端設(shè)備701具體可以是手機(jī),平板,便攜電腦、個(gè)人數(shù)字處理PDA等等。 由上可知,本實(shí)施例的通信系統(tǒng)采用由終端設(shè)備701獲取并保存用戶身份信息,然后在接收到用戶發(fā)起的針對(duì)某一個(gè)服務(wù)器702的服務(wù)訪問(wèn)請(qǐng)求時(shí),將保存的用戶身份信息發(fā)送給該服務(wù)器702進(jìn)行身份驗(yàn)證,以獲取一次性口令,最后根據(jù)該一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,以便客戶端向服務(wù)器702發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求,以實(shí)現(xiàn)訪問(wèn)該服務(wù)器702的目的。由于終端設(shè)備701在獲取到用戶身份信息之后,可以保存用戶身份信息,并在用戶發(fā)起服務(wù)訪問(wèn)請(qǐng)求時(shí),自動(dòng)地獲取一次性口令并進(jìn)行登錄,所以在本方案中,用戶只需要輸入一次用戶身份信息,就可以訪問(wèn)不同的服務(wù)器,這相對(duì)于現(xiàn)有技術(shù)中,用戶在訪問(wèn)不同的服務(wù)器702時(shí)都需要重新輸入一次用戶身份信息而言,大大方便了用戶的操作,而且,由于該方案采用一次性口令的驗(yàn)證方式,所以,身份驗(yàn)證的安全性也較好,也就是說(shuō),本方案可以在保證身份認(rèn)證的安全性的同時(shí),實(shí)現(xiàn)單點(diǎn)登錄的功能。實(shí)施例八、相應(yīng)的,本發(fā)明實(shí)施例還提供一種終端設(shè)備,包括客戶端和本發(fā)明實(shí)施例提供的任一種登錄裝置。其中,登錄裝置具體可參見(jiàn)前面的實(shí)施例,在此不再贅述。其中,客戶端由登錄裝置根據(jù)一次性口令構(gòu)造參數(shù)來(lái)啟動(dòng),并在啟動(dòng)之后,利用所述一次性口令向服務(wù)器發(fā)起服務(wù)請(qǐng)求,詳見(jiàn)前面的實(shí)施例,在此不再贅述。該客戶端具體可以為GUI或?yàn)g覽器,詳見(jiàn)前面的實(shí)施例。該終端設(shè)備具體可以為手機(jī),平板,便攜電腦、個(gè)人數(shù)字處理PDA等等。由于該終端設(shè)備中包括了本發(fā)明實(shí)施例提供的登錄裝置,所以同樣可以實(shí)現(xiàn)上述登錄裝置的有益效果,在此不再贅述。綜上所述,本發(fā)明上述實(shí)施例中,所采用的身份認(rèn)證的方案與現(xiàn)有的各個(gè)身份驗(yàn)證協(xié)議具有如下區(qū)別(I)與 kerberos (指網(wǎng)絡(luò)認(rèn)證協(xié)議,Network Authentication Protocol)協(xié)議認(rèn)證方案的區(qū)別,如下kerberos協(xié)議認(rèn)證方案需要專門(mén)的認(rèn)證服務(wù)器,比如密鑰分發(fā)中心(KDC, KeyDistribute Center)生成標(biāo)簽(ticket),用于標(biāo)識(shí)用戶身份;其中,ticket在傳輸過(guò)程中需要使用公鑰基礎(chǔ)設(shè)施(PKI, Public Key Infrastructure)機(jī)制來(lái)保證ticket傳輸?shù)陌踩?。而本發(fā)明實(shí)施例所提供的方案在擴(kuò)展認(rèn)證服務(wù)器時(shí),只需要認(rèn)證服務(wù)器能夠認(rèn)證用戶名和密碼即可,而不需要專門(mén)的認(rèn)證服務(wù)器,適用較為廣泛。(2)與安全斷言標(biāo)記語(yǔ)言(SAML, Security Assertion Markup Language)協(xié)議認(rèn)證方案的區(qū)別,如下SAML協(xié)議認(rèn)證方案無(wú)代理的過(guò)程,只是由需訪問(wèn)服務(wù)器(Server Provider)轉(zhuǎn)發(fā)認(rèn)證請(qǐng)求至斷言方(Identity Provider)進(jìn)行認(rèn)證身份;(3)與RSA(指RSA公鑰加密算法)機(jī)制認(rèn)證方案的區(qū)別,如下RSA機(jī)制認(rèn)證方案需要根據(jù)物理的標(biāo)記(token,)卡生成臨時(shí)碼,并且需要服務(wù)器能夠認(rèn)證token卡臨時(shí)碼。每次認(rèn)證都需要用戶輸入token卡中的臨時(shí)碼,較為不便。而本發(fā)明實(shí)施例所提供的方案在用戶輸入一次性口令后,就不需要再輸入任何信息,極為便利;與此同時(shí),還可以使用該一次性口令構(gòu)造URL以啟動(dòng)瀏覽器,或者,使用該一次性口令作為參數(shù)啟動(dòng)GUI,從而通過(guò)瀏覽器或⑶I訪問(wèn)服務(wù)器,可以防止重放攻擊(Replay Attacks);其中,所謂重放攻擊又稱重播攻擊、回放攻擊或新鮮性攻擊(FreshnessAttacks),是指攻擊者發(fā)送一個(gè)目的主機(jī)已接收過(guò)的包,來(lái)達(dá)到欺騙系統(tǒng)的目的,主要用于身份認(rèn)證過(guò)程,破壞認(rèn)證的正確性。
本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,該程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,存儲(chǔ)介質(zhì)可以包括只讀存儲(chǔ)器(ROM, Read Only Memory)、隨機(jī)存取記憶體(RAM, RandomAccess Memory)、磁盤(pán)或光盤(pán)等。以上對(duì)本發(fā)明實(shí)施例所提供的一種身份認(rèn)證的方法、裝置和系統(tǒng)進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說(shuō)明書(shū)內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。
權(quán)利要求
1.一種身份認(rèn)證的方法,其特征在于,包括 獲取并保存用戶身份信息; 響應(yīng)于用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證; 接收服務(wù)器在身份驗(yàn)證通過(guò)后,返回的一次性口令; 根據(jù)所述一次性口令構(gòu)造參數(shù)啟動(dòng)客戶端,以便所述客戶端向所述服務(wù)器發(fā)起攜帶所述一次性口令的服務(wù)請(qǐng)求。
2.根據(jù)權(quán)要求I所述的方法,其特征在于,所述向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證,具體為 向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以便所述服務(wù)器進(jìn)行身份驗(yàn)證;或者, 向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以便所述服務(wù)器通過(guò)認(rèn)證中心進(jìn)行身份驗(yàn)證。
3.根據(jù)權(quán)要求I或2所述的方法,其特征在于,所述根據(jù)所述一次性口令構(gòu)造參數(shù)啟動(dòng)客戶端,以便所述客戶端利用所述一次性口令向所述服務(wù)器發(fā)起服務(wù)請(qǐng)求,具體為 如果服務(wù)系統(tǒng)為客戶端/服務(wù)器C/S結(jié)構(gòu),則將服務(wù)器信息和所述一次性口令作為參數(shù),啟動(dòng)圖形用戶界面,以便所述圖形用戶界面向所述服務(wù)器發(fā)起攜帶所述一次性口令的服務(wù)請(qǐng)求;或者, 如果服務(wù)系統(tǒng)為瀏覽器/服務(wù)器B/S結(jié)構(gòu),則根據(jù)服務(wù)器信息和所述一次性口令構(gòu)造一個(gè)臨時(shí)的統(tǒng)一資源定位符URL,啟動(dòng)瀏覽器,以便所述瀏覽器向所述服務(wù)器發(fā)起攜帶所述一次性口令的服務(wù)請(qǐng)求。
4.根據(jù)權(quán)利2所述的方法,其特征在于,所述獲取并保存用戶身份信息之后,還包括 向所述認(rèn)證中心發(fā)送攜帶所述用戶身份信息的用戶身份校驗(yàn)請(qǐng)求,以便認(rèn)證中心對(duì)所述用戶身份信息進(jìn)行校驗(yàn); 若接收到認(rèn)證中心返回的表示校驗(yàn)通過(guò)的消息,則構(gòu)造用戶可訪問(wèn)服務(wù)的入口 ; 若接收到認(rèn)證中心返回的表示校驗(yàn)不通過(guò)的消息,則向用戶返回拒絕訪問(wèn)的消息。
5.根據(jù)權(quán)利4所述的方法,其特征在于,所述響應(yīng)于用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證包括 響應(yīng)于用戶通過(guò)構(gòu)造的用戶可訪問(wèn)服務(wù)的入口發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證。
6.一種身份認(rèn)證的方法,其特征在于,包括 接收登錄裝置發(fā)送的攜帶有用戶身份信息的代理認(rèn)證請(qǐng)求; 根據(jù)安全認(rèn)證策略對(duì)所述代理認(rèn)證請(qǐng)求中攜帶的用戶身份信息進(jìn)行身份驗(yàn)證; 在身份驗(yàn)證通過(guò)時(shí),生成一次性口令并向所述登錄裝置返回所述一次性口令,并保存所述一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系; 接收客戶端發(fā)送的攜帶所述一次性口令的服務(wù)請(qǐng)求; 對(duì)所述一次性口令進(jìn)行校驗(yàn); 在所述一次性口令校驗(yàn)通過(guò)時(shí),根據(jù)一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系獲取與所述一次性口令對(duì)應(yīng)的用戶身份信息,向所述客戶端返回所述用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù),并將所述一次性口令置為無(wú)效。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,還包括 若對(duì)一次性口令校驗(yàn)不通過(guò),則向所述客戶端返回拒絕訪問(wèn)的消息。
8.根據(jù)權(quán)利要求6所述的方法,其特征在于,還包括 若身份驗(yàn)證不通過(guò),則向所述登錄裝置返回拒絕訪問(wèn)的消息。
9.根據(jù)權(quán)利要求6至8任一項(xiàng)所述的方法,其特征在于,所述根據(jù)安全認(rèn)證策略對(duì)所述用戶身份信息進(jìn)行身份驗(yàn)證,包括 由服務(wù)器對(duì)所述用戶身份信息進(jìn)行身份驗(yàn)證;或者, 由服務(wù)器向認(rèn)證中心發(fā)送攜帶用戶身份信息的用戶身份校驗(yàn)請(qǐng)求,以便認(rèn)證中心根據(jù)所述用戶身份信息進(jìn)行身份驗(yàn)證;接收認(rèn)證中心返回的身份驗(yàn)證結(jié)果,所述身份驗(yàn)證結(jié)果指示身份驗(yàn)證通過(guò)或不通過(guò)。
10.一種登錄裝置,其特征在于,包括 獲取單元,用于獲取并保存用戶身份信息; 處理單元,用于響應(yīng)于用戶發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證; 驗(yàn)證結(jié)果接收單元,用于接收服務(wù)器在身份驗(yàn)證通過(guò)后,返回的一次性口令; 啟動(dòng)單元,用于根據(jù)所述一次性口令構(gòu)造參數(shù)啟動(dòng)客戶端,以便所述客戶端向所述服務(wù)器發(fā)起攜帶所述一次性口令的服務(wù)請(qǐng)求。
11.根據(jù)權(quán)利要求10所述的登錄裝置,其特征在于, 所述處理單元,具體用于向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以便服務(wù)器進(jìn)行身份驗(yàn)證;或者,向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶的用戶身份信息的代理認(rèn)證請(qǐng)求,以便服務(wù)器通過(guò)認(rèn)證中心進(jìn)行身份驗(yàn)證。
12.根據(jù)權(quán)利要求10或11所述的登錄裝置,其特征在于, 所述啟動(dòng)單元,具體用于在服務(wù)系統(tǒng)為客戶端/服務(wù)器C/S結(jié)構(gòu)時(shí),將服務(wù)器信息和所述一次性口令作為參數(shù),啟動(dòng)圖形用戶界面,以便所述圖形用戶界面向所述服務(wù)器發(fā)起攜帶所述一次性口令的服務(wù)請(qǐng)求;或者, 所述啟動(dòng)單元,具體用于在服務(wù)系統(tǒng)為瀏覽器/服務(wù)器B/S結(jié)構(gòu)時(shí),根據(jù)服務(wù)器信息和所述一次性口令構(gòu)造一個(gè)臨時(shí)的統(tǒng)一資源定位符URL,啟動(dòng)瀏覽器,以便所述瀏覽器向所述服務(wù)器發(fā)起攜帶所述一次性口令的服務(wù)請(qǐng)求。
13.根據(jù)權(quán)利11或12所述的登錄裝置,其特征在于,還包括 發(fā)送單元,用于向認(rèn)證中心發(fā)送攜帶所述用戶身份信息的用戶身份校驗(yàn)請(qǐng)求,以便認(rèn)證中心對(duì)用戶身份信息進(jìn)行校驗(yàn),在接收到認(rèn)證中心返回的表示校驗(yàn)通過(guò)的消息時(shí),構(gòu)造用戶可訪問(wèn)服務(wù)的入口 ;在接收到認(rèn)證中心返回的表示校驗(yàn)不通過(guò)的消息時(shí),向用戶返回拒絕訪問(wèn)的消息; 其中,所述處理單元,具體用于響應(yīng)于用戶通過(guò)構(gòu)造的用戶可訪問(wèn)服務(wù)的入口發(fā)起的服務(wù)訪問(wèn)請(qǐng)求,向與所述服務(wù)訪問(wèn)請(qǐng)求對(duì)應(yīng)的服務(wù)器發(fā)送攜帶有所述用戶身份信息的代理認(rèn)證請(qǐng)求,以進(jìn)行身份驗(yàn)證。
14.一種服務(wù)器,其特征在于,包括 代理認(rèn)證請(qǐng)求接收單元,用于接收登錄裝置發(fā)送的攜帶有用戶身份信息的代理認(rèn)證請(qǐng)求; 身份驗(yàn)證單元,用于根據(jù)安全認(rèn)證策略對(duì)所述用戶身份信息進(jìn)行身份驗(yàn)證; 口令發(fā)送單元,用于在身份驗(yàn)證通過(guò)時(shí),生成一次性口令并向所述登錄裝置返回所述一次性口令,并保存所述一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系; 服務(wù)請(qǐng)求接收單元,用于接收客戶端發(fā)送的攜帶所述一次性口令的服務(wù)請(qǐng)求; 口令校驗(yàn)單元,用于對(duì)所述一次性口令進(jìn)行校驗(yàn); 處理單元,用于在所述一次性口令校驗(yàn)通過(guò)時(shí),根據(jù)所述一次性口令和用戶身份信息的關(guān)聯(lián)關(guān)系獲取與所述一次性口令對(duì)應(yīng)的用戶身份信息,向所述客戶端返回所述用戶身份信息對(duì)應(yīng)的用戶可訪問(wèn)的服務(wù),并將所述一次性口令置為無(wú)效。
15.根據(jù)權(quán)利要求14所述的服務(wù)器,其特征在于, 所述處理單元,還用于在對(duì)一次性口令校驗(yàn)不通過(guò)時(shí),向客戶端返回拒絕訪問(wèn)的消息。
16.根據(jù)權(quán)利要求14或15所述的服務(wù)器,其特征在于, 所述身份驗(yàn)證單元,具體用于對(duì)所述用戶身份信息進(jìn)行身份驗(yàn)證;或者, 所述身份驗(yàn)證單元,具體用于向認(rèn)證中心發(fā)送攜帶用戶身份信息的用戶身份校驗(yàn)請(qǐng)求,以便認(rèn)證中心根據(jù)所述用戶身份信息進(jìn)行身份驗(yàn)證;接收認(rèn)證中心返回的身份驗(yàn)證結(jié)果,所述身份驗(yàn)證結(jié)果指示身份驗(yàn)證通過(guò)或不通過(guò)。
17.—種通信系統(tǒng),其特征在于,包括終端設(shè)備和權(quán)利要求14至16所述的任一種服務(wù)器,所述終端設(shè)備包括客戶端和權(quán)利要求10至13所述的任一種登錄裝置; 所述客戶端由登錄裝置根據(jù)一次性口令構(gòu)造參數(shù)來(lái)啟動(dòng),并在啟動(dòng)之后,利用所述一次性口令向所述服務(wù)器發(fā)起服務(wù)請(qǐng)求。
18.—種終端設(shè)備,其特征在于,包括客戶端和權(quán)利要求10至13所述的任一種登錄裝置; 所述客戶端由登錄裝置根據(jù)一次性口令構(gòu)造參數(shù)來(lái)啟動(dòng),并在啟動(dòng)之后,利用所述一次性口令向服務(wù)器發(fā)起服務(wù)請(qǐng)求。
19.根據(jù)權(quán)利要求18所述的終端設(shè)備,其特征在于, 所述客戶端具體為圖形用戶界面或?yàn)g覽器。
全文摘要
本發(fā)明公開(kāi)了一種身份認(rèn)證的方法、裝置和系統(tǒng)。本發(fā)明實(shí)施例采用由登錄裝置獲取并保存用戶身份信息,然后在接收到用戶發(fā)起的針對(duì)某一個(gè)服務(wù)器的服務(wù)訪問(wèn)請(qǐng)求時(shí),將保存的用戶身份信息發(fā)送給該服務(wù)器進(jìn)行身份驗(yàn)證,以獲取一次性口令,最后根據(jù)該一次性口令構(gòu)造參數(shù)以啟動(dòng)客戶端,以便客戶端向服務(wù)器發(fā)起攜帶一次性口令的服務(wù)請(qǐng)求,以實(shí)現(xiàn)訪問(wèn)該服務(wù)器的目的。本方案可以在保證身份認(rèn)證的安全性的同時(shí),實(shí)現(xiàn)單點(diǎn)登錄的功能。
文檔編號(hào)H04L29/06GK102624720SQ20121005354
公開(kāi)日2012年8月1日 申請(qǐng)日期2012年3月2日 優(yōu)先權(quán)日2012年3月2日
發(fā)明者邵佳一 申請(qǐng)人:華為技術(shù)有限公司