董甲東,鄭春香
(1.西安建筑科技大學(xué)機(jī)電工程學(xué)院,西安,710055; 2.安慶師范學(xué)院信息中心,安慶,246011; 3.安慶師范學(xué)院計(jì)算機(jī)與信息學(xué)院,安慶,246011)
校園信息門戶統(tǒng)一身份認(rèn)證系統(tǒng)的設(shè)計(jì)
董甲東1,2,鄭春香3
(1.西安建筑科技大學(xué)機(jī)電工程學(xué)院,西安,710055; 2.安慶師范學(xué)院信息中心,安慶,246011; 3.安慶師范學(xué)院計(jì)算機(jī)與信息學(xué)院,安慶,246011)
基于單點(diǎn)登錄技術(shù),構(gòu)建一個(gè)統(tǒng)一身份認(rèn)證服務(wù)平臺(tái),有效地整合校園網(wǎng)絡(luò)中所有的應(yīng)用系統(tǒng)和資源,提供統(tǒng)一入口,用戶只進(jìn)行一次登錄,就可以實(shí)現(xiàn)應(yīng)用漫游,訪問所有被授權(quán)的應(yīng)用系統(tǒng),對(duì)統(tǒng)一身份認(rèn)證系統(tǒng)整體設(shè)計(jì)思想、結(jié)構(gòu)框架、關(guān)鍵技術(shù)的實(shí)現(xiàn)進(jìn)行論述。
統(tǒng)一身份認(rèn)證;單點(diǎn)登錄;數(shù)字化校園
Abstract:A uniform identity authentication service platform based on single sign on was constructed. The designed platform provides the integration environment of single sign on, uniform identity authentication, applications roaming and access control for all the existed application systems. The total designing idea and its architecture and frame were proposed, its key technique was discussed.
Key words:Uniform Identity Authentication; Single Sign On; Digital Campus
統(tǒng)一身份認(rèn)證系統(tǒng)是為校園網(wǎng)絡(luò)諸多應(yīng)用系統(tǒng)建立惟一的認(rèn)證服務(wù)平臺(tái),用戶的信息資源被統(tǒng)一存儲(chǔ)在用戶資料數(shù)據(jù)庫中,為校園網(wǎng)內(nèi)部的所有應(yīng)用共享。對(duì)校園網(wǎng)用戶而言,只需要一次身份認(rèn)證,就可以對(duì)所有被授權(quán)的應(yīng)用系統(tǒng)或資源進(jìn)行無縫的訪問;對(duì)網(wǎng)絡(luò)管理員而言,可以在可視化圖形界面下,實(shí)現(xiàn)對(duì)各種應(yīng)用系統(tǒng)用戶的集中管理和統(tǒng)一身份認(rèn)證,并進(jìn)行系統(tǒng)級(jí)的授權(quán)。從而改變傳統(tǒng)分散的用戶管理和認(rèn)證模式,大大提高了認(rèn)證的可信度和可靠性?;谛@信息門戶,構(gòu)建一個(gè)統(tǒng)一身份認(rèn)證系統(tǒng)是解決校園網(wǎng)內(nèi)部應(yīng)用系統(tǒng)集中的有效途徑。
1.1 目錄服務(wù)
目錄服務(wù)就是按照樹狀信息組織模式,實(shí)現(xiàn)信息管理和服務(wù)接口的一種方法。它將分布式系統(tǒng)中的用戶、資源和組成分布式系統(tǒng)的其他對(duì)象統(tǒng)一組織起來,提供一個(gè)單一的邏輯視圖,允許用戶和應(yīng)用透明地訪問網(wǎng)絡(luò)上的資源。一個(gè)由目錄服務(wù)支持的網(wǎng)絡(luò)系統(tǒng)是一個(gè)集成的、網(wǎng)絡(luò)化的、統(tǒng)一的系統(tǒng),而不是獨(dú)立功能的簡(jiǎn)單聚合。
1.2 LDAP目錄服務(wù)器
就像Oracle 或Microsoft的數(shù)據(jù)庫管理系統(tǒng)(DBMS)是用于處理查詢和更新關(guān)系型數(shù)據(jù)庫一樣,LDAP服務(wù)器是用來處理查詢和更新LDAP目錄的。LDAP目錄也是一種類型數(shù)據(jù)庫,但它不是關(guān)系型數(shù)據(jù)庫,不具備上述關(guān)系型數(shù)據(jù)庫的完備的關(guān)系運(yùn)算處理能力,也沒有很強(qiáng)的數(shù)值計(jì)算處理能力。目錄服務(wù)不適于進(jìn)行頻繁的更新,而且在本質(zhì)上屬于分布式結(jié)構(gòu),它具備以下優(yōu)點(diǎn):
1. 突出的檢索性能
LDAP服務(wù)器在處理大量用戶并發(fā)訪問題上優(yōu)勢(shì)明顯,具有比關(guān)系數(shù)據(jù)庫系統(tǒng)更快的響應(yīng)速度。
2.完善的安全機(jī)制
LDAP服務(wù)器通過訪問控制列表ACL設(shè)置對(duì)目錄數(shù)據(jù)庫的讀寫權(quán)限,通過支持基于SSL(Secure Sockets Layer)的安全機(jī)制完成對(duì)明文加密,能提供更安全的保障。
3.跨平臺(tái)支持
由于LDAP Server運(yùn)行在TCP/IP上層,互聯(lián)網(wǎng)上的各種應(yīng)用,無論是運(yùn)行在Unix還是在Windows,都可以通過TCP/IP訪問LDAP服務(wù)器上的目錄信息。
4.同步復(fù)制功能
大多數(shù)LDAP服務(wù)器都內(nèi)置同步復(fù)制功能,它增強(qiáng)了網(wǎng)絡(luò)應(yīng)用中數(shù)據(jù)的安全保障,另外復(fù)制還可以使分布在不同地域的服務(wù)器保持?jǐn)?shù)據(jù)的同步。
2.1 統(tǒng)一身份認(rèn)證系統(tǒng)框架結(jié)構(gòu)
統(tǒng)一身份認(rèn)證系統(tǒng)設(shè)計(jì)的核心思想是運(yùn)用單點(diǎn)登錄技術(shù)(SSO),用目錄服務(wù)數(shù)據(jù)庫集中存儲(chǔ)用戶信息和各個(gè)應(yīng)用系統(tǒng)的信息,實(shí)現(xiàn)對(duì)用戶的集中管理、統(tǒng)一認(rèn)證和統(tǒng)一授權(quán),以及實(shí)現(xiàn)對(duì)應(yīng)用系統(tǒng)的訪問控制。系統(tǒng)框架結(jié)構(gòu)如圖1所示。
目錄服務(wù)數(shù)據(jù)庫:目錄服務(wù)數(shù)據(jù)庫是整個(gè)統(tǒng)一身份認(rèn)證系統(tǒng)的基礎(chǔ),采用標(biāo)準(zhǔn)的LDAP目錄服務(wù)數(shù)據(jù)庫,通過LDAP目錄力將校內(nèi)的用戶和應(yīng)用系統(tǒng)的信息以層次結(jié)構(gòu)、面向?qū)ο蟮臄?shù)據(jù)庫方式加以集中和管理,保證了數(shù)據(jù)的一致性和完整性,為校園網(wǎng)的各類應(yīng)用系統(tǒng)提供用戶信息的共享和使用。
用戶認(rèn)證和授權(quán):每個(gè)用戶認(rèn)證成功后才能登錄訪問各個(gè)應(yīng)用系統(tǒng),而通過對(duì)角色的定義,用戶認(rèn)證完成后,應(yīng)用系統(tǒng)根據(jù)用戶的組別進(jìn)行授權(quán)訪問或取消訪問授權(quán)。
用戶身份管理服務(wù):在學(xué)校,每個(gè)人都有一個(gè)自己的真實(shí)身份,而在數(shù)字化校園里,每個(gè)人都有一個(gè)自己的電子身份。用戶的身份管理服務(wù)就是實(shí)現(xiàn)用戶的真實(shí)身份到電子身份的映射,保證每個(gè)校園網(wǎng)的用戶都能得到一個(gè)和其真實(shí)身份相對(duì)應(yīng)的電子身份,并享有和其身份相對(duì)應(yīng)的網(wǎng)絡(luò)訪問權(quán)限。
應(yīng)用系統(tǒng)注冊(cè)服務(wù):應(yīng)用系統(tǒng)要由統(tǒng)一身份認(rèn)證系統(tǒng)來統(tǒng)一授權(quán)訪問。它必須先在統(tǒng)一身份系統(tǒng)中注冊(cè),提供相關(guān)的信息,包括應(yīng)用系統(tǒng)的身份信息、應(yīng)用系統(tǒng)所有合法用戶的信息、應(yīng)用系統(tǒng)的訪問控制信息等。
2.2 統(tǒng)一身份認(rèn)證系統(tǒng)功能規(guī)劃
2.2.1身份認(rèn)證服務(wù)器
身份認(rèn)證服務(wù)器是整個(gè)統(tǒng)一身份認(rèn)證服務(wù)平臺(tái)的核心,從功能上看,身份認(rèn)證服務(wù)器主要由身份認(rèn)證模塊、用戶管理模塊、訪問授權(quán)模塊組成。
2.2.2用戶資料數(shù)據(jù)庫
用戶資料數(shù)據(jù)庫采用LDAP目錄服務(wù)器,利用其分布式目錄信息樹結(jié)構(gòu)、面向?qū)ο蟮男畔⒋鎯?chǔ)方式,對(duì)統(tǒng)一身份認(rèn)證服務(wù)系統(tǒng)中的用戶身份信息、應(yīng)用系統(tǒng)資源信息、賬號(hào)關(guān)聯(lián)信息、控制策略信息等進(jìn)行有效的組織和管理,提供高效安全的目錄訪問。
2.2.3策略設(shè)置
圖1 統(tǒng)一身份認(rèn)證系統(tǒng)框架結(jié)構(gòu)
策略被存儲(chǔ)在LDAP目錄服務(wù)器中,它是統(tǒng)一身份認(rèn)證平臺(tái)中用來控制訪問權(quán)限的一種手段。策略定義了在何種情況下,何人可以對(duì)受控的資源進(jìn)行何種操作或者不可以進(jìn)行何種操作,對(duì)系統(tǒng)沒有明確授權(quán)的操作都作出拒絕答復(fù)。策略包括:資源名稱,一般是被保護(hù)資源的URL;對(duì)每個(gè)資源需要控制的操作名稱,如GET/POST或者是READ/WRITE等;對(duì)每個(gè)定義的動(dòng)作的訪問控制,是允許還是拒絕;它可以規(guī)定具體的IP地址或地址段、強(qiáng)制使用的認(rèn)證模式、起始和結(jié)束時(shí)間限制。
2.2.4登錄代理
登錄代理是一個(gè)代理程序,它作為一個(gè)中間件被部署在各支持統(tǒng)一身份認(rèn)證服務(wù)平臺(tái)的應(yīng)用系統(tǒng)服務(wù)器端。對(duì)于C/S模式的應(yīng)用,它可以是一個(gè)Windows的安裝程序,對(duì)于B/S模式的應(yīng)用,它可以是一個(gè)運(yùn)行在Web服務(wù)器中的SERVLET,它負(fù)責(zé)監(jiān)聽用戶發(fā)送給應(yīng)用服務(wù)器的各種請(qǐng)求,并根據(jù)用戶的認(rèn)證信息利用統(tǒng)一身份認(rèn)證平臺(tái)提供的API查詢用戶數(shù)據(jù)庫資料中的用戶信息進(jìn)行認(rèn)證,并根據(jù)用戶數(shù)據(jù)庫中的策略來判斷用戶的請(qǐng)求是否得到滿足,如果能滿足,則將用戶的訪問請(qǐng)求轉(zhuǎn)向到相應(yīng)的應(yīng)用系統(tǒng)處理,如果不能滿足,則系統(tǒng)拒絕服務(wù)。
2.2.5賬號(hào)關(guān)聯(lián)
對(duì)校園網(wǎng)中已經(jīng)存在的應(yīng)用系統(tǒng),內(nèi)部已擁有自己的用戶管理和認(rèn)證模塊,為了將它們集成到統(tǒng)一身份認(rèn)證服務(wù)平臺(tái)中,同時(shí)避免大量修改已有的程序代碼,盡量保留原有的用戶管理和認(rèn)證模塊。在設(shè)計(jì)時(shí)必須為用戶在統(tǒng)一身份認(rèn)證服務(wù)中注冊(cè)的用戶和該用戶被授權(quán)訪問的應(yīng)用系統(tǒng)中賬號(hào)建立關(guān)聯(lián)。
3.1 目錄數(shù)據(jù)庫的建立
目錄信息樹(Directory Information Tree,以下簡(jiǎn)稱DIT)的結(jié)構(gòu)可以根據(jù)組織的結(jié)構(gòu)來確定。設(shè)計(jì)DIT的原則是使其層次盡量少,當(dāng)改變DIT的某個(gè)組織時(shí),盡量減少對(duì)其他部分的影響。DIT的層次越少,對(duì)應(yīng)各條目的DN越短,目錄中的條目受其他條目信息變化的影響就越小。
DIT的根代表學(xué)校組織,學(xué)校直屬院系和機(jī)關(guān)作為學(xué)校節(jié)點(diǎn)的的孩子節(jié)點(diǎn),如果這些院系和機(jī)關(guān)還有下屬部門,還可以向下產(chǎn)生低層組織節(jié)點(diǎn)。為方便用戶管理,將用戶分成用戶類別,如教師、本科生、研究生等,作為組織的孩子節(jié)點(diǎn)。至此,學(xué)校所有用戶信息都可以保存到目錄數(shù)據(jù)庫的DIT中。
3.2 單點(diǎn)登錄與應(yīng)用漫游的實(shí)現(xiàn)
實(shí)現(xiàn)單點(diǎn)登錄與應(yīng)用漫游必須做到:用戶在認(rèn)證服務(wù)器上登錄成功后,應(yīng)用系統(tǒng)能判斷該用戶通過了認(rèn)證;用戶訪問應(yīng)用系統(tǒng)的權(quán)限保存在目錄中,用戶進(jìn)入相應(yīng)的應(yīng)用系統(tǒng)前,需要從目錄中查詢用戶的權(quán)限,因此需要提供一種高效、快速地維護(hù)用戶權(quán)限的機(jī)制。
圖2 統(tǒng)一身份認(rèn)證系統(tǒng)目錄信息樹體系結(jié)構(gòu)
校園網(wǎng)絡(luò)中應(yīng)用系統(tǒng)的用戶權(quán)限復(fù)雜,如:信息發(fā)布平臺(tái)教師和學(xué)生都能訪問;成績(jī)查詢系統(tǒng)只有學(xué)生能訪問;辦公自動(dòng)化系統(tǒng)只有學(xué)校行政機(jī)關(guān)的教師能夠訪問。分析上述情況,提供以下單點(diǎn)登錄與應(yīng)用漫游的實(shí)現(xiàn)辦法。
對(duì)組織授權(quán):目錄信息樹的結(jié)構(gòu)是按學(xué)校的組織結(jié)構(gòu)建立的,DIT的根對(duì)應(yīng)學(xué)校,根的下一層對(duì)應(yīng)學(xué)院和機(jī)關(guān)部門,如此往下劃分。對(duì)組織授予訪問某個(gè)應(yīng)用系統(tǒng)的權(quán)限后,該組織下的所有后代條目下的用戶都有了相應(yīng)的權(quán)限。
先建立用戶組,然后對(duì)用戶組授權(quán):在DIT中組織下建立新條目,稱為用戶組,該組織下的用戶及其后代組織下的用戶就可以加入用戶組。組織是分層次的,用戶組的作用范圍由其所在的組織的層次決定,對(duì)用戶組授權(quán)后,用戶組中的所有用戶就有訪問權(quán)限。
對(duì)用戶組授權(quán)有很大的靈活性,對(duì)辦公自動(dòng)化系統(tǒng),可以在DIT根節(jié)點(diǎn)下建立公文組,將各院系、部門有閱文和發(fā)文權(quán)限的教師加入到這個(gè)組,對(duì)該組授予訪問辦公自動(dòng)化系統(tǒng)權(quán)限后,各單位有閱文和發(fā)文權(quán)限的用戶就可以訪問,其他用戶則無法訪問。
3.3 建立統(tǒng)一身份認(rèn)證Web服務(wù)器
統(tǒng)一身份認(rèn)證服務(wù)器提供認(rèn)證服務(wù)、會(huì)話服務(wù)和目錄管理服務(wù)。認(rèn)證服務(wù)管理用戶的認(rèn)證;會(huì)話服務(wù)管理用戶的單點(diǎn)登錄標(biāo)記;目錄管理服務(wù)供管理員操作目錄。
3.4 統(tǒng)一身份認(rèn)證系統(tǒng)在校園信息門戶中的實(shí)現(xiàn)
安慶師范學(xué)院有教職工及學(xué)生近2萬人,校園網(wǎng)絡(luò)建設(shè)基礎(chǔ)設(shè)施建設(shè)基本完成,新老校區(qū)采用光纖互聯(lián),校園主干網(wǎng)絡(luò)采用千兆以太網(wǎng)技術(shù),百兆到桌面。校園網(wǎng)絡(luò)基本覆蓋了全校的教學(xué)、科研、學(xué)生公寓等場(chǎng)所,伴隨著新校區(qū)建設(shè)的同步進(jìn)行,截止目前,校園網(wǎng)絡(luò)已有近1.5萬個(gè)信息點(diǎn)。校園網(wǎng)絡(luò)基礎(chǔ)設(shè)施的快速發(fā)展給安慶師范學(xué)院的師生營(yíng)造了一個(gè)良好的網(wǎng)絡(luò)環(huán)境,為校園信息化建設(shè)打下了堅(jiān)實(shí)的基礎(chǔ)。
統(tǒng)一身份認(rèn)證是安慶師范學(xué)院信息化建設(shè)的重要內(nèi)容,目前,學(xué)校已建成的應(yīng)用系統(tǒng)主要包括:辦公自動(dòng)化系統(tǒng)、綜合教務(wù)管理系統(tǒng)、網(wǎng)絡(luò)教學(xué)平臺(tái)系統(tǒng)、郵件系統(tǒng)、圖書館系統(tǒng)等。隨著信息化建設(shè)的深入,將會(huì)有人事管理系統(tǒng)、科研管理系統(tǒng)、設(shè)備管理系統(tǒng)等應(yīng)用系統(tǒng)的加入。安慶師范學(xué)院建設(shè)的統(tǒng)一身份認(rèn)證系統(tǒng)的目的是基于校園信息門戶,建設(shè)一個(gè)統(tǒng)一管理各個(gè)應(yīng)用系統(tǒng)的用戶數(shù)據(jù),最終實(shí)現(xiàn)所有應(yīng)用系統(tǒng)的單點(diǎn)登錄。
3.4.1規(guī)劃目錄信息樹
安慶師范學(xué)院所有組織隸屬于學(xué)校,DIT分為4層,分別是:學(xué)校、院系和機(jī)關(guān)、用戶類別、用戶。將學(xué)生分為三類,分別為碩士生、本科生、專科生,如圖2所示。
3.4.2單點(diǎn)登錄與應(yīng)用漫游的實(shí)現(xiàn)
信息發(fā)布平臺(tái)由認(rèn)證服務(wù)器進(jìn)行認(rèn)證,信息發(fā)布平臺(tái)的用戶數(shù)據(jù)也由認(rèn)證服務(wù)器通過目錄統(tǒng)一保存。用戶進(jìn)入安慶師范學(xué)院數(shù)字化校園統(tǒng)一身份認(rèn)證界面,輸入用戶名和密碼登錄,用戶名和密碼被發(fā)送到認(rèn)證服務(wù)器的認(rèn)證模塊,由認(rèn)證服務(wù)器判斷與保存在目錄中的數(shù)據(jù)是否一致。如果一致,用戶獲準(zhǔn)進(jìn)入。
對(duì)于統(tǒng)一身份認(rèn)證,為了更好地集成各應(yīng)用系統(tǒng),一般會(huì)提供大量的第三方應(yīng)用的身份接入接口,如修改個(gè)人信息/密碼;獲取組織/角色信息等。
系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)了對(duì)于用戶的集中管理和授權(quán),同時(shí),通過統(tǒng)一用戶信息管理模塊實(shí)現(xiàn)位于異構(gòu)數(shù)據(jù)庫中的用戶數(shù)據(jù)的集中管理,通過應(yīng)用系統(tǒng)的注冊(cè)模塊簡(jiǎn)化了應(yīng)用系統(tǒng)的集成過程,在校園信息化建設(shè)中具有一定的應(yīng)用前景。
統(tǒng)一身份認(rèn)證的實(shí)現(xiàn)需要認(rèn)證服務(wù)端、用戶客戶端和應(yīng)用系統(tǒng)之間具有良好的銜接,本文設(shè)計(jì)中提出了實(shí)現(xiàn)框架,但由于應(yīng)用系統(tǒng)的多樣性,在具體實(shí)現(xiàn)過程中還有很多工作要做。安全應(yīng)用的集成是未來發(fā)展的重點(diǎn),運(yùn)用目錄技術(shù)實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)資源使用的統(tǒng)一管理是發(fā)展趨勢(shì)。
[1] 鄭東曦.Web服務(wù)統(tǒng)一身份認(rèn)證協(xié)議[J].華南理工大學(xué)學(xué)報(bào),2005,33(2).
[2] 張輝.數(shù)字校園中基于LDAP的統(tǒng)一用戶身份管理技術(shù)研究[J].計(jì)算機(jī)工程與科學(xué),2005,27(1).
[3] 鄭嵐,陳奇.基于LDAP的統(tǒng)一訪問控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì), 2005,26(7).
[4] 許鑫,蘇新寧.數(shù)字化校園中應(yīng)用集成研究[J].現(xiàn)代圖書情報(bào)技術(shù),2005,130(11).
安徽省教育廳自然科學(xué)研究基金(產(chǎn)學(xué)研重點(diǎn))項(xiàng)目安慶師范學(xué)院校級(jí)教學(xué)研究項(xiàng)目(2006jy21)