黃秀芳,王 海
(1.江蘇科技大學(xué)校辦,江蘇鎮(zhèn)江212003)
(2.南京郵電大學(xué)信息化建設(shè)與管理辦公室,江蘇南京211100)
基于LDAP的高校數(shù)字化校園統(tǒng)一身份認(rèn)證集成實施方案
黃秀芳1,王 海2
(1.江蘇科技大學(xué)校辦,江蘇鎮(zhèn)江212003)
(2.南京郵電大學(xué)信息化建設(shè)與管理辦公室,江蘇南京211100)
隨著高校信息化建設(shè)的不斷發(fā)展,統(tǒng)一身份認(rèn)證平臺可實現(xiàn)單點(diǎn)登錄,從而提高了整個信息系統(tǒng)的安全性和用戶的工作效率.文中就統(tǒng)一身份認(rèn)證平臺架構(gòu)及其集成方式展開了研究,根據(jù)統(tǒng)一身份認(rèn)證平臺的特點(diǎn),提出了基于LDAP的校園統(tǒng)一身份認(rèn)證架構(gòu)方案;研究了統(tǒng)一身份認(rèn)證平臺集成體系,分析集成方式和集成原理,提出了統(tǒng)一身份認(rèn)證集成的實施方案.該實施方案有效實現(xiàn)了對校園網(wǎng)中用戶的統(tǒng)一身份管理和統(tǒng)一身份認(rèn)證.
信息化建設(shè);單點(diǎn)登錄;校園網(wǎng);身份管理
隨著信息技術(shù)的發(fā)展,各個高校都高度重視信息化建設(shè)工作,校園數(shù)字化網(wǎng)絡(luò)建設(shè)已初具規(guī)模,各個業(yè)務(wù)部門也已經(jīng)建設(shè)了相當(dāng)數(shù)量的以人、財、物為管理核心的業(yè)務(wù)系統(tǒng).然而,由于業(yè)務(wù)系統(tǒng)建設(shè)的參差不齊又帶來了信息安全威脅、信息孤島以及管理責(zé)權(quán)不清等難題,所以,現(xiàn)在的信息化校園建設(shè)已由原來的網(wǎng)絡(luò)基礎(chǔ)建設(shè)和部分孤立應(yīng)用系統(tǒng)的構(gòu)建,逐漸向集成的全局信息系統(tǒng)建設(shè)方向轉(zhuǎn)變[1-3].
在多系統(tǒng)并存的情況下,校園網(wǎng)內(nèi)每個用戶擁有多個密碼,用戶需要逐一登錄自己所要使用的應(yīng)用系統(tǒng),使得用戶使用不便,存在安全隱患.同時,用戶的信息分散存儲于各個應(yīng)用系統(tǒng)中,這也為應(yīng)用系統(tǒng)的管理和維護(hù)增加了麻煩,導(dǎo)致工作效率低下.因此,需要在多應(yīng)用系統(tǒng)并存的情況下,實現(xiàn)應(yīng)用系統(tǒng)間的用戶統(tǒng)一認(rèn)證和信息共享具有現(xiàn)實意義[4-6].
隨著IT應(yīng)用的迅速發(fā)展,各種業(yè)務(wù)系統(tǒng)數(shù)量和用戶數(shù)量在不斷增加,網(wǎng)絡(luò)規(guī)模也逐日擴(kuò)大,訪問控制和信息安全問題愈見突出,原有分散的獨(dú)立認(rèn)證、獨(dú)立授權(quán)、獨(dú)立賬號管理的模式已經(jīng)不能滿足目前及未來發(fā)展的要求[7-8].輕量目錄訪問協(xié)議(lightweight directory access protocol,LDAP)是關(guān)于從目錄中創(chuàng)建、訪問、移除對象和數(shù)據(jù)的一種IETF協(xié)議.LDAP提供了搜索、比較、添加、刪除、修改目錄對象以及修改對象名的功能;同時LDAP也支持會話綁定、解綁定以及丟棄等操作[9-10].因此,文中基于LDAP,提出了構(gòu)建完整統(tǒng)一、高效穩(wěn)定、安全可靠的集中身份管理和身份認(rèn)證的平臺集成實施方案,以提高信息應(yīng)用系統(tǒng)的使用和管理效率.
1.1 統(tǒng)一身份認(rèn)證平臺特點(diǎn)
高校統(tǒng)一身份認(rèn)證平臺具有以下幾個特點(diǎn).
1)標(biāo)準(zhǔn)化:高校統(tǒng)一身份認(rèn)證平臺以國際上流行的單點(diǎn)登錄認(rèn)證解決方案為基礎(chǔ)開發(fā),符合行業(yè)標(biāo)準(zhǔn),具有很好的開放性,支持不同的應(yīng)用服務(wù)器環(huán)境和不同的開發(fā)語言的認(rèn)證集成.
2)高穩(wěn)定性:成熟的目錄服務(wù)器技術(shù),支持雙機(jī)備份,可實現(xiàn)遠(yuǎn)程災(zāi)備的部署要求.
3)海量用戶數(shù)據(jù)存儲:統(tǒng)一身份認(rèn)證平臺所管理的用戶數(shù)據(jù)量龐大,并將逐年快速增長,離校用戶將作為校友長期保存,需集中有效地存儲管理用戶身份信息,便于長期使用以及服務(wù)推送.
4)簡單易用性:統(tǒng)一身份認(rèn)證平臺需建立集中安全的策略存儲、管理、設(shè)置.不僅要提供用戶賬號維護(hù),還要提供便捷的批量操作功能以及與業(yè)務(wù)系統(tǒng)數(shù)據(jù)庫賬號同步的功能,更為關(guān)鍵的是需要提供自助功能以及監(jiān)控管理功能.
1.2 統(tǒng)一身份認(rèn)證平臺架構(gòu)方案
基于以上特點(diǎn),高校統(tǒng)一身份認(rèn)證平臺的總體架構(gòu)如圖1.
圖1 高校統(tǒng)一身份認(rèn)證平臺的總體架構(gòu)Fig.1 General framework of the campus unified identity authentication platform
高校統(tǒng)一身份認(rèn)證平臺主要分為4個部分,分別是對外服務(wù)、身份管理、平臺基礎(chǔ)服務(wù)和數(shù)據(jù)存儲,以下對每個部分分別進(jìn)行簡單介紹.
1)對外服務(wù):又稱使用層,主要是為第三方業(yè)務(wù)系統(tǒng)提供集成接口服務(wù),以及為個人用戶提供自助服務(wù).
2)身份管理:又稱管理維護(hù)層,主要實現(xiàn)統(tǒng)一身份認(rèn)證平臺的賬號管理、認(rèn)證管理、審計管理、授權(quán)管理、監(jiān)控管理服務(wù).
3)平臺基礎(chǔ)服務(wù):主要描述了平臺的基礎(chǔ)組成單元,包括任務(wù)調(diào)度、密碼策略,系統(tǒng)管理、監(jiān)控設(shè)置等功能模塊.
4)數(shù)據(jù)存儲:統(tǒng)一身份認(rèn)證平臺的數(shù)據(jù)存儲在LDAP數(shù)據(jù)庫中,對于一些需要同步交換的數(shù)據(jù)則需要存儲在oracle,sql之類的關(guān)系型數(shù)據(jù)庫上.
2.1 集成方式
將高校的各個業(yè)務(wù)系統(tǒng)與身份管理平臺連接,通過身份管理平臺實現(xiàn)用戶身份認(rèn)證和單點(diǎn)登錄功能.這個過程即各個應(yīng)用系統(tǒng)與身份管理平臺的集成,主要包括以下幾種集成方式.
2.1.1 認(rèn)證接口
這是各個應(yīng)用系統(tǒng)與身份管理平臺集成的最主要的方式.各應(yīng)用將認(rèn)證接口的客戶端部署在各自的系統(tǒng)上,替換自身原有獨(dú)立的身份認(rèn)證功能,通過身份管理平臺實現(xiàn)身份認(rèn)證和單點(diǎn)登錄過程.該接口目前涵蓋的類型主要包括JAVA,COM,PHP和C語言等,適合于不同語言和平臺的應(yīng)用程序.目前高校統(tǒng)一身份認(rèn)證集成主要應(yīng)用到的認(rèn)證接口分別為中心認(rèn)證服務(wù)(central authentication service,CAS)接口和金智公司開發(fā)的私有認(rèn)證ICE接口.
2.1.2 LDAP接口
對于選課、選宿舍這樣的高并發(fā)應(yīng)用,使用LDAP接口可以滿足認(rèn)證的性能需求.該接口直接通過LDAP向應(yīng)用系統(tǒng)提供認(rèn)證服務(wù).
2.1.3 門戶偽認(rèn)證
由于學(xué)校內(nèi)應(yīng)用系統(tǒng)建設(shè)起步比較早,因此會有一部分應(yīng)用系統(tǒng)無法通過更改代碼來實現(xiàn)集成,甚至用戶的賬號也無法統(tǒng)一至校內(nèi)的身份管理平臺.對于這種情況,可以通過在門戶內(nèi)實現(xiàn)偽認(rèn)證的方法實現(xiàn)應(yīng)用系統(tǒng)的認(rèn)證集成.
高校統(tǒng)一身份認(rèn)證平臺集成方式可以展現(xiàn)為圖2:
圖2 高校統(tǒng)一身份認(rèn)證平臺集成方式Fig.2 Integration of the campus unified identity authentication platform
2.2 集成原理
高校統(tǒng)一身份認(rèn)證平臺為第三方提供認(rèn)證接口、LDAP接口,這兩種接口分別采用不同的集成原理,各接口的使用原理分別介紹如下.
2.2.1 認(rèn)證接口
認(rèn)證接口分為CAS中心認(rèn)證接口和ICE認(rèn)證接口兩種模式,其集成原理有所不同.
1)CAS中心認(rèn)證接口:中心認(rèn)證服務(wù)的單點(diǎn)登錄架構(gòu)由一個CAS Server和多個CAS Client組成.通過CAS認(rèn)證的用戶將獲得CAS頒發(fā)的一個證書,使用這個證書,用戶可以在server端的承認(rèn)CAS證書的各個系統(tǒng)上自由穿梭訪問,不再需要登錄認(rèn)證,即實現(xiàn)所謂的單點(diǎn)登錄.
2)ICE認(rèn)證接口:當(dāng)用戶訪問認(rèn)證服務(wù)器,通過認(rèn)證后,認(rèn)證服務(wù)器產(chǎn)生一個單點(diǎn)登錄會話令牌,該令牌記錄著用戶的身份,同時產(chǎn)生一個相關(guān)聯(lián)的隨機(jī)數(shù)tokenID,該隨機(jī)數(shù)發(fā)送給用戶的瀏覽器作為一個cookie保存.當(dāng)用戶登錄到同一個域下的另外一個服務(wù)器,這個服務(wù)器讀取cookie中的令牌信息,如果讀到此cookie中的身份信息,則認(rèn)證通過.
2.2.2 LDAP接口
對于高校中的一些高并發(fā)的認(rèn)證型需求,例如教務(wù)的選課、上網(wǎng)認(rèn)證等,可以直接開放LDAP認(rèn)證目錄接口,應(yīng)用系統(tǒng)通過其開發(fā)語言自帶的或者開源的LDAP連接方法直接連接到目錄服務(wù)器進(jìn)行用戶名、密碼的綁定校驗,由于繞過了AM,所以能夠在短時間內(nèi)滿足上萬人次的身份校驗.
在高校統(tǒng)一身份認(rèn)證集成的實施過程中,主要運(yùn)用認(rèn)證接口和LDAP認(rèn)證兩種方式實現(xiàn),實現(xiàn)流程如下圖3:
圖3 高校統(tǒng)一身份認(rèn)證集成實現(xiàn)流程Fig.3 Flow chart of the campus unified identity authentication platform
高校的統(tǒng)一身份認(rèn)證平臺一般都具備開發(fā)好的認(rèn)證接口,根據(jù)第三方應(yīng)用系統(tǒng)的語言不同,認(rèn)證接口的編譯方式也不同,認(rèn)證接口主要支持C語言、JAVA、.net和PHP等幾種語言.下面就高校中各主流語言接口程序包的具體實施以及開發(fā)等展開說明.
3.1 Java客戶端部署
將“認(rèn)證接口ICEClientJavalib”下所有的jar文件拷貝到客戶端應(yīng)用所在服務(wù)器中,并將存放這些jar包的路徑設(shè)置到應(yīng)用的classpath中.
jar包中主要包括:接口語言客戶端程序包和client.properties文件樣例.配置文件密碼加密工具是對配置文件中的口令進(jìn)行加密的工具.
3.1.2 修改client.properties文件
將client.properties文件拷貝到與jar包相同目錄下,并編輯以下內(nèi)容
ids.UserName=amadmin(需轉(zhuǎn)碼加密)
ids.Password=12345678(需轉(zhuǎn)碼加密)
馱子盯著周小羽,周小羽的眼睛里充滿了水,但他卻咬著嘴唇,硬是沒讓眼淚滴下來。在眼淚沒滴下來的時候,周小羽的嘴巴里終于有了聲音——
IdentityManager.Proxy=IdentityManager:tcpp 20000-h xxx.xxx.xxx.xxx(注意修改IP地址和端口號)
修改成實際應(yīng)用中的用戶名/密碼,以及服務(wù)監(jiān)聽端口.在部署Client端的時候,要根據(jù)需要,配置上面的幾個屬性值.其中在設(shè)置ids.UserName和ids.Password字段的時候要進(jìn)行base64轉(zhuǎn)碼加密;在設(shè)置IdentityManager.Proxy字段的時候,設(shè)置的端口以及主機(jī)IP要和服務(wù)器端的一致.
3.2 Com客戶端部署
3.2.1 拷貝開發(fā)包
將“認(rèn)證接口ICEClientWin32COM”下所有的文件拷貝到客戶端應(yīng)用所在服務(wù)器中的某一個目錄下,目錄名稱要求為英文且全路徑無空格.修改組件所在文件夾下的client.properties文件,按照部署Java客戶端的方法修改其中的參數(shù).
3.2.2 注冊COM組件
運(yùn)行組件目錄下的Registe或者直接輸入命令regsvr32 idstar.dll進(jìn)行注冊.可以使用UnRegiste腳本進(jìn)行反注冊.COM對象接口的ProgID為Idstar.IdentityManager.當(dāng)COM組件應(yīng)用在IIS服務(wù)器上的asp或者asp.net的時候,如果重新啟動了Server端或者修改了Client端的配置,都要重新啟動IIS服務(wù)器.必須先修改client.properties再注冊組件,修改該文件后需要重新注冊.
3.3 PHP客戶端部署
3.3.1 拷貝開發(fā)包并注冊
PHP開發(fā)包與客戶端應(yīng)用的操作系統(tǒng)環(huán)境嚴(yán)格相關(guān),當(dāng)前提供的Linux和Solaris客戶端分別對應(yīng)不同的操作系統(tǒng)、PHP、gcc版本以及CPU類型,在部署前要慎重選擇客戶端.如果客戶環(huán)境與所有提供的客戶端的參考環(huán)境不同則必須進(jìn)行重新開發(fā).
3.3.2 安裝
把安裝包解開放在/opt/目錄下,目錄說明:
/opt/idstar/etc 配置文件目錄
/opt/idstar/lib 庫
/opt/idstar/include C 客戶端頭文件
/opt/idstar/doc php接口api說明
/opt/idstar/example php例程
拷貝client.properties到 c:下,并按照部署Java客戶端的方法修改其中的參數(shù).修改$(PHPHOME)/lib/php.ini,加入如下配置:
extension-dir=/opt/idatar/lib
extension=libIdstarPhp.so
3.3.3 啟動Apache
在啟動apache前需要設(shè)置庫的加載路徑,過程如下:
export LD_LIBRARY_PATH=/opt/idstar/lib
apachectl start
或者加入到系統(tǒng)的搜索路徑中去
編輯/etc/ld.so.conf,加入/opt/idstar/lib
3.4 認(rèn)證接口集成的代碼示例
文中僅以Java為例,介紹統(tǒng)一身份認(rèn)證的集成實施,具體參考以下代碼:
//獲取cookie
String loginURL=im.getLoginURL()+"?goto ="+java.net.URLEncoder.encode(gotoURL); //如果取到相應(yīng)的cookie值,則可驗證是否有效
SSOToken token=im.validateToken(decodedCookieValue);
//取得當(dāng)前用戶String curUser=im.getCurrentUser(decoded-CookieValue);
//注銷本次登錄
String gotoURL=HttpUtils.getRequestURL (request).toString();
String logoutURL=im.getLogoutURL()+"? goto="+java.net.URLEncoder.encode(gotoURL);
高校統(tǒng)一身份認(rèn)證集成系統(tǒng)將成為整體數(shù)字化校園建設(shè)的一個重要支撐平臺,不僅解決了用戶使用各個系統(tǒng)需要重復(fù)記住登錄用戶名和密碼的問題,而且還減輕了系統(tǒng)管理員的維護(hù)工作量,規(guī)范了校內(nèi)用戶的管理.文中就統(tǒng)一身份認(rèn)證平臺架構(gòu)及其集成方式展開了研究,根據(jù)統(tǒng)一身份認(rèn)證平臺的特點(diǎn),提出了基于LDAP校園統(tǒng)一身份認(rèn)證架構(gòu)方案;從認(rèn)證接口、LDAP認(rèn)證以及門戶偽認(rèn)證等幾方面,研究了統(tǒng)一身份認(rèn)證平臺集成體系;通過分析集成方式和集成原理,提出了統(tǒng)一身份認(rèn)證集成的實施方案,有效地實現(xiàn)了對校園網(wǎng)中用戶的統(tǒng)一身份管理、統(tǒng)一身份認(rèn)證.從實際的應(yīng)用來看,統(tǒng)一身份認(rèn)證平臺集成系統(tǒng)取得的預(yù)期效益更多體現(xiàn)在用戶使用各個信息系統(tǒng)的方便性方面,為內(nèi)部信息系統(tǒng)以及外部信息系統(tǒng)集成整合打下堅實的基礎(chǔ),使得各部門以及軟件系統(tǒng)操作更為方便、快捷,并且確保了系統(tǒng)的安全.所以,建設(shè)統(tǒng)一身份認(rèn)證平臺對高校整體數(shù)字化校園建設(shè)具有重要現(xiàn)實意義.
References)
[1] 張何燁,蘆冏耀.我國高校校園信息化建設(shè)的現(xiàn)狀研究[J].經(jīng)濟(jì)師,2014(12):202-203.
[2] 鄭海英,鄭雅良.我國高校信息化建設(shè)發(fā)展路徑探析[J].沈陽工業(yè)大學(xué)學(xué)報:社會科學(xué)版,2010,3 (2):175-178.Zheng Haiying,Zheng Yaliang.Analysis on developing approaches of information construction in Chinese colleges and universities[J].Journal of Shenyang U-niversity of Technology:Social Science Edition,2010,3 (2):175-178.(in Chinese)
[3] 馬麗君.對我國高校網(wǎng)絡(luò)教學(xué)平臺的現(xiàn)狀分析與思考[J].青海師范大學(xué)學(xué)報:自然科學(xué)版,2015(2): 23-26.MA Lijun.Analysis and thoughts on present situation of our university network teaching platform[J].Journal of Qinghai Normal University:Natural Science Edition,2015(2):23-26
[4] 孫甲泉.基于LDAP的CAS的校園統(tǒng)一身份認(rèn)證系統(tǒng)的研究[J].電腦知識與技術(shù),2013,9(6):1318 -1320.Sun Jiaquan.LDAP-based CAS campus unified authentication system research[J].Computer Knowledge and Technology,2013,9(6):1318-1320.(in Chinese)
[5] 蔣東興,王進(jìn)展,袁芳,等.數(shù)字校園校級統(tǒng)一信息系統(tǒng)建設(shè)研究與實踐[J].中山大學(xué)學(xué)報:自然科學(xué)版,2009,48(1):12-15.Jiang Dongxing,Wang Jinzhan,Yuan Fang,et al.Research and practice on the digital campus of university level unified information system[J].Acta Scientiarum Naturalium Universitatis Sunyatseni,2009,48 (1):12-15.(in Chinese)
[6] 周嚴(yán)英.基于LDAP的校園統(tǒng)一身份認(rèn)證系統(tǒng)[D].廣州:華南理工大學(xué)2014.
[7] 許柳威,田文雅.基于LDAP的統(tǒng)一身份認(rèn)證平臺的研究與應(yīng)用[J].中國教育信息化,2013(11):82-85.
[8] 李多,范欽志.高校數(shù)字化校園建設(shè)中的統(tǒng)一身份認(rèn)證研究[J].吉林師范大學(xué)學(xué)報:自然科學(xué)版,2012(3):154-156.Li Duo,F(xiàn)an Qinzhi.Discussion on the unified authentication of digital campus[J].Journal of Jilin Normal University:Natural Science Edition,2012(3):154-156.(in Chinese)
[9] 鄒春生.LDAP在企業(yè)統(tǒng)一認(rèn)證項目過程中的初步實踐[J].電子技術(shù)與軟件工程.2014(7):43.
[10]吳焱軍.云技術(shù)下的校園學(xué)習(xí)平臺設(shè)計與實現(xiàn)[D].長沙:湖南大學(xué)2014.
(責(zé)任編輯:童天添)
Integrated implementation scheme of college digital campus unified identity authentication based on LDAP
Huang Xiufang1,Wang Hai2
(1.President Office,Jiangsu University of Science and Technology,Zhenjiang Jiangsu 212003,China)
(2.Information Construction and Management Office,Nanjing University of Posts and Telecommunications,Nanjing Jiangsu 211100,China)
With the development of college information construction,the unified identity authentication platform plays a more and more important role with benefit of single sign in,security and efficiency in digital campus system.The unified identity authentication platform architecture and integration ways based on LDAP were studied.According to the characteristics of unified identity authentication platform,the architecture of unified identity authentication was proposed.The integration system of unified identity authentication platform was studied.The integration mode and integration theory were analyzed.The integrated implementation scheme of the campus unified identity authentication was put forward.Thus,it can realize the unified identity management and authentication of users on campus network.
information construction;single sign in;campus network; identity management
TP311
A
1673-4807(2015)06-0580-05
10.3969/j.issn.1673-4807.2015.06.013
2015-05-30
黃秀芳(1964—),女,副研究員,研究方向為行政辦公管理.E-mail:wqi003@126.com
黃秀芳,王海.基于LDAP的高校數(shù)字化校園統(tǒng)一身份認(rèn)證集成實施方案[J].江蘇科技大學(xué)學(xué)報(自然科學(xué)版),2015,29(6):580-584.