冉旭 鐘鳴 陳春明
摘要:隨著信息技術(shù)的不斷發(fā)展,基于數(shù)字化校園的應(yīng)用系統(tǒng)日益增多,多異構(gòu)系統(tǒng)共存下的身份認(rèn)證的統(tǒng)一性和訪問(wèn)控制的安全性等問(wèn)題日益突出。針對(duì)數(shù)字化校園發(fā)展的特點(diǎn),提出了基于CAS和LDAP的統(tǒng)一身份認(rèn)證解決方案,并對(duì)整體架構(gòu)進(jìn)行了設(shè)計(jì),對(duì)各部分系統(tǒng)進(jìn)行了描述,為數(shù)字化校園各應(yīng)用系統(tǒng)的集成和進(jìn)一步發(fā)展打下了良好的基礎(chǔ)。
關(guān)鍵詞:數(shù)字化校園;統(tǒng)一身份認(rèn)證;CAS;LDAP
中圖分類(lèi)號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)22-5277-03
Research on Digital Campus Unified Identity Authentication System
RAN Xu1,ZHONG Ming1,CHEN Chun-ming1,2
(1.Chongqing Communication Institute,Chongqing 400035,China; 2.Defense Information Institute, Wuhan 430010,China)
Abstract: Along with the information technology unceasing development, application systems based on the digital campus are increasing, so security issues of unified identity authentication and access control become increasingly serious. The unified identity authentication system based on CAS and LDAP was discussed and described, and it laid a great foundation to develop application systems in digital campus.
Key words: digital campus; unified identity; CAS; LDAP
“數(shù)字化校園”是以計(jì)算機(jī)和網(wǎng)絡(luò)信息技術(shù)為基礎(chǔ),以數(shù)字化信息為依托,使教學(xué)資源得到充分優(yōu)化利用的一種虛擬教育環(huán)境。近幾年全國(guó)各大高校大力開(kāi)展數(shù)字化校園的建設(shè)工作,各院校的數(shù)字化校園基礎(chǔ)平臺(tái)日漸完善,基于校園網(wǎng)的網(wǎng)絡(luò)應(yīng)用系統(tǒng)日益豐富。但是各個(gè)應(yīng)用系統(tǒng)可能隸屬于多個(gè)互不從屬的部門(mén),因此缺乏統(tǒng)一的設(shè)計(jì)架構(gòu)和開(kāi)發(fā)規(guī)范,造成了大量基于不同系統(tǒng)平臺(tái)和技術(shù)規(guī)范開(kāi)發(fā)的應(yīng)用系統(tǒng)共存的現(xiàn)象,導(dǎo)致各應(yīng)用系統(tǒng)相對(duì)獨(dú)立無(wú)法有效共享安全認(rèn)證信息,于是形成了網(wǎng)絡(luò)環(huán)境下的多個(gè)信息孤島。隨著數(shù)字化校園建設(shè)的不斷深入,校園網(wǎng)上的各種應(yīng)用系統(tǒng)的身份認(rèn)證問(wèn)題日益突出。數(shù)字化校園用戶(hù)在使用各種網(wǎng)絡(luò)應(yīng)用時(shí),必須面對(duì)多種登錄界面,記憶多個(gè)用戶(hù)賬戶(hù)和口令,校園網(wǎng)系統(tǒng)管理員也不得不維護(hù)多個(gè)系統(tǒng)中的用戶(hù)信息,以保證數(shù)據(jù)的一致性。數(shù)字化校園內(nèi)各應(yīng)用系統(tǒng)的安全認(rèn)證問(wèn)題嚴(yán)重制約了數(shù)字化校園的進(jìn)一步發(fā)展,因此,建立一個(gè)統(tǒng)一的身份認(rèn)證系統(tǒng)對(duì)數(shù)字化校園實(shí)現(xiàn)統(tǒng)一管理、統(tǒng)一認(rèn)證和統(tǒng)一授權(quán)有著十分重要的意義。
1統(tǒng)一身份認(rèn)證系統(tǒng)的設(shè)計(jì)思路
統(tǒng)一身份認(rèn)證系統(tǒng)的設(shè)計(jì)思路是采用唯一的認(rèn)證服務(wù)系統(tǒng)統(tǒng)一管理全校所有應(yīng)用系統(tǒng)各自獨(dú)立的認(rèn)證模塊,進(jìn)行用戶(hù)賬戶(hù)的統(tǒng)一存儲(chǔ)、統(tǒng)一授權(quán);各種應(yīng)用只需遵循統(tǒng)一認(rèn)證服務(wù)調(diào)用接口,即可實(shí)現(xiàn)身份認(rèn)證的過(guò)程。而用于用戶(hù)身份信息、密碼存儲(chǔ)和數(shù)據(jù)傳輸?shù)陌踩詣t由統(tǒng)一認(rèn)證服務(wù)提供的安全認(rèn)證協(xié)議來(lái)保證。這既可規(guī)范各應(yīng)用系統(tǒng)的身份認(rèn)證方式,方便用戶(hù)使用,提高用戶(hù)工作效率,降低系統(tǒng)維護(hù)成本,還可以全面提升整個(gè)數(shù)字化校園網(wǎng)絡(luò)的完整性和安全性。
2統(tǒng)一身份認(rèn)證系統(tǒng)的設(shè)計(jì)原則
數(shù)字化校園用戶(hù)統(tǒng)一身份認(rèn)證系統(tǒng)需要滿(mǎn)足對(duì)用戶(hù)登錄時(shí)進(jìn)行集中統(tǒng)一認(rèn)證、登錄后進(jìn)行分級(jí)分類(lèi)授權(quán)、注銷(xiāo)后進(jìn)行集中安全審計(jì)等功能的需求,從而提供集統(tǒng)一認(rèn)證、分類(lèi)授權(quán)和集中審計(jì)三位一體的安全解決方案。通過(guò)對(duì)數(shù)字化校園門(mén)戶(hù)網(wǎng)站的需求分析,確定了統(tǒng)一身份認(rèn)證系統(tǒng)的設(shè)計(jì)應(yīng)遵循以下原則:
2.1統(tǒng)一的認(rèn)證途徑
基于數(shù)字化校園的多應(yīng)用統(tǒng)一身份認(rèn)證系統(tǒng)的核心功能是實(shí)現(xiàn)用戶(hù)的“一次登錄,處處訪問(wèn)”,因此身份認(rèn)證系統(tǒng)要提供一個(gè)統(tǒng)一的認(rèn)證途徑,讓用戶(hù)一次登錄后,即可訪問(wèn)全網(wǎng)的資源。
2.2良好的通用性
由于各個(gè)應(yīng)用系統(tǒng)各有特點(diǎn),分別運(yùn)行在不同的平臺(tái)上,都要能與統(tǒng)一身份認(rèn)證系統(tǒng)交互,這就要求統(tǒng)一身份認(rèn)證系統(tǒng)提供跨平臺(tái)認(rèn)證的功能。實(shí)現(xiàn)跨平臺(tái)、跨數(shù)據(jù)庫(kù)、甚至跨網(wǎng)段的身份認(rèn)證,實(shí)現(xiàn)與數(shù)字化校園各種應(yīng)用系統(tǒng)的無(wú)縫整合和互操作性。
2.3高度的安全性和穩(wěn)定性
統(tǒng)一身份認(rèn)證系統(tǒng)負(fù)責(zé)數(shù)字化校園全網(wǎng)用戶(hù)的身份認(rèn)證和統(tǒng)一授權(quán),是數(shù)字化校園正常運(yùn)轉(zhuǎn)的核心基礎(chǔ)平臺(tái),只有系統(tǒng)的安全穩(wěn)定運(yùn)行才能保障各種應(yīng)用系統(tǒng)對(duì)用戶(hù)認(rèn)證授權(quán)的正常開(kāi)展,因此必須采取多項(xiàng)措施提升統(tǒng)一身份認(rèn)證系統(tǒng)的安全防護(hù)等級(jí),保證系統(tǒng)的安全穩(wěn)定運(yùn)行。
2.4靈活的可擴(kuò)展性
統(tǒng)一身份認(rèn)證系統(tǒng)為全網(wǎng)各應(yīng)用系統(tǒng)的集中統(tǒng)一身份認(rèn)證和授權(quán)提供支撐,這就要求統(tǒng)一身份認(rèn)證系統(tǒng)具有靈活的可擴(kuò)展性,不僅能夠支持現(xiàn)有應(yīng)用系統(tǒng)對(duì)身份認(rèn)證接口的升級(jí)改造,還要能夠適應(yīng)未來(lái)應(yīng)用系統(tǒng)開(kāi)發(fā)部署時(shí)對(duì)身份認(rèn)證接口提出的新要求,使新的應(yīng)用能夠平滑整合到統(tǒng)一身份認(rèn)證系統(tǒng)所搭建的總體框架之內(nèi)。
2.5完備的權(quán)限管理
通過(guò)建立用戶(hù)、角色和權(quán)限之間的對(duì)應(yīng)關(guān)系,實(shí)現(xiàn)對(duì)用戶(hù)的網(wǎng)絡(luò)訪問(wèn)權(quán)限進(jìn)行靈活配置,有效提升整個(gè)系統(tǒng)的易用性、靈活性和健壯性;基于用戶(hù)所屬單位對(duì)系統(tǒng)權(quán)限進(jìn)行分級(jí)管理,有效的保證了用戶(hù)、角色及資源信息的隱秘性。
3統(tǒng)一身份認(rèn)證系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)
統(tǒng)一身份認(rèn)證系統(tǒng)的核心設(shè)計(jì)思想是統(tǒng)一存儲(chǔ)用戶(hù)身份數(shù)據(jù),統(tǒng)一授權(quán)網(wǎng)絡(luò)應(yīng)用系統(tǒng),統(tǒng)一管理數(shù)字化校園內(nèi)各種應(yīng)用系統(tǒng)的身份認(rèn)證方式,從而提升整個(gè)數(shù)字化校園的易用性、整體性和安全性。
為實(shí)現(xiàn)跨數(shù)據(jù)庫(kù)、跨系統(tǒng)、跨平臺(tái)、甚至跨網(wǎng)段的多個(gè)應(yīng)用系統(tǒng)的統(tǒng)一身份認(rèn)證,目前比較常用而有效的解決方案就是基于LDAP(輕量目錄訪問(wèn)協(xié)議)的CAS(中央認(rèn)證服務(wù))單點(diǎn)登錄系統(tǒng)方案。該方案可以對(duì)多個(gè)應(yīng)用系統(tǒng)進(jìn)行統(tǒng)一身份認(rèn)證和授權(quán),用戶(hù)只需在統(tǒng)一的登錄界面進(jìn)行登錄認(rèn)證就能獲得多個(gè)應(yīng)用系統(tǒng)的訪問(wèn)權(quán)限。該方案主要分為三大模塊:統(tǒng)一身份認(rèn)證接口模塊、CAS認(rèn)證服務(wù)模塊及LDAP目錄服務(wù)模塊。統(tǒng)一身份認(rèn)證接口為用戶(hù)提供系統(tǒng)登錄的入口,通過(guò)對(duì)各網(wǎng)絡(luò)應(yīng)用系統(tǒng)登錄界面的集成,實(shí)現(xiàn)用戶(hù)登錄及認(rèn)證界面的統(tǒng)一;CAS認(rèn)證服務(wù)是統(tǒng)一身份認(rèn)證系統(tǒng)的核心,為用戶(hù)提供基于CAS協(xié)議的多應(yīng)用系統(tǒng)統(tǒng)一身份認(rèn)證服務(wù);LDAP目錄服務(wù)實(shí)現(xiàn)用戶(hù)身份信息的集中統(tǒng)一存儲(chǔ)、管理與維護(hù),保證用戶(hù)信息在多應(yīng)用系統(tǒng)中的唯一性和權(quán)威性。整個(gè)系統(tǒng)的架構(gòu)如圖1所示。
圖1統(tǒng)一身份認(rèn)證系統(tǒng)
3.1統(tǒng)一身份認(rèn)證接口
統(tǒng)一身份認(rèn)證接口為數(shù)字化校園中的各個(gè)應(yīng)用系統(tǒng)提供一個(gè)統(tǒng)一的登錄界面,并將統(tǒng)一身份認(rèn)證接口集成到各個(gè)應(yīng)用中,替換各應(yīng)用系統(tǒng)原有獨(dú)立的身份認(rèn)證功能,統(tǒng)一身份認(rèn)證接口根據(jù)用戶(hù)的登錄信息向CAS服務(wù)器發(fā)起身份認(rèn)證請(qǐng)求。對(duì)于合法用戶(hù),認(rèn)證接口將得到一個(gè)有效的Ticket作為登錄應(yīng)用系統(tǒng)的憑證,同時(shí)認(rèn)證服務(wù)器也要存儲(chǔ)該Ticket以備合法性驗(yàn)證。最后認(rèn)證接口要將該用戶(hù)信息提交給相應(yīng)的應(yīng)用系統(tǒng);對(duì)于非法用戶(hù),認(rèn)證接口會(huì)拒絕用戶(hù)訪問(wèn)相應(yīng)的應(yīng)用。
3.2 CAS認(rèn)證服務(wù)
CAS認(rèn)證服務(wù)旨在為Web應(yīng)用系統(tǒng)提供一種可靠的單點(diǎn)登錄方法,目前得到了廣泛的應(yīng)用,具有獨(dú)立于平臺(tái)的特性。CAS認(rèn)證服務(wù)是由CAS服務(wù)器統(tǒng)一完成的,它將統(tǒng)一身份認(rèn)證接口發(fā)起的請(qǐng)求與LDAP中的用戶(hù)信息匹配認(rèn)證,對(duì)通過(guò)認(rèn)證的用戶(hù),CAS服務(wù)器將生成一份特定的Ticket,這份Ticket強(qiáng)制用戶(hù)通過(guò)統(tǒng)一身份認(rèn)證接口訪問(wèn)授權(quán)的應(yīng)用系統(tǒng)。整個(gè)認(rèn)證過(guò)程默認(rèn)采用HTTPS協(xié)議完成,數(shù)據(jù)通過(guò)SSL通道加密傳送,保證了證書(shū)和Ticket的安全性。認(rèn)證服務(wù)流程如圖2所示。
用戶(hù)訪問(wèn)統(tǒng)一身份認(rèn)證接口,接口會(huì)分析用戶(hù)的訪問(wèn)請(qǐng)求中是否含有合法的Ticket,如果有則允許通過(guò)接口訪問(wèn)授權(quán)的應(yīng)用,否則進(jìn)入第2步。
統(tǒng)一身份認(rèn)證接口將用戶(hù)的訪問(wèn)請(qǐng)求重定向到CAS服務(wù)器,CAS服務(wù)器通過(guò)LDAP服務(wù)器驗(yàn)證用戶(hù)身份的合法性,如果不合法則給予用戶(hù)提示,否則進(jìn)入第3步。
CAS服務(wù)器產(chǎn)生一個(gè)隨機(jī)的Ticket,附帶上該Ticket的用戶(hù)訪問(wèn)請(qǐng)求,將被重定向到用戶(hù)請(qǐng)求的應(yīng)用。
應(yīng)用系統(tǒng)將該Ticket返回給CAS服務(wù)器,CAS服務(wù)器進(jìn)行Ticket合法性驗(yàn)證。如果驗(yàn)證成功,CAS服務(wù)器將用戶(hù)的身份信息返回給應(yīng)用系統(tǒng),應(yīng)用系統(tǒng)根據(jù)用戶(hù)身份分配相應(yīng)的訪問(wèn)權(quán)限;如果匹配不成功,則給予相應(yīng)的提示。
3.3 LDAP目錄服務(wù)
LDAP是由美國(guó)Michigan大學(xué)研發(fā)的輕量級(jí)目錄訪問(wèn)協(xié)議,該協(xié)議用來(lái)將目錄信息發(fā)布到不同的資源。LDAP基于X.500標(biāo)準(zhǔn),并新增了對(duì)TCP/IP的支持。LDAP服務(wù)器使用“推”或“拉”的方法復(fù)制數(shù)據(jù),復(fù)制技術(shù)內(nèi)置于LDAP服務(wù)器中,可以進(jìn)行方便靈活的配置。
圖2 CAS認(rèn)證服務(wù)流程
LDAP中目錄按照樹(shù)型結(jié)構(gòu)進(jìn)行組織和存儲(chǔ),目錄由條目組成,條目類(lèi)似于關(guān)系型數(shù)據(jù)庫(kù)存儲(chǔ)在表中的記錄,條目是具有區(qū)別名DN的屬性集合。LDAP協(xié)議規(guī)定了區(qū)別名DN的命名規(guī)則、存取方式、復(fù)制方法及搜索格式等。
目錄樹(shù)的各個(gè)節(jié)點(diǎn)使用不同的關(guān)鍵詞,如“dc”、“uid”、“dn”等,它們分別代表不同的含義,見(jiàn)表1。
表1 LDAP關(guān)鍵詞含義表
LDAP的組織和存儲(chǔ)特性決定了其具有查詢(xún)效率高但修改刪除效率低的特點(diǎn),因此必須建立完備的初始目錄信息樹(shù),以避免進(jìn)行大面積的修改和刪除。針對(duì)數(shù)字化校園的特點(diǎn),可以將單位信息、部門(mén)信息和人員信息保存在每個(gè)用戶(hù)的LDAP條目中,如圖3所示。
圖3 LDAP中的目錄樹(shù)結(jié)構(gòu)
4結(jié)束語(yǔ)
該文中討論的數(shù)字化校園統(tǒng)一身份認(rèn)證系統(tǒng)采用了基于LDAP協(xié)議的CAS單點(diǎn)登錄系統(tǒng)方案,比較完善的解決了用戶(hù)信息統(tǒng)一存儲(chǔ)、應(yīng)用系統(tǒng)統(tǒng)一授權(quán)、應(yīng)用系統(tǒng)規(guī)范認(rèn)證和數(shù)字化校園的完整性及安全性等方面的主要問(wèn)題。但是該方案可能涉及很多現(xiàn)有應(yīng)用系統(tǒng)的升級(jí)改造,大量用戶(hù)信息的集中匯總可能會(huì)導(dǎo)致數(shù)據(jù)冗余問(wèn)題的出現(xiàn),這仍需要進(jìn)一步思考完善。
參考文獻(xiàn):
[1]賀超波,陳啟買(mǎi),歐陽(yáng)輝.數(shù)字化校園門(mén)戶(hù)平臺(tái)統(tǒng)一身份認(rèn)證的實(shí)現(xiàn)[J].現(xiàn)代計(jì)算機(jī),2008(297):25-18.
[2]顧青.統(tǒng)一身份認(rèn)證技術(shù)的研究[J].上海電機(jī)學(xué)院學(xué)報(bào),2006(2):226-227.
[3]陽(yáng)富民,劉軍平.統(tǒng)一認(rèn)證技術(shù)研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與科學(xué),2007,29(2):124-126.
[4]張銳,張建林,孫國(guó)忠.多業(yè)務(wù)系統(tǒng)的統(tǒng)一認(rèn)證授權(quán)研究與設(shè)計(jì)[J].計(jì)算機(jī)工程與設(shè)計(jì),2009,30(8):1826-1828.