該攜帶認(rèn)證結(jié)果的請(qǐng)求向接入設(shè)備返回通知客戶(hù)端認(rèn)證結(jié)果的應(yīng)答,從而實(shí)現(xiàn)了 Portal認(rèn)證,由此可見(jiàn),在整個(gè)認(rèn)證過(guò)程中,不需要接入設(shè)備定時(shí)發(fā)送UDP報(bào)文,僅需Portal服務(wù)器在認(rèn)證時(shí)多發(fā)送一次應(yīng)答和多接收一次請(qǐng)求,即可實(shí)現(xiàn)通知部署在私網(wǎng)的接入設(shè)備開(kāi)始認(rèn)證以及獲得認(rèn)證結(jié)果的功能,從而有效地減少了網(wǎng)絡(luò)中的通信消耗以及Portal服務(wù)器的性能消耗。
[0063]圖4是本發(fā)明實(shí)施例提供的一種實(shí)現(xiàn)Portal認(rèn)證的信令流程圖,該實(shí)施例從客戶(hù)端、接入設(shè)備、Portal服務(wù)器和認(rèn)證服務(wù)器交互的角度進(jìn)行描述,其中,接入設(shè)備上配置Portal Server功能,并缺省配置允許發(fā)往Portal服務(wù)器的HTTP請(qǐng)求通過(guò)的規(guī)則,如圖4所示,該認(rèn)證過(guò)程包括:
[0064]步驟401,客戶(hù)端關(guān)聯(lián)接入設(shè)備后,接收用戶(hù)輸入的網(wǎng)址,并向接入設(shè)備發(fā)送HTTP請(qǐng)求。
[0065]步驟402,接入設(shè)備接收該HTTP請(qǐng)求后,將該HTTP請(qǐng)求重定向到本機(jī)的HTTPServer 上。
[0066]在步驟402中,接入設(shè)備開(kāi)啟代理服務(wù)器即HTTP Server,接入設(shè)備接收該HTTP請(qǐng)求后,通過(guò)代理服務(wù)器檢測(cè)Portal服務(wù)器是否正常,若正常,則將該HTTP請(qǐng)求重定向到本機(jī)的HTTP Server上,接入設(shè)備的HTTP Server保持當(dāng)前客戶(hù)端會(huì)話(huà)。
[0067]步驟403,接入設(shè)備通過(guò)代理服務(wù)器向Portal服務(wù)器發(fā)送HTTP請(qǐng)求。
[0068]在該實(shí)施例中,接入設(shè)備創(chuàng)建HTTP連接,其中,接入設(shè)備的代理服務(wù)器相當(dāng)于HTTP Client,Portal服務(wù)器相當(dāng)于HTTP服務(wù)器,即通過(guò)HTTP Server創(chuàng)建的HTTP連接向Portal服務(wù)器發(fā)送HTTP請(qǐng)求。
[0069]步驟404,Portal服務(wù)器收到HTTP請(qǐng)求,向接入設(shè)備返回HTTP應(yīng)答,其中,在該HTTP應(yīng)答中攜帶有供用戶(hù)輸入認(rèn)證信息的頁(yè)面。
[0070]步驟405,接入設(shè)備通過(guò)代理服務(wù)器收到來(lái)自Portal服務(wù)器的HTTP應(yīng)答后,向客戶(hù)端返回HTTP應(yīng)答,其中,該HTTP應(yīng)答中攜帶有供用戶(hù)輸入認(rèn)證信息的頁(yè)面。
[0071]在步驟405中,接入設(shè)備的代理服務(wù)器收到來(lái)自Portal服務(wù)器的HTTP應(yīng)答時(shí),恢復(fù)客戶(hù)端會(huì)話(huà),并將頁(yè)面載荷作為對(duì)應(yīng)的HTTP應(yīng)答推送給客戶(hù)端。
[0072]步驟406,客戶(hù)端接收用戶(hù)輸入的用戶(hù)名和密碼等認(rèn)證信息后,向接入設(shè)備發(fā)送攜帶該認(rèn)證信息的HTTP請(qǐng)求。
[0073]步驟407,接收設(shè)備接收到來(lái)自客戶(hù)端的HTTP請(qǐng)求后,通過(guò)代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶認(rèn)證信息和預(yù)設(shè)標(biāo)識(shí)的HTTP請(qǐng)求。
[0074]在步驟407中,接入設(shè)備接收到該HTTP請(qǐng)求后,同樣將此消息重定向到接入設(shè)備本地的HTTPS Server上,接入設(shè)備的HTTP Server保持會(huì)話(huà),同時(shí)與Portal服務(wù)器創(chuàng)建一個(gè)HTTP連接,并通過(guò)創(chuàng)建的HTTP連接向Portal Server發(fā)送HTTP請(qǐng)求,本次HTTP請(qǐng)求中除攜帶有用戶(hù)名和密碼等認(rèn)證信息,還攜帶有預(yù)設(shè)標(biāo)識(shí),其中,該預(yù)設(shè)標(biāo)識(shí)可以為一特殊標(biāo)識(shí)。
[0075]步驟408,Portal服務(wù)器收到來(lái)自接入設(shè)備的HTTP請(qǐng)求后,向接入設(shè)備返回發(fā)起認(rèn)證的HTTP應(yīng)答。
[0076]在步驟408中,Portal服務(wù)器收到該HTTP請(qǐng)求后,根據(jù)預(yù)設(shè)標(biāo)識(shí)不發(fā)送UDP報(bào)文,而是直接基于當(dāng)前的HTTP連接,向接入設(shè)備返回HTTP應(yīng)答,并在HTTP應(yīng)答中攜帶Portal報(bào)文內(nèi)容,以請(qǐng)求接入設(shè)備發(fā)起認(rèn)證。
[0077]步驟409,接入設(shè)備與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果。
[0078]步驟410,接入設(shè)備通過(guò)代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶認(rèn)證結(jié)果的HTTP請(qǐng)求。
[0079]其中,認(rèn)證結(jié)果包括認(rèn)證通過(guò)和認(rèn)證不通過(guò)。
[0080]步驟411,Portal服務(wù)器收到攜帶認(rèn)證結(jié)果的HTTP請(qǐng)求時(shí),向接入設(shè)備返回通知認(rèn)證結(jié)果的HTTP應(yīng)答。
[0081]在步驟411中,將推送給客戶(hù)端的認(rèn)證結(jié)果作為該HTTP應(yīng)答。
[0082]步驟412,接入設(shè)備接收到來(lái)自Portal服務(wù)器的HTTP應(yīng)答后,向客戶(hù)端返回包含認(rèn)證結(jié)果的HTTP應(yīng)答。
[0083]在步驟412中,接入設(shè)備通過(guò)HTTP Server建立的HTTP連接接收到該HTTP應(yīng)答后,恢復(fù)客戶(hù)端的會(huì)話(huà),并通知客戶(hù)端認(rèn)證是否通過(guò)。
[0084]需要說(shuō)明的是,為了增加Portal認(rèn)證的安全性,可以將上述步驟401-412中的HTTP請(qǐng)求替換為HTTPS請(qǐng)求,HTTP應(yīng)答替換為HTTPS應(yīng)答。
[0085]由上述實(shí)施例可以看出,相對(duì)于現(xiàn)有的portal認(rèn)證過(guò)程,本發(fā)明實(shí)施例開(kāi)啟了接入設(shè)備的代理服務(wù)器功能,使得Portal Server可以基于接入設(shè)備的代理服務(wù)器建立的HTTP連接向接入設(shè)備返回HTTP應(yīng)答,從而解決了部署在公網(wǎng)的Portal Server因無(wú)法獲知部署在私網(wǎng)的接入設(shè)備的地址而無(wú)法與接入設(shè)備通信的問(wèn)題,從而實(shí)現(xiàn)了通過(guò)該HTTP應(yīng)答通知接入設(shè)備開(kāi)始認(rèn)證的功能,同時(shí),在與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果后,通過(guò)代理服務(wù)器建立的新的HTTP連接向Portal服務(wù)器發(fā)送攜帶認(rèn)證結(jié)果的請(qǐng)求,使PortalServer可以獲知認(rèn)證結(jié)果,并基于該HTTP請(qǐng)求返回通知客戶(hù)端認(rèn)證結(jié)果的應(yīng)答。由此可見(jiàn),在本發(fā)明實(shí)施例的整個(gè)認(rèn)證過(guò)程中,接入設(shè)備不需要定時(shí)發(fā)送UDP報(bào)文,減少了網(wǎng)絡(luò)中的通信消耗以及Portal服務(wù)器的性能消耗,并且可以與認(rèn)證服務(wù)器進(jìn)行交互,實(shí)現(xiàn)了真正的認(rèn)證。
[0086]與前述實(shí)現(xiàn)Portal認(rèn)證的方法的實(shí)施例相對(duì)應(yīng),本申請(qǐng)還提供了實(shí)現(xiàn)Portal認(rèn)證的裝置的實(shí)施例。
[0087]本申請(qǐng)實(shí)現(xiàn)Portal認(rèn)證的裝置的實(shí)施例可以應(yīng)用在接入設(shè)備上。裝置實(shí)施例可以通過(guò)軟件實(shí)現(xiàn),也可以通過(guò)硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。以軟件實(shí)現(xiàn)為例,作為一個(gè)邏輯意義上的裝置,是通過(guò)其所在設(shè)備的處理器將非易失性存儲(chǔ)器中對(duì)應(yīng)的計(jì)算機(jī)程序指令讀取到內(nèi)存中運(yùn)行形成的。從硬件層面而言,如圖5所示,為本申請(qǐng)實(shí)現(xiàn)Portal認(rèn)證的裝置所在接入設(shè)備的一種硬件結(jié)構(gòu)圖,除了圖5所示的處理器、內(nèi)存、網(wǎng)絡(luò)接口、以及非易失性存儲(chǔ)器之外,實(shí)施例中裝置所在的設(shè)備通常還可以包括其他硬件,對(duì)此不再贅述。
[0088]請(qǐng)參考圖6,是本發(fā)明實(shí)施例提供的一種實(shí)現(xiàn)Portal認(rèn)證的裝置的結(jié)構(gòu)示意圖,該裝置可以位于接入設(shè)備中。如圖6所示,該裝置包括第一處理模塊61、第二處理模塊62和第一認(rèn)證模塊63,其中:
[0089]第一處理模塊61用于接收客戶(hù)端發(fā)送的請(qǐng)求,通過(guò)代理服務(wù)器與Portal服務(wù)器進(jìn)行交互,向客戶(hù)端返回供用戶(hù)輸入認(rèn)證信息的頁(yè)面;第二處理模塊62用于接收客戶(hù)端發(fā)送的用戶(hù)輸入的認(rèn)證信息,并通過(guò)代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶上述認(rèn)證信息和預(yù)設(shè)標(biāo)識(shí)的請(qǐng)求,以使Portal服務(wù)器根據(jù)上述預(yù)設(shè)標(biāo)識(shí)返回發(fā)起認(rèn)證的應(yīng)答,該應(yīng)答中包含認(rèn)證信息;第一認(rèn)證模塊63,用于根據(jù)代理服務(wù)器接收的Portal服務(wù)器返回的應(yīng)答與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果,向通過(guò)代理服務(wù)器上述Portal服務(wù)器發(fā)送攜帶認(rèn)證結(jié)果的請(qǐng)求,并接收Portal服務(wù)器返回的通知認(rèn)證結(jié)果的應(yīng)答,以向客戶(hù)端返回認(rèn)證結(jié)果。
[0090]其中,上述請(qǐng)求可以為HTTP請(qǐng)求,相應(yīng)地,上述應(yīng)答可以為HTTP應(yīng)答。
[0091]在本實(shí)施例中,第一處理模塊61包括:檢測(cè)單元611和收發(fā)單元612,其中,檢測(cè)單元611用于通過(guò)所述代理服務(wù)器檢測(cè)Portal服務(wù)器是否正常;收發(fā)單元612用于在Portal服務(wù)器正常時(shí),通過(guò)代理服務(wù)器向Portal服務(wù)器發(fā)送請(qǐng)求,并接收Portal服務(wù)器返回的供用戶(hù)輸入認(rèn)證信息的頁(yè)面。
[0092]另外,第一處理模塊還可以包括:返回單元613,用于在Portal服務(wù)器異常時(shí),向客戶(hù)端返回默認(rèn)認(rèn)證頁(yè)面。
[0093]進(jìn)一步地,為了在Portal服務(wù)器異常時(shí)也可以完成Portal認(rèn)證,該裝置還可以包括:第二認(rèn)證模塊64,該第二認(rèn)證模塊64用于接收客戶(hù)端根據(jù)默認(rèn)認(rèn)證頁(yè)面發(fā)送的認(rèn)證信息,與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果,并向客戶(hù)端返回認(rèn)證結(jié)果。
[0094]為了增加Portal認(rèn)證的安全性,可以將該實(shí)施例中的HTTP請(qǐng)求替換為HTTPS請(qǐng)求,HTTP應(yīng)答替換為HTTPS應(yīng)答。
[0095]上述裝置中各個(gè)模塊和單元的功能和作用的實(shí)現(xiàn)過(guò)程具體詳見(jiàn)上述方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過(guò)程,在此不贅述。
[0096]對(duì)于裝置實(shí)施例而言,由于其基本對(duì)應(yīng)于方法實(shí)施例,所以相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中上述作為分離部件說(shuō)明的模塊或單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本申請(qǐng)方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
[0097]上述實(shí)現(xiàn)Portal認(rèn)證的裝置實(shí)施例,通過(guò)第二處理模塊通過(guò)代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶預(yù)設(shè)標(biāo)識(shí)的請(qǐng)求,以使Portal服務(wù)器根據(jù)該預(yù)設(shè)標(biāo)識(shí)返回發(fā)起認(rèn)證的應(yīng)答,同時(shí),通過(guò)第一認(rèn)證模塊與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果后,通過(guò)代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶認(rèn)證結(jié)果的請(qǐng)求,并接收Portal服務(wù)器返回的通知客戶(hù)端認(rèn)證結(jié)果的應(yīng)答,從而實(shí)現(xiàn)了 Portal認(rèn)證,而在整個(gè)認(rèn)證過(guò)程中,不需要定時(shí)發(fā)送UDP報(bào)文,減少了網(wǎng)絡(luò)中的通信消耗以及Portal服務(wù)器的性能消耗,并且可以與認(rèn)證服務(wù)器進(jìn)行交互,實(shí)現(xiàn)了真正的認(rèn)證。
[0098]與前述實(shí)現(xiàn)Portal認(rèn)證的方法的實(shí)施例相對(duì)應(yīng),本申請(qǐng)還提供了實(shí)現(xiàn)Portal認(rèn)證的裝置的實(shí)施例。
[