一種登錄方法及終端設(shè)備及通信系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種登錄方法終端設(shè)備及通信系統(tǒng)。
【背景技術(shù)】
[0002]隨著移動(dòng)互聯(lián)網(wǎng)技術(shù)的發(fā)展,一個(gè)互聯(lián)網(wǎng)公司旗下可能有多種軟件應(yīng)用,所有的軟件應(yīng)用共享同一套賬號(hào)體系。但用戶每登錄應(yīng)用軟件應(yīng)用都需要分別輸入一遍對(duì)應(yīng)的用戶密碼,輸入操作次數(shù)過(guò)多,流程過(guò)于繁瑣,用戶交互體驗(yàn)差。
[0003]目前,部分軟件應(yīng)用提供了用戶名密碼的記憶功能,用戶在第一次登錄時(shí)輸入用戶名和密碼后,軟件應(yīng)用會(huì)將登錄信息保存在本地,隨后用戶就不用再次輸入用戶名和密碼。另外,某些網(wǎng)站如新浪、騰訊,為解決類似問(wèn)題提供了第三方登錄功能,通過(guò)回調(diào)url(統(tǒng)一資源定位符,Uniform Resource Locator,簡(jiǎn)稱urI)及相關(guān)參數(shù)傳遞其登錄信息,使得用戶在其他網(wǎng)站上也可以使用新浪或騰訊的賬號(hào)登錄。
【發(fā)明內(nèi)容】
[0004]發(fā)明人在實(shí)施本發(fā)明的過(guò)程中,發(fā)現(xiàn)上述現(xiàn)有的登錄方法存在如下缺點(diǎn):將登錄信息保存在本地的方法容易被惡意軟件應(yīng)用竊取,從而導(dǎo)致賬戶信息可以被非法使用,降低賬戶信息的安全性。而通過(guò)回調(diào)url及相關(guān)參數(shù)傳遞其登錄信息的方法依賴于瀏覽器,無(wú)法應(yīng)用于非網(wǎng)站場(chǎng)景。可見(jiàn),現(xiàn)有的同一賬號(hào)系統(tǒng)的登錄方法使用戶操作繁瑣、賬戶安全性較低。
[0005]為了克服現(xiàn)有技術(shù)存在的缺點(diǎn),本發(fā)明實(shí)施例提供一種登錄方法及終端設(shè)備及通信系統(tǒng),為用戶提供安全的自動(dòng)登錄功能,增強(qiáng)用戶體驗(yàn),保證了安全性。
[0006]第一方面,本發(fā)明實(shí)施例提供一種登錄方法,包括:
[0007]軟件客戶端與系統(tǒng)客戶端建立本地連接通道,并通過(guò)所述本地連接通道接收所述系統(tǒng)客戶端提供的賬戶信息;其中,所述軟件客戶端和所述系統(tǒng)客戶端配置在同一個(gè)終端設(shè)備中,且所述系統(tǒng)客戶端已使用所述賬戶信息成功登錄到系統(tǒng)服務(wù)器,所述系統(tǒng)服務(wù)器中存儲(chǔ)有與所述賬戶信息對(duì)應(yīng)的登錄憑證;
[0008]所述軟件客戶端向軟件服務(wù)器發(fā)送登錄請(qǐng)求,與所述軟件服務(wù)器建立長(zhǎng)連接通道;其中,所述登錄請(qǐng)求包含所述賬戶信息;
[0009]所述軟件客戶端通過(guò)所述長(zhǎng)連接通道接收所述軟件服務(wù)器發(fā)送的安全啟動(dòng)參數(shù);其中,所述軟件服務(wù)器中配置有第一數(shù)據(jù)庫(kù),用于存儲(chǔ)所述安全啟動(dòng)參數(shù)、所述賬戶信息和所述長(zhǎng)連接通道的連接信息三者的關(guān)聯(lián)信息;
[0010]所述軟件客戶端向所述系統(tǒng)客戶端發(fā)送臨時(shí)憑證申請(qǐng)請(qǐng)求;其中,所述臨時(shí)憑證申請(qǐng)請(qǐng)求包含所述安全啟動(dòng)參數(shù);
[0011]所述系統(tǒng)客戶端將所述臨時(shí)憑證申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)給所述系統(tǒng)服務(wù)器,以請(qǐng)求所述系統(tǒng)服務(wù)器生成臨時(shí)憑證,并將所述臨時(shí)憑證返回給所述系統(tǒng)客戶端;其中,所述系統(tǒng)服務(wù)器中配置有第二數(shù)據(jù)庫(kù),用于存儲(chǔ)所述臨時(shí)憑證、所述安全啟動(dòng)參數(shù)和所述登錄憑證三者的關(guān)聯(lián)?目息;
[0012]所述軟件客戶端接收所述系統(tǒng)客戶端轉(zhuǎn)發(fā)的所述臨時(shí)憑證,并通過(guò)所述長(zhǎng)連接通道將所述臨時(shí)憑證發(fā)送給所述軟件服務(wù)器,以使所述軟件服務(wù)器根據(jù)所述長(zhǎng)連接通道的連接信息,查詢所述第一數(shù)據(jù)庫(kù),獲取第一安全啟動(dòng)參數(shù),并向所述系統(tǒng)服務(wù)器發(fā)送登錄憑證申請(qǐng)請(qǐng)求;其中,所述登錄憑證申請(qǐng)請(qǐng)求包含所述第一安全啟動(dòng)參數(shù)和所述臨時(shí)憑證,從而使所述系統(tǒng)服務(wù)器根據(jù)所述臨時(shí)憑證查詢所述第二數(shù)據(jù)庫(kù),獲取第二安全啟動(dòng)參數(shù),并在確認(rèn)所述第一安全啟動(dòng)參數(shù)和所述第二安全啟動(dòng)參數(shù)相一致時(shí),將所述臨時(shí)憑證所關(guān)聯(lián)的登錄憑證發(fā)送給所述軟件服務(wù)器,以使所述軟件服務(wù)器能夠使用所述關(guān)聯(lián)的登錄憑證向賬戶服務(wù)器請(qǐng)求登錄認(rèn)證;
[0013]所述軟件客戶端在所述關(guān)聯(lián)的登錄憑證通過(guò)認(rèn)證后,使用所述賬戶信息登錄到所述軟件服務(wù)器。
[0014]進(jìn)一步的,所述軟件客戶端與系統(tǒng)客戶端建立本地連接通道,并通過(guò)所述本地連接通道接收所述系統(tǒng)客戶端提供的賬戶信息,具體包括:
[0015]所述軟件客戶端接收所述系統(tǒng)客戶端發(fā)送的本地連接通道的連接信息;
[0016]所述軟件客戶端根據(jù)所述本地連接通道的連接信息,向所述系統(tǒng)客戶端發(fā)送握手認(rèn)證信息,以請(qǐng)求所述系統(tǒng)客戶端進(jìn)行握手認(rèn)證;
[0017]所述軟件客戶端在被所述系統(tǒng)客戶端認(rèn)證合法后,與所述系統(tǒng)客戶端建立所述本地連接通道,并通過(guò)所述本地連接通道接收所述系統(tǒng)客戶端提供的賬戶信息。
[0018]進(jìn)一步的,所述本地連接通道為本地端口通道、管道命名連接通道、消息對(duì)列連接通道或內(nèi)存共享連接通道。
[0019]進(jìn)一步的,在所述軟件客戶端與系統(tǒng)客戶端建立本地連接通道之前,還包括:
[0020]所述系統(tǒng)客戶端將所述賬戶信息發(fā)送給賬戶服務(wù)器,以請(qǐng)求所述賬戶服務(wù)器驗(yàn)證所述賬戶信息,并在驗(yàn)證成功后生成與所述賬戶信息對(duì)應(yīng)的登錄憑證;
[0021]所述系統(tǒng)客戶端接收所述登錄憑證,并保存到內(nèi)存中;
[0022]所述系統(tǒng)客戶端將所述登錄憑證轉(zhuǎn)發(fā)給所述系統(tǒng)服務(wù)器,以使所述系統(tǒng)服務(wù)器向所述賬戶服務(wù)器請(qǐng)求驗(yàn)證所述登錄憑證的合法性,并在所述登錄憑證驗(yàn)證通過(guò)后,存儲(chǔ)所述登錄憑證;
[0023]所述系統(tǒng)客戶端接收所述系統(tǒng)服務(wù)器返回的登錄憑證驗(yàn)證合法的信息后,從內(nèi)存中刪除所述登錄憑證,并使用所述賬戶信息登錄到所述系統(tǒng)服務(wù)器。
[0024]進(jìn)一步的,在所述系統(tǒng)客戶端使用所述賬戶信息登錄到所述系統(tǒng)服務(wù)器之后,還包括:
[0025]所述系統(tǒng)客戶端還接收所述系統(tǒng)服務(wù)器發(fā)送的登錄信息,并使用本系統(tǒng)客戶端的硬件特征信息對(duì)所述登錄信息進(jìn)行加密并存儲(chǔ);
[0026]所述系統(tǒng)客戶端需要進(jìn)行自動(dòng)登錄認(rèn)證時(shí),將所述登錄信息發(fā)送給所述系統(tǒng)服務(wù)器,以使所述系統(tǒng)服務(wù)器在驗(yàn)證所述登錄信息合法后,接受所述系統(tǒng)客戶端使用所述用戶賬戶進(jìn)行自動(dòng)登錄。
[0027]進(jìn)一步的,所述安全啟動(dòng)參數(shù)由所述軟件服務(wù)器根據(jù)本軟件服務(wù)器的標(biāo)識(shí)和本軟件服務(wù)器的一個(gè)自增變量,按照預(yù)設(shè)的生成規(guī)則生成。
[0028]進(jìn)一步的,所述臨時(shí)憑證為32位可讀隨機(jī)字符串,且在有效時(shí)間內(nèi)僅能認(rèn)證一次;
[0029]其中,所述有效時(shí)間短于所述長(zhǎng)連接通道的連接時(shí)間。
[0030]第二方面,本發(fā)明實(shí)施例提供了一種終端設(shè)備,所述終端設(shè)備中配置有軟件客戶?而和系統(tǒng)客戶?而;
[0031]所述軟件客戶端包括:
[0032]本地連接構(gòu)建單元,用于與所述系統(tǒng)客戶端建立本地連接通道,并通過(guò)所述本地連接通道接收所述系統(tǒng)客戶端提供的賬戶信息;其中,所述系統(tǒng)客戶端已使用所述賬戶信息成功登錄到系統(tǒng)服務(wù)器,所述系統(tǒng)服務(wù)器中存儲(chǔ)有與所述賬戶信息對(duì)應(yīng)的登錄憑證;
[0033]長(zhǎng)連接構(gòu)建單元,用于向軟件服務(wù)器發(fā)送登錄請(qǐng)求,與所述軟件服務(wù)器建立長(zhǎng)連接通道;其中,所述登錄請(qǐng)求包含所述賬戶信息;
[0034]第一接收單元,用于通過(guò)所述長(zhǎng)連接通道接收所述軟件服務(wù)器發(fā)送的安全啟動(dòng)參數(shù);其中,所述軟件服務(wù)器中配置有第一數(shù)據(jù)庫(kù),用于存儲(chǔ)所述安全啟動(dòng)參數(shù)、所述賬戶信息和所述長(zhǎng)連接通道的連接信息三者的關(guān)聯(lián)信息;
[0035]和,第一發(fā)送單元,用于向所述系統(tǒng)客戶端發(fā)送臨時(shí)憑證申請(qǐng)請(qǐng)求;其中,所述臨時(shí)憑證申請(qǐng)請(qǐng)求包含所述安全啟動(dòng)參數(shù);
[0036]所述系統(tǒng)客戶端包括:第二發(fā)送單元;
[0037]所述第二發(fā)送單元用于將所述臨時(shí)憑證申請(qǐng)請(qǐng)求轉(zhuǎn)發(fā)給所述系統(tǒng)服務(wù)器,以請(qǐng)求所述系統(tǒng)服務(wù)器生成臨時(shí)憑證,并將所述臨時(shí)憑證返回給所述系統(tǒng)客戶端;其中,所述系統(tǒng)服務(wù)器中配置有第二數(shù)據(jù)庫(kù),用于存儲(chǔ)所述臨時(shí)憑證、所述安全啟動(dòng)參數(shù)和所述登錄憑證二者的關(guān)聯(lián)信息;
[0038]所述軟件客戶端還包括:
[0039]第二接收單元,用于接收所述系統(tǒng)客戶端轉(zhuǎn)發(fā)的所述臨時(shí)憑證,并通過(guò)所述長(zhǎng)連接通道將所述臨時(shí)憑證發(fā)送給所述軟件服務(wù)器,以使所述軟件服務(wù)器根據(jù)所述長(zhǎng)連接通道的連接信息,查詢所述第一數(shù)據(jù)庫(kù),獲取第一安全啟動(dòng)參數(shù),并向所述系統(tǒng)服務(wù)器發(fā)送登錄憑證申請(qǐng)請(qǐng)求;其中,所述登錄憑證申請(qǐng)請(qǐng)求包含所述第一安全啟動(dòng)參數(shù)和所述臨時(shí)憑證,從而使所述系統(tǒng)服務(wù)器根據(jù)所述臨時(shí)憑證查詢所述第二數(shù)據(jù)庫(kù),獲取第二安全啟動(dòng)參數(shù),并在確認(rèn)所述第一安全啟動(dòng)參數(shù)和所述第二安全啟動(dòng)參數(shù)相一致時(shí),將所述臨時(shí)憑證所關(guān)聯(lián)的登錄憑證發(fā)送給所述軟件服務(wù)器,以使所述軟件服務(wù)器能夠使用所述關(guān)聯(lián)的登錄憑證向賬戶服務(wù)器請(qǐng)求登錄認(rèn)證;
[0040]和,第一登錄單元,用于在所述關(guān)聯(lián)的登錄憑證通過(guò)認(rèn)證后,使用所述賬戶信息登錄到所述軟件服務(wù)器。
[0041 ]進(jìn)一步的,所述本地連接構(gòu)建單元包括:
[0042]第一接收子單元,用于接收所述系統(tǒng)客戶端發(fā)送的本地連接通道的連接信息;
[0043]第一發(fā)送子單元,用于根據(jù)所述本地連接通道的連接信息,向所述系統(tǒng)客戶端發(fā)送握手認(rèn)證信息,以請(qǐng)求所述系統(tǒng)客戶端進(jìn)行握手認(rèn)證;
[0044]和,本地連接構(gòu)建子單元,用于在被所述系統(tǒng)客戶端認(rèn)證合法后,與所述系統(tǒng)客戶端建立所述本地連接通道,并通過(guò)所述本地連接通道接收所述系統(tǒng)客戶端提供的賬戶信息。
[0045]進(jìn)一步的,所述本地連接通道為本地端口通道、管道命名連接通道、消息對(duì)列連接通道或內(nèi)存共享連接通道。
[0046]進(jìn)一步的,所述系統(tǒng)客戶端還包括:
[0047]第三發(fā)送單元,用于在所述本地連接通道建立之前,將所述賬戶信息發(fā)送給賬戶服務(wù)器,以請(qǐng)求所述賬戶服務(wù)器驗(yàn)證所述賬戶信息,并在驗(yàn)證成功后生成與所述賬戶信息對(duì)應(yīng)的登錄憑證;
[0048]第三接收單元,用于接收所述登錄憑證,并保存到內(nèi)存中;
[0049]第四發(fā)送單元,用于將所述登錄憑證轉(zhuǎn)發(fā)給所述系統(tǒng)服務(wù)器,以使所述系統(tǒng)服務(wù)器向所述賬戶服務(wù)器請(qǐng)求驗(yàn)證所述登錄憑證的合法性,并在所述登錄憑證驗(yàn)證通過(guò)后,存儲(chǔ)所述登錄憑證;
[0050]和,第二登錄單元,用于接收所述系統(tǒng)服務(wù)器返回的登錄憑證驗(yàn)證合法的信息后,從內(nèi)存中刪除所述登錄憑證,并使用所述賬戶信息登錄到所述系統(tǒng)服務(wù)器。
[0051 ]進(jìn)一步的,所述系統(tǒng)客戶端還包括:
[0052]第四接收單元,用于在所述第二登錄單元使用所述賬戶信息登錄到所述系統(tǒng)服務(wù)器之后,接收所述系統(tǒng)服務(wù)器發(fā)送的登錄信息,并使用本系統(tǒng)客戶端的硬件特征信息對(duì)所述登錄信息進(jìn)