專利名稱:認證方法、服務器及系統(tǒng)的制作方法
技術領域:
本發(fā)明實施例涉及網(wǎng)絡技術領域,尤其涉及一種認證方法、服務器及系統(tǒng)。
背景技術:
802. IX協(xié)議是一種基于端口的網(wǎng)絡訪問控制協(xié)議(Port-BasedNetwork Access Control,簡稱為PBNAC)。基于端口的網(wǎng)絡訪問控制是指網(wǎng)絡設備的接入級(即以太網(wǎng)交換 機或?qū)拵Ы尤朐O備的端口)控制客戶端對網(wǎng)絡的訪問??蛻舳私尤刖W(wǎng)絡設備的端口默認為 阻斷用戶對網(wǎng)絡的所有訪問權限,而只處理一種特定的協(xié)議報文。連接在此類端口上的客 戶端設備,如果需要訪問網(wǎng)絡資源,首先必須經(jīng)過認證,認證成功的客戶端設備才能訪問網(wǎng) 絡資源,如果不經(jīng)過認證,就不能訪問網(wǎng)絡資源。802. IX系統(tǒng)的基本框架示意圖可以如圖1所示,其中,802. IX系統(tǒng)可以由三部分 組成,認證懇求者(Supplicant System),認證者(AuthenticatorSystem)以及認證服務器 (Authentication System)。其中,認證懇求者一般直接稱為認證客戶端或客戶端,它是客 戶端設備中運行的軟件或者獨立運行的計算機軟件,作用是接收認證必須的信息(通常為 用戶名和密碼),按照802. IX協(xié)議規(guī)定的格式,封裝成相應報文,發(fā)送給認證者,同時處理 認證者回應的響應報文,執(zhí)行客戶端的認證流程。認證者有時直接稱為認證設備或設備,提 供用戶接入網(wǎng)絡的接口。它是由設備中運行的軟件來支持相應功能的,接收認證懇求者發(fā) 起的認證請求,并將請求進行相應的處理,然后封裝成高層協(xié)議(IP層之上的協(xié)議)轉(zhuǎn)發(fā)到 認證服務器中進行認證,如果認證服務器認為認證懇求者認證成功,則允許認證客戶端訪 問需要的網(wǎng)絡資源,如果認證服務器認為認證懇求者認證失敗,則不允許認證客戶端訪問 網(wǎng)絡資源。認證服務器可以運行在認證者中,也可以運行在獨立的硬件設備中,作用是對認 證懇求者進行認證(如果懇求者使用用戶名和密碼進行認證,那么就校驗用戶名和密碼是 否正確),如果認證懇求者認證成功,則向認證者發(fā)送認證成功的消息,如果認證懇求者認 證失敗,則向認證者發(fā)送認證失敗的消息。在實現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術中至少存在如下問題標準的802. IX認證過程中,是不允許用戶密碼為空,如果用戶密碼為空,則可能 出現(xiàn)多種不同的處理方式其中一種是認證服務器直接拒絕密碼為空的用戶接入網(wǎng)絡;另 一種是認證服務器允許密碼為空的用戶進行Windows AD域的認證,并在Windows AD域認 證通過后允許用戶直接接入網(wǎng)絡。對于第一種直接拒絕密碼為空的用戶接入網(wǎng)絡的處理方式,現(xiàn)有技術中可以采用 將認證設備的802. IX功能關閉,然后等到所有用戶都加入Windows AD域后再開啟802. IX 功能解決上述問題。但是,關閉802. IX功能后,網(wǎng)絡的安全無法保障,會帶來更加嚴重的安
^^^ 急 ^^ ο對于第二種允許密碼為空的用戶進行Windows AD域認證并在認證通過后允許用 戶直接接入網(wǎng)絡的處理方式,會出現(xiàn)密碼為空的用戶接入網(wǎng)絡不受限的情況,因此現(xiàn)有技 術通常不會使用這種處理方式。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種認證方法、服務器及系統(tǒng),用以解決現(xiàn)有技術中802. IX與 Windows AD域聯(lián)動認證時,不允許密碼為空的問題,同時保障了網(wǎng)絡的安全。本發(fā)明實施例提供一種認證方法,用于實現(xiàn)802. IX與Windows AD域的聯(lián)動認證, 包括802. IX認證服務器接收到用戶的認證請求,所述認證請求中攜帶所述用戶的用戶 名和空密碼;所述802. IX認證服務器將所述用戶名和空密碼發(fā)送給Windows AD域服務器,由 所述Windows AD域服務器對所述用戶名和空密碼進行校驗;校驗成功后,所述802. IX認證服務器向所述Windows AD域服務器發(fā)送查詢請求, 所述查詢請求中攜帶所述用戶名;所述Windows AD域服務器判斷所述用戶名是否為授權用戶;當所述用戶名為授權用戶時,聯(lián)動認證成功。本發(fā)明實施例又提供一種認證服務器,包括接收模塊,用于接收用戶的認證請求,所述認證請求中攜帶所述用戶的用戶名和 空密碼;發(fā)送模塊,用于將所述用戶名和空密碼發(fā)送給Windows AD域服務器,由所述 Windows AD域服務器對所述用戶名和空密碼進行校驗;權限查詢模塊,用于當所述Windows AD服務器對所述用戶名和空密碼校驗成功 后,向所述Windows AD域服務器發(fā)送查詢請求,所述查詢請求中攜帶所述用戶名;所述用 戶名用于所述Windows AD域服務器判斷所述用戶名是否為授權用戶;當所述用戶名為授 權用戶時,聯(lián)動認證成功。本發(fā)明實施例還提供一種認證系統(tǒng),用于實現(xiàn)802. IX與Windows AD域的聯(lián)動認 證,包括802. IX認證服務器與Windows AD域服務器;所述802. IX認證服務器包括接收模塊,用于接收用戶的認證請求,所述認證請求中攜帶所述用戶的用戶名和 空密碼;發(fā)送模塊,用于將所述用戶名和空密碼發(fā)送給Windows AD域服務器,由所述 Windows AD域服務器對所述用戶名和空密碼進行校驗;權限查詢模塊,用于當所述Windows AD域服務器對所述用戶名和空密碼校驗成功 后,向所述Windows AD域服務器發(fā)送查詢請求,所述查詢請求中攜帶所述用戶名;所述Windows AD域服務器包括校驗模塊,用于對所述802. IX認證服務器的發(fā)送模塊發(fā)送的所述用戶名和空密 碼進行校驗;判斷模塊,用于判斷所述802. IX認證服務器的權限查詢模塊發(fā)送的所述用戶名 是否為授權用戶;當所述用戶名為授權用戶時,聯(lián)動認證成功。本發(fā)明實施例的認證方法、服務器及認證系統(tǒng),通過在Windows AD域服務器對用 戶名和空密碼校驗成功后,認證服務器再次查詢用戶名的訪問權限,只有用戶為授權用戶
5時才能認證成功,使得802. IX與Windows AD域在進行聯(lián)動認證時,可以實現(xiàn)空密碼認證, 并獲得授權。這種認證方法無需額外的部署,僅需增加一次信令的交互,節(jié)省了成本。而且, 無需關閉802. IX功能即可在802. IX與Windows AD域聯(lián)動認證時實現(xiàn)空密碼認證,方法安 全可靠,不存在現(xiàn)有技術的安全隱患;而且還有效控制了空密碼用戶可以不受限制接入網(wǎng) 絡的弊端。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn) 有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā) 明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根 據(jù)這些附圖獲得其他的附圖。圖1為現(xiàn)有技術中802. IX系統(tǒng)的基本框架示意圖;圖2為本發(fā)明實施例提供的認證方法的流程圖;圖3為本發(fā)明實施例提供的認證方法的交互流程圖;圖4為本發(fā)明實施例提供的認證服務器的結構示意圖;圖5為本發(fā)明實施例提供的認證系統(tǒng)的結構示意圖。
具體實施例方式為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例 中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是 本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員 在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。圖2為本發(fā)明實施例提供的認證方法的流程圖,該認證方法用于實現(xiàn)802. IX與 Windows AD域的聯(lián)動認證。如圖2所示,該方法包括201 802. IX認證服務器接收到用戶的認證請求,該認證請求中攜帶用戶的用戶 名和空密碼;202 :802. IX認證服務器將用戶名和空密碼發(fā)送給Windows AD域服務器,由 Windows AD域服務器對用戶名和空密碼進行校驗;203 校驗成功后,802. IX認證服務器向Windows AD域服務器發(fā)送查詢請求,查詢 請求中攜帶用戶名;204 =Windows AD域服務器判斷用戶名是否為授權用戶;當用戶名為授權用戶時,聯(lián)動認證成功。下面,結合圖3所示的認證方法的交互流程圖對本發(fā)明實施例提供的認證方法進 行詳細的說明。如圖3所示,該方法包括301 802. IX認證懇求者收到用戶的認證請求后,向802. IX認證者發(fā)出認證開始 報文以觸發(fā)認證過程;其中,用戶的認證請求可以理解為認證懇求者接收到認證用戶通過輸入設備 (如鼠標、鍵盤等)輸入的用戶名和密碼。在本實施例中,密碼為空。認證開始報文可以是EAPOL-Start報文。其中,EAPOL (Extensib IeAuthenti cationProtocol Over LAN)是一種基于局域網(wǎng)的擴展認證協(xié)議。302 802. IX認證者向認證懇求者發(fā)出身份請求報文,以獲得用戶的用戶名;其中,身份請求報文可以為EAPOL-Request [Identity]報文。303 802. IX認證懇求者將用戶名通過身份回應報文發(fā)送給802. IX認證者;其中,身份回應報文可以為EAPOL-Responsetldentity]報文,其中封裝有用戶的 用戶名。304 802. IX認證者將認證懇求者發(fā)送的身份回應報文封裝在協(xié)議遠程用戶撥號 認證系統(tǒng)(Radius)協(xié)議中轉(zhuǎn)發(fā)給認證服務器;其中,遠程用戶撥號認證系統(tǒng)協(xié)議(Remote Authentication Dial In UserService,簡稱為Radius)是一種可擴展的應用層認證協(xié)議。本實施例中的作用為封裝 EAPOL報文并傳遞給認證服務器。將EAPOL-Response [Identity]報文封裝在Radius協(xié)議 中的原因在于EAP0L報文為二層協(xié)議,不能跨越網(wǎng)段直接傳播,所以要將其封裝在Radius 這類應用層協(xié)議中進行傳播。封裝后的報文可以為Aadius/EAPOL-Response[Identity] 報文。另外需要說明的是Radius協(xié)議本身除了封裝EAPOL報文之外,還可以提供很多 屬性的封裝,比如用戶的用戶名等信息的封裝。305 802. IX 認證服務器接收到 Radius/EAPOL-Response [Identity]報文后,向認 證者發(fā)出口令挑戰(zhàn)報文,以獲得用戶的密碼;其中,口令挑戰(zhàn)報文可以是Radius/EAPOL-Request[Challenge]報文,報文內(nèi)容 可以是一定長度的隨機數(shù),通常為32個字節(jié)。306 認證者接收到認證服務器發(fā)出的Radius/EAPOL-Request [Challenge]報文 后,將報文中封裝的口令挑戰(zhàn)EAPOL-Request [Challenge]報文轉(zhuǎn)發(fā)給802. IX認證懇求 者;307 認證懇求者將密碼通過口令響應報文發(fā)送給認證者;其中的口令響應報文可以為EAPOL-Response[MD5],封裝有用戶的密碼,本實施例 中用戶的密碼為空。308 認證者將認證懇求者發(fā)送的口令響應報文封裝在Radius協(xié)議中,組裝成 Radius/EAPOL-Response [MD5]報文,轉(zhuǎn)發(fā)給認證服務器;309 認證服務器接收到Radius/EAPOL-Response[MD5]報文,從中提取用戶名和 密碼,并封裝成認證請求報文發(fā)送給Windows AD域服務器;其中,認證請求報文可以是LDAP-Bind-Request報文,該報文的作用是向LDAP服 務器(在本實施例中即為802. IX認證服務器)發(fā)送認證請求,將當前連接會話綁定到LDAP 服務器的上下文中。LDAP是輕量級目錄訪問協(xié)議的簡稱,用來訪問類似于電話簿的數(shù)據(jù)庫, 這種數(shù)據(jù)庫的內(nèi)容是以〈名稱,值〉的方式存儲數(shù)據(jù)的。由于Windows AD域服務器支持 LDAP協(xié)議進行訪問,所以Windows AD域服務器中的用戶信息就是以 < 名稱,值〉的方式存 儲到Windows AD域服務器中。310 =Windows AD域服務器對接收到的用戶名和密碼進行校驗;具體的校驗方式可以為Windows AD域服務器在其保存的用戶信息中查詢是否存在該用戶名;
如果不存在,則校驗成功;如果存在,則在用戶信息中查詢該用戶名對應的密碼是否為空;如果是,則校驗成功;如果否,則校驗失敗。其中需要說明的是,用戶信息是預先在Windows AD域服務器上配置完成的信息, 該用戶信息包括擁有訪問該Windows AD域服務器內(nèi)容權限的用戶名及密碼。用戶信息可 以為表單的形式存在,如表1所示表 權利要求
一種認證方法,用于實現(xiàn)802.1X與Windows AD域的聯(lián)動認證,其特征在于,包括802.1X認證服務器接收到用戶的認證請求,所述認證請求中攜帶所述用戶的用戶名和空密碼;所述802.1X認證服務器將所述用戶名和空密碼發(fā)送給Windows AD域服務器,由所述Windows AD域服務器對所述用戶名和空密碼進行校驗;校驗成功后,所述802.1X認證服務器向所述Windows AD域服務器發(fā)送查詢請求,所述查詢請求中攜帶所述用戶名;所述Windows AD域服務器判斷所述用戶名是否為授權用戶;當所述用戶名為授權用戶時,聯(lián)動認證成功。
2.根據(jù)權利要求1所述的認證方法,其特征在于,所述由所述WindowsAD域服務器對所 述用戶名和空密碼進行校驗,包括所述Windows AD域服務器在預先保存的用戶信息中查詢是否存在所述用戶名; 如果不存在,則校驗成功;如果存在,所述Windows AD域服務器在所述用戶信息中查詢所述用戶名對應的密碼是 否為空;如果是,則校驗成功; 如果否,則校驗失敗。
3.根據(jù)權利要求1或2所述的認證方法,其特征在于,所述WindowsAD域服務器判斷 所述用戶名是否為授權用戶,包括所述Windows AD域服務器查詢預先保存的用戶信息,判斷所述預先保存的用戶信息中 是否存在所述用戶名;如果存在所述用戶名,則所述用戶名為授權用戶。
4.根據(jù)權利要求1所述的認證方法,其特征在于,所述802.IX認證服務器向所述 Windows AD域服務器發(fā)送查詢請求,包括所述802. IX認證服務器向所述Windows AD域服務器發(fā)送LDAP-QUERY-Request報文, 所述LDAP-QUERY-Request報文中攜帶所述用戶名。
5.根據(jù)權利要求4所述的認證方法,其特征在于,還包括所述802. IX認證服務器接收所述Windows AD域服務器發(fā)送的LDAP-QUERY-Response 報文,所述LDAP-QUERY-Response報文中攜帶查詢結果。
6.一種認證服務器,其特征在于,包括接收模塊,用于接收用戶的認證請求,所述認證請求中攜帶所述用戶的用戶名和空密碼;發(fā)送模塊,用于將所述用戶名和空密碼發(fā)送給Windows AD域服務器,由所述Windows AD域服務器對所述用戶名和空密碼進行校驗;權限查詢模塊,用于當所述Windows AD服務器對所述用戶名和空密碼校驗成功后,向 所述Windows AD域服務器發(fā)送查詢請求,所述查詢請求中攜帶所述用戶名;所述用戶名用 于所述Windows AD域服務器判斷所述用戶名是否為授權用戶;當所述用戶名為授權用戶 時,聯(lián)動認證成功。
7.根據(jù)權利要求6所述的認證服務器,其特征在于,所述權限查詢模塊包括發(fā)送單元和接收單元;所述發(fā)送單元,用于發(fā)送所述查詢請求,所述查詢請求為LDAP-QUERY-Request報文; 所述接收單元,用于接收查詢結果,所述查詢結果攜帶在LDAP-QUERY-Response報文中。
8.一種認證系統(tǒng),用于實現(xiàn)802. IX與Windows AD域的聯(lián)動認證,其特征在于,包括 802. IX認證服務器與Windows AD域服務器;所述802. IX認證服務器包括接收模塊,用于接收用戶的認證請求,所述認證請求中攜帶所述用戶的用戶名和空密碼;發(fā)送模塊,用于將所述用戶名和空密碼發(fā)送給Windows AD域服務器,由所述Windows AD域服務器對所述用戶名和空密碼進行校驗;權限查詢模塊,用于當所述Windows AD域服務器對所述用戶名和空密碼校驗成功后, 向所述Windows AD域服務器發(fā)送查詢請求,所述查詢請求中攜帶所述用戶名; 所述Windows AD域服務器包括校驗模塊,用于對所述802. IX認證服務器的發(fā)送模塊發(fā)送的所述用戶名和空密碼進 行校驗;判斷模塊,用于判斷所述802. IX認證服務器的權限查詢模塊發(fā)送的所述用戶名是否 為授權用戶;當所述用戶名為授權用戶時,聯(lián)動認證成功。
9.根據(jù)權利要求8所述的認證系統(tǒng),其特征在于,所述校驗模塊包括第一查詢單元,用于在所述Windows AD域服務器預先保存的用戶信息中查詢是否存在 所述用戶名;如果不存在,則校驗成功;第二查詢單元,用于當所述第一查詢單元的查詢結果為所述用戶名不存在時,在所述 Windows AD域服務器預先保存的用戶信息中查詢所述用戶名對應的密碼是否為空;如果 是,則校驗成功;如果否,則校驗失敗。
10.根據(jù)權利要求8或9所述的認證系統(tǒng),其特征在于,所述判斷模塊包括查詢單元,用于查詢所述預先保存的用戶信息,判斷所述預先保存的用戶信息中是否 存在所述用戶名;如果存在所述用戶名,則所述用戶名為授權用戶。
全文摘要
本發(fā)明提供一種認證方法、服務器及系統(tǒng)。該認證方法用于實現(xiàn)802.1X與Windows AD域的聯(lián)動認證,包括802.1X認證服務器接收到用戶的認證請求,所述認證請求中攜帶所述用戶的用戶名和空密碼;所述802.1X認證服務器將所述用戶名和空密碼發(fā)送給Windows AD域服務器,由所述WindowsAD域服務器對所述用戶名和空密碼進行校驗;校驗成功后,所述802.1X認證服務器向所述Windows AD域服務器發(fā)送查詢請求,所述查詢請求中攜帶所述用戶名;所述Windows AD域服務器判斷所述用戶名是否為授權用戶;當所述用戶名為授權用戶時,聯(lián)動認證成功。
文檔編號H04L29/06GK101986598SQ201010527519
公開日2011年3月16日 申請日期2010年10月27日 優(yōu)先權日2010年10月27日
發(fā)明者劉忠東, 劉福能, 李進, 楊紅飛 申請人:北京星網(wǎng)銳捷網(wǎng)絡技術有限公司