現(xiàn)Portal認(rèn)證的方法包括:
[0040]步驟201,接收客戶端發(fā)送的請求,通過代理服務(wù)器與Portal服務(wù)器進(jìn)行交互,向客戶端返回供用戶輸入認(rèn)證信息的頁面。
[0041]在本實(shí)施例中,客戶端接收用戶輸入的任意網(wǎng)址后,向接入設(shè)備發(fā)送請求例如HTTP請求,接入設(shè)備接收該HTTP請求后,通過代理服務(wù)器檢測Portal服務(wù)器是否正常,若正常,則將該HTTP請求重定向到本機(jī)的代理服務(wù)器(HTTP服務(wù)器(Server))上,接入設(shè)備的HTTP Server保持當(dāng)前客戶端會話,同時(shí)與Portal服務(wù)器建立連接例如HTTP連接,當(dāng)該HTTP連接成功建立后,接入設(shè)備的HTTP Server相當(dāng)于HTTP客戶端(Client),PortalServer相當(dāng)于HTTP服務(wù)器,即接入設(shè)備通過HTTP Server建立的HTTP連接向PortalServer發(fā)送HTTP請求,Portal Server收到HTTP請求時(shí)向接入設(shè)備返回HTTP應(yīng)答,并在該HTTP應(yīng)答中攜帶供用戶輸入認(rèn)證信息的頁面;接入設(shè)備的HTTP Client收到HTTP應(yīng)答時(shí),恢復(fù)客戶端會話,并將頁面載荷作為對應(yīng)的HTTP應(yīng)答推送給客戶端。
[0042]步驟202,接收客戶端發(fā)送的用戶輸入的認(rèn)證信息,并通過代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶認(rèn)證信息和預(yù)設(shè)標(biāo)識的請求,以使Portal服務(wù)器根據(jù)預(yù)設(shè)標(biāo)識返回發(fā)起認(rèn)證的應(yīng)答,該應(yīng)答中包含認(rèn)證信息。
[0043]在本實(shí)施例中,客戶端接收用戶輸入的用戶名和密碼等認(rèn)證信息后,向接入設(shè)備發(fā)送攜帶該認(rèn)證信息的HTTP請求,接入設(shè)備接收到該HTTP請求后,同樣將此消息重定向到接入設(shè)備本地的HTTP Server上,HTTP Server保持會話,另外,與Portal服務(wù)器再次創(chuàng)建HTTP連接,并通過新創(chuàng)建的HTTP連接向Portal Server發(fā)送HTTP請求,本次HTTP請求中除攜帶有用戶名和密碼等認(rèn)證信息,還攜帶有預(yù)設(shè)標(biāo)識,其中,該預(yù)設(shè)標(biāo)識可以為一特殊標(biāo)識;Portal Server收到該HTTP請求后,根據(jù)預(yù)設(shè)標(biāo)識不發(fā)送UDP報(bào)文,而是直接基于當(dāng)前的HTTP連接,向接入設(shè)備返回HTTP應(yīng)答,并在HTTP應(yīng)答中攜帶Portal報(bào)文內(nèi)容,以請求接入設(shè)備發(fā)起認(rèn)證。
[0044]由此可見,在本實(shí)施例中,Portal Server是基于當(dāng)前的HTTP連接向接入設(shè)備返回HTTP應(yīng)答,從而解決了部署在公網(wǎng)的Portal Server因無法獲知部署在私網(wǎng)的接入設(shè)備的地址而無法與接入設(shè)備通信的問題,從而實(shí)現(xiàn)了通過該HTTP應(yīng)答通知接入設(shè)備開始認(rèn)證的功能。
[0045]步驟203,根據(jù)代理服務(wù)器接收的Portal服務(wù)器返回的應(yīng)答與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果,通過代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶認(rèn)證結(jié)果的請求,并接收Portal服務(wù)器返回的通知認(rèn)證結(jié)果的應(yīng)答,以向客戶端返回認(rèn)證結(jié)果。
[0046]在本實(shí)施例中,接入設(shè)備通過HTTP Server建立的HTTP連接接收到Portal服務(wù)器返回的應(yīng)答后,按照現(xiàn)有的流程向認(rèn)證服務(wù)器發(fā)起認(rèn)證,并在收到認(rèn)證結(jié)果時(shí),通過代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶認(rèn)證結(jié)果的HTTP請求,Portal Server收到該HTTP請求時(shí),向接入設(shè)備返回HTTP應(yīng)答,具體地,將推送給客戶端的認(rèn)證結(jié)果作為該HTTP應(yīng)答;接入設(shè)備收到此HTTPS應(yīng)答時(shí),恢復(fù)客戶端的會話,并通知客戶端認(rèn)證是否通過。
[0047]由此可見,在本實(shí)施例中,接入設(shè)備通過代理服務(wù)器向Portal Server發(fā)送攜帶認(rèn)證結(jié)果的HTTP請求,使Portal Server獲知認(rèn)證結(jié)果,并基于該HTTP請求返回通知客戶端認(rèn)證結(jié)果的應(yīng)答。
[0048]需要說明的是,上述步驟202-203是在Portal服務(wù)器正常的情況下,基于用戶輸入的用戶名和密碼等認(rèn)證信息實(shí)現(xiàn)的認(rèn)證過程。而當(dāng)Portal服務(wù)器異常例如發(fā)生故障時(shí),實(shí)現(xiàn)Portal認(rèn)證的過程可以為:接入設(shè)備通過代理服務(wù)器檢測出Portal服務(wù)器異常時(shí),向客戶端返回默認(rèn)認(rèn)證頁面,用戶在該默認(rèn)認(rèn)證頁面輸入用戶名和密碼等認(rèn)證信息后,客戶端向接入設(shè)備發(fā)送該認(rèn)證信息,接入設(shè)備接收該認(rèn)證信息后,與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果,并向客戶端返回認(rèn)證結(jié)果。
[0049]另外,相對于現(xiàn)有技術(shù)中,接入設(shè)備在將客戶端發(fā)送的HTTP請求重定向到Portal服務(wù)器時(shí),會將標(biāo)識插入HTTP載荷中,也即修改HTTP載荷,本實(shí)施例中的接入設(shè)備在接收到客戶端發(fā)送的HTTP請求后,并不修改該HTTP請求,而是通過代理服務(wù)器與Portal服務(wù)器建立新的HTTP連接,并通過新的HTTP連接向Portal服務(wù)器發(fā)送攜帶預(yù)設(shè)標(biāo)識的HTTP請求,因此,本發(fā)明實(shí)施例可以將所有的HTTP請求替換為HTTPS請求,相應(yīng)地,可以將所有的HTTP應(yīng)答替換為HTTPS應(yīng)答,以增加Portal認(rèn)證的安全性。在這里,將所有的HTTP請求替換為HTTPS請求時(shí),由無線接入設(shè)備的HTTPS Server與Portal服務(wù)器建立HTTPS連接。
[0050]上述實(shí)現(xiàn)Portal認(rèn)證的方法實(shí)施例,通過代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶預(yù)設(shè)標(biāo)識的請求,以使Portal服務(wù)器根據(jù)該預(yù)設(shè)標(biāo)識返回發(fā)起認(rèn)證的應(yīng)答,同時(shí),接入設(shè)備在與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果后,通過代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶認(rèn)證結(jié)果的請求,并接收Portal服務(wù)器返回的通知客戶端認(rèn)證結(jié)果的應(yīng)答,從而實(shí)現(xiàn)了 Portal認(rèn)證,由此可見,在整個(gè)認(rèn)證過程中,不需要接入設(shè)備定時(shí)發(fā)送UDP報(bào)文,僅需Portal服務(wù)器在認(rèn)證時(shí)多發(fā)送一次應(yīng)答和多接收一次請求,即可實(shí)現(xiàn)通知部署在私網(wǎng)的接入設(shè)備開始認(rèn)證以及獲得認(rèn)證結(jié)果的功能,從而有效地減少了網(wǎng)絡(luò)中的通信消耗以及Portal服務(wù)器的性能消耗。。
[0051]圖3是本發(fā)明實(shí)施例提供的另一種實(shí)現(xiàn)Portal認(rèn)證的方法流程圖,該實(shí)施例從Portal服務(wù)器側(cè)進(jìn)行描述,如圖3所示,實(shí)現(xiàn)Portal認(rèn)證的方法包括:
[0052]步驟301,在接收到接入設(shè)備的代理服務(wù)器發(fā)送的請求時(shí),向接入設(shè)備返回供用戶輸入認(rèn)證信息的頁面,以使接入設(shè)備向客戶端返回頁面。
[0053]在本實(shí)施例中,客戶端接收用戶輸入的任意網(wǎng)址后,向接入設(shè)備發(fā)送HTTP請求,接入設(shè)備接收該HTTP請求后,通過代理服務(wù)器檢測Portal服務(wù)器是否正常,若正常,則將該HTTP請求重定向到本機(jī)的代理服務(wù)器HTTP Server上,接入設(shè)備的HTTP Server保持當(dāng)前客戶端會話,同時(shí)與Portal服務(wù)器建立連接例如HTTP連接,當(dāng)該HTTP連接成功建立后,接入設(shè)備的HTTP Server相當(dāng)于HTTP客戶端,Portal Server相當(dāng)于HTTP服務(wù)器,即接入設(shè)備通過HTTP Server建立的HTTP連接向Portal Server發(fā)送HTTP請求。
[0054]Portal Server收到HTTP請求時(shí)向接入設(shè)備返回HTTP應(yīng)答,并在該HTTP應(yīng)答中攜帶供用戶輸入認(rèn)證信息的頁面,以通過接入設(shè)備將該頁面推送給客戶端。
[0055]步驟302,接收接入設(shè)備的代理服務(wù)器發(fā)送的攜帶用戶輸入的認(rèn)證信息和預(yù)設(shè)標(biāo)識的請求,從請求中解析出預(yù)設(shè)標(biāo)識,并根據(jù)預(yù)設(shè)標(biāo)識向接入設(shè)備返回發(fā)起認(rèn)證的應(yīng)答,以使接入設(shè)備根據(jù)應(yīng)答中包含的認(rèn)證信息與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果,并通過代理服務(wù)器發(fā)送攜帶認(rèn)證結(jié)果的請求。
[0056]在本實(shí)施例中,客戶端接收用戶輸入的用戶名和密碼等認(rèn)證信息后,通過接入設(shè)備的代理服務(wù)器向Portal Server發(fā)送攜帶該認(rèn)證信息和預(yù)設(shè)標(biāo)識的請求,其中,該預(yù)設(shè)標(biāo)識可以為一特殊標(biāo)識,Portal Server收到該HTTP請求后,根據(jù)預(yù)設(shè)標(biāo)識不發(fā)送UDP報(bào)文,而是直接基于當(dāng)前的HTTP連接,向接入設(shè)備返回HTTP應(yīng)答,并在HTTP應(yīng)答中攜帶Portal報(bào)文內(nèi)容,以請求接入設(shè)備發(fā)起認(rèn)證。接入設(shè)備接收該HTTP應(yīng)答后,與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果,并通過新建立的HTTP連接向Portal Server發(fā)送攜帶認(rèn)證結(jié)果的請求。
[0057]由此可見,在本實(shí)施例中,Portal Server是基于當(dāng)前的HTTP連接向接入設(shè)備返回HTTP應(yīng)答,從而解決了部署在公網(wǎng)的Portal Server因無法獲知部署在私網(wǎng)的接入設(shè)備的地址而無法與接入設(shè)備通信的問題,從而實(shí)現(xiàn)了通過該HTTP應(yīng)答通知接入設(shè)備開始認(rèn)證。
[0058]步驟303,接收接入設(shè)備的代理服務(wù)器發(fā)送的攜帶認(rèn)證結(jié)果的請求,并向接入設(shè)備返回通知認(rèn)證結(jié)果的應(yīng)答,以使接入設(shè)備向客戶端返回認(rèn)證結(jié)果。
[0059]在本實(shí)施例中,接入設(shè)備通過HTTP Server建立的HTTP連接接收到Portal服務(wù)器返回的應(yīng)答后,按照現(xiàn)有的流程向認(rèn)證服務(wù)器發(fā)起認(rèn)證,并在收到認(rèn)證結(jié)果時(shí),通過代理服務(wù)器向Portal服務(wù)器發(fā)送攜帶認(rèn)證結(jié)果的HTTP請求,Portal Server收到該HTTP請求時(shí),向接入設(shè)備返回HTTP應(yīng)答,具體地,將推送給客戶端的認(rèn)證結(jié)果作為該HTTP應(yīng)答;接入設(shè)備收到此HTTPS應(yīng)答時(shí),恢復(fù)客戶端的會話,并通知客戶端認(rèn)證是否通過。
[0060]由此可見,在本實(shí)施例中,接入設(shè)備在獲得認(rèn)證結(jié)果后,通過代理服務(wù)器向PortalServer返回包含認(rèn)證結(jié)果的HTTP請求,使得Portal Server獲知認(rèn)證結(jié)果,并基于該HTTP請求返回通知客戶端認(rèn)證結(jié)果的應(yīng)答。
[0061]另外,為了增加Portal認(rèn)證的安全性,可以將所有的HTTP請求替換為HTTPS請求,相應(yīng)地,可以將所有的HTTP應(yīng)答替換為HTTPS應(yīng)答。
[0062]上述實(shí)現(xiàn)Portal認(rèn)證的方法實(shí)施例,通過接收接入設(shè)備的代理服務(wù)器發(fā)送的包含預(yù)設(shè)標(biāo)識的請求,基于該請求向接入設(shè)備返回發(fā)起認(rèn)證的應(yīng)答,使得接入設(shè)備在與認(rèn)證服務(wù)器進(jìn)行交互,獲得認(rèn)證結(jié)果后,通過代理服務(wù)器發(fā)送攜帶認(rèn)證結(jié)果的請求,并基于