基于4A技術(shù)的統(tǒng)一身份管理在企業(yè)門(mén)戶系統(tǒng)中的應(yīng)用
?摘 要: 通過(guò)對(duì)企業(yè)門(mén)戶、4A(帳號(hào)、認(rèn)證、授權(quán)、審計(jì))在功能和原理方面的闡述,介紹了以4A技術(shù)為基礎(chǔ)的統(tǒng)一身份管理在企業(yè)門(mén)戶系統(tǒng)中的實(shí)現(xiàn)方法及所起的重要作用,最后對(duì)目前兩種技術(shù)融合的優(yōu)缺點(diǎn)進(jìn)行了比較和總結(jié)。
關(guān)鍵詞: 4A;企業(yè)門(mén)戶;統(tǒng)一身份管理
??? 經(jīng)過(guò)多年來(lái)的信息技術(shù)建設(shè),各企業(yè)單位IT自動(dòng)化程度有了很大提高,已經(jīng)建成了或者正在建設(shè)著多種應(yīng)用系統(tǒng)。隨著業(yè)務(wù)的增長(zhǎng),市場(chǎng)競(jìng)爭(zhēng)的加劇,如何將各個(gè)業(yè)務(wù)系統(tǒng)相對(duì)獨(dú)立的用戶管理和分散的應(yīng)用系統(tǒng)內(nèi)容整合于同一頁(yè)面管理下,以及提高低效的新業(yè)務(wù)系統(tǒng)接入能力,就成為IT部門(mén)急需解決的問(wèn)題。
??? 企業(yè)門(mén)戶是企業(yè)信息化前進(jìn)的必然戰(zhàn)略性方向,據(jù)美林公司的調(diào)查顯示,企業(yè)對(duì)門(mén)戶的需求正日益增長(zhǎng),在接受調(diào)查的50家全球百?gòu)?qiáng)企業(yè)CIO中,有32%的人反映在開(kāi)支優(yōu)先權(quán)方面,2008年已讓位于企業(yè)門(mén)戶。Gartner發(fā)布的數(shù)據(jù)顯示,2008年門(mén)戶軟件市場(chǎng)增長(zhǎng)了59%,相比之下,同期企業(yè)軟件投資的增長(zhǎng)幅度僅為4.3%。Meta Group統(tǒng)計(jì),2008年把門(mén)戶作為核心系統(tǒng)的公司將從2007年的不足10%增加到35%左右。
??? 概括地說(shuō),企業(yè)門(mén)戶就是通過(guò)一個(gè)唯一入口,為企業(yè)員工、分銷(xiāo)商、代理商、供應(yīng)商、合作伙伴等同一價(jià)值鏈上的相關(guān)人員提供個(gè)性化的信息、知識(shí)、服務(wù)與應(yīng)用。它是一種基于Web的,將不同應(yīng)用、業(yè)務(wù)過(guò)程、后端系統(tǒng)、服務(wù)和信息、知識(shí)等內(nèi)容集成到一個(gè)個(gè)性化窗口中的功能強(qiáng)大的軟件系統(tǒng)平臺(tái)[1]。
連接多種應(yīng)用系統(tǒng)為不同角色的用戶提供快捷服務(wù)的門(mén)戶系統(tǒng),其核心的基礎(chǔ)就是用戶身份的管控,包括用戶身份管理、角色和權(quán)限管理、網(wǎng)絡(luò)行為管控、統(tǒng)一用戶信息管理這幾個(gè)部分,即通常所說(shuō)的4A:統(tǒng)一用戶帳號(hào)(Account)管理、統(tǒng)一認(rèn)證(Authentication)管理、統(tǒng)一授權(quán)(Authorization)管理和統(tǒng)一安全審計(jì)(Audit)四要素。
1 企業(yè)安全門(mén)戶系統(tǒng)設(shè)計(jì)
企業(yè)安全門(mén)戶系統(tǒng)的設(shè)計(jì)包含3個(gè)重要的步驟,即明確技術(shù)原理、定義功能和設(shè)定體系架構(gòu)。
1.1? 技術(shù)原理
門(mén)戶技術(shù)原理結(jié)構(gòu)圖如圖1所示。門(mén)戶服務(wù)主要用來(lái)提供來(lái)自Web應(yīng)用的內(nèi)容,它允許用戶可以在瀏覽器中查看一張或一套頁(yè)面中顯示的多種信息來(lái)源(通常是Web應(yīng)用)。包含內(nèi)容的頁(yè)面被稱作桌面,在桌面的各個(gè)區(qū)域出現(xiàn)的各種內(nèi)容來(lái)源被稱作頻道[2]。
?
在門(mén)戶中,一個(gè)被稱作提供者的部件負(fù)責(zé)將文件中的內(nèi)容或Web應(yīng)用的輸出,轉(zhuǎn)換成一種適合頻道的格式。可以用內(nèi)容提供者API為門(mén)戶開(kāi)發(fā)內(nèi)容提供者,并且門(mén)戶內(nèi)應(yīng)帶有多種預(yù)置的專門(mén)提供者,向客戶端設(shè)備提供內(nèi)容的標(biāo)記語(yǔ)言是超文本標(biāo)記語(yǔ)言(HTML)、用于移動(dòng)電話和PDA的HTML (cHTML)、無(wú)線標(biāo)記語(yǔ)言(WML)或可擴(kuò)展標(biāo)記語(yǔ)言(XML)等語(yǔ)言中的一種或多種。身份認(rèn)證、授權(quán)、用戶管理以及用戶配置文件信息的存儲(chǔ),都是通過(guò)標(biāo)識(shí)和策略API來(lái)完成的。這些API一般都實(shí)現(xiàn)于目錄服務(wù)之上[2]。
門(mén)戶聚合來(lái)自不同數(shù)據(jù)源的信息,這些來(lái)源可以是從企業(yè)內(nèi)外或從垂直或?qū)I(yè)門(mén)戶聚合而來(lái)的,提供頁(yè)面布局和創(chuàng)建可定制的圖形化用戶界面(GUI)所需的元素。負(fù)責(zé)為聚合轉(zhuǎn)換和提供內(nèi)容的組件被稱作提供者。
1.2? 定義功能
對(duì)于產(chǎn)生于各種來(lái)源的信息,門(mén)戶提供一個(gè)訪問(wèn)點(diǎn),為最終用戶和他們使用的Web應(yīng)用及服務(wù)帶來(lái)了多種功能,這些功能包括聚合、展現(xiàn)、自定義和安全。
門(mén)戶必須讓企業(yè)內(nèi)外的最終用戶和應(yīng)用都能進(jìn)行安全訪問(wèn)。為了實(shí)現(xiàn)這個(gè)目標(biāo),它必須帶來(lái)支持企業(yè)現(xiàn)有身份認(rèn)證機(jī)制的靈活性,提供單點(diǎn)登錄功能并且利用標(biāo)識(shí)和策略組件,為其所有用戶和應(yīng)用提供單點(diǎn)登錄、身份認(rèn)證、授權(quán)、訪問(wèn)控制和會(huì)話管理。
此外,門(mén)戶應(yīng)提供以下可選功能:
(1)提供虛擬專用網(wǎng)(VPN)解決方案,以便在設(shè)備中除了Web瀏覽器外,不再需要裝有任何專用客戶端軟件用戶下訪問(wèn)企業(yè)內(nèi)部網(wǎng)資源。
(2)帶有一個(gè)重寫(xiě)HTML文檔的反向代理,從而允許在不將企業(yè)內(nèi)部網(wǎng)Web站點(diǎn)直接暴露給因特網(wǎng)的情況下,對(duì)所有這些站點(diǎn)進(jìn)行訪問(wèn)。
1.3? 體系架構(gòu)
一般來(lái)說(shuō),企業(yè)門(mén)戶主要分為3層,即Web服務(wù)平臺(tái)、統(tǒng)一認(rèn)證平臺(tái)和聚集展現(xiàn)平臺(tái)其體系架構(gòu)圖如圖2所示。
企業(yè)門(mén)戶的Web服務(wù)平臺(tái)是上層服務(wù)的容器,提供基于Web服務(wù)的容器和上層應(yīng)用與模塊的運(yùn)行環(huán)境。
統(tǒng)一認(rèn)證平臺(tái)通過(guò)4A技術(shù)實(shí)現(xiàn)為用戶提供跨系統(tǒng)訪問(wèn)的單一認(rèn)證服務(wù)和管理功能。統(tǒng)一認(rèn)證平臺(tái)在系統(tǒng)設(shè)計(jì)中,與企業(yè)門(mén)戶系統(tǒng)展現(xiàn)層的業(yè)務(wù)邏輯相對(duì)獨(dú)立,其目的是為企業(yè)建立起完整的單點(diǎn)登錄支撐平臺(tái)。將用戶認(rèn)證功能與企業(yè)門(mén)戶系統(tǒng)展現(xiàn)平臺(tái)相分離,是充分考慮用戶的使用習(xí)慣以及未來(lái)的系統(tǒng)擴(kuò)展。用戶在訪問(wèn)企業(yè)應(yīng)用系統(tǒng)時(shí),可以首先通過(guò)企業(yè)門(mén)戶系統(tǒng)的認(rèn)證授權(quán)功能,獲取訪問(wèn)其他應(yīng)用系統(tǒng)的權(quán)限,實(shí)現(xiàn)單點(diǎn)登錄; 同時(shí),用戶也可以通過(guò)直接訪問(wèn)特定應(yīng)用系統(tǒng),由統(tǒng)一認(rèn)證平臺(tái)對(duì)用戶進(jìn)行認(rèn)證,授予用戶跨系統(tǒng)訪問(wèn)的權(quán)限。
聚集展現(xiàn)平臺(tái)主要處理用戶訪問(wèn)企業(yè)門(mén)戶系統(tǒng)的訪問(wèn)安全控制管理、策略管理及內(nèi)容、應(yīng)用聚集的功能,通常含有應(yīng)用聚集、桌面展現(xiàn)和內(nèi)容搜索三大功能。同時(shí),企業(yè)門(mén)戶系統(tǒng)展示層將負(fù)責(zé)支撐用戶使用不同訪問(wèn)設(shè)備的內(nèi)容格式提交,通過(guò)企業(yè)門(mén)戶系統(tǒng)的渠道功能,將企業(yè)內(nèi)部信息資源個(gè)極具性化地呈現(xiàn)給訪問(wèn)用戶。
2?4A原理和統(tǒng)一身份管理
門(mén)戶系統(tǒng)中的4A技術(shù),為整個(gè)系統(tǒng)的安全性提供了完善的平臺(tái)保障。
最初的4A技術(shù)核心是單點(diǎn)登錄(Single Sign-On),隨著各企業(yè)不斷開(kāi)展電子商務(wù)和將內(nèi)部資源不同程度地向客戶、合作伙伴及員工開(kāi)放,對(duì)于企業(yè)至關(guān)重要的信息財(cái)產(chǎn)安全越發(fā)顯得重視,尤其是在信息訪問(wèn)越發(fā)便捷的背景下,這些資產(chǎn)也暴露在越來(lái)越多的威脅中。毫無(wú)疑問(wèn),信息保護(hù)的私密性、完整性、真實(shí)性和可靠性的需求日益突出,系統(tǒng)和安全管理人員需要對(duì)企業(yè)內(nèi)部的用戶和各種資源進(jìn)行集中管理、集中權(quán)限分配、集中審計(jì),從技術(shù)上保證支撐系統(tǒng)安全策略的實(shí)施,即,構(gòu)建信息級(jí)的企業(yè)安全必須解決用戶的帳號(hào)(Account)管理、認(rèn)證(Authentication)管理、授權(quán)(Authorization)管理和安全審計(jì)(Audit)方面的問(wèn)題,即4A解決方案[3]。
帳號(hào)管理即是將自然人與其擁有的所有系統(tǒng)帳號(hào)的關(guān)聯(lián)進(jìn)行集中管理,包括按照密碼策略自動(dòng)更改密碼、4不同系統(tǒng)間的帳號(hào)同步等。一般帳號(hào)管理的實(shí)體部件通常采用目錄服務(wù)器,基于“屬性:值”對(duì)和層級(jí)樹(shù)狀邏輯組織的用戶帳號(hào)數(shù)據(jù),更加適合輕量目錄訪問(wèn)協(xié)議(LDAP)的處理。
認(rèn)證管理用以實(shí)現(xiàn)支撐系統(tǒng)對(duì)操作者身份的合法性檢查。對(duì)信息系統(tǒng)中的各種服務(wù)和應(yīng)用來(lái)說(shuō),身份認(rèn)證是一個(gè)基本的安全考慮,只有通過(guò)系統(tǒng)預(yù)設(shè)規(guī)則的身份認(rèn)證,才能夠接觸系統(tǒng)功能和應(yīng)用系統(tǒng)的數(shù)據(jù)。
授權(quán)管理是指對(duì)用戶使用支撐系統(tǒng)資源的具體情況進(jìn)行合理分配的技術(shù),實(shí)現(xiàn)不同用戶對(duì)系統(tǒng)不同部分資源的訪問(wèn)按安全和數(shù)據(jù)敏感級(jí)別定義系統(tǒng)內(nèi)部資源的訪問(wèn)權(quán)限。
審計(jì)管理是指收集、記錄用戶對(duì)支撐系統(tǒng)資源的使用情況,以便于統(tǒng)計(jì)用戶對(duì)網(wǎng)絡(luò)資源的訪問(wèn)情況,并且在出現(xiàn)安全事故時(shí),可以追蹤原因,追究相關(guān)人員的責(zé)任,以減少由于內(nèi)部計(jì)算機(jī)用戶濫用網(wǎng)絡(luò)資源造成的安全危害。
3? 企業(yè)門(mén)戶系統(tǒng)中的統(tǒng)一身份管理應(yīng)用
下面以基于J2EE體系的門(mén)戶和統(tǒng)一身份管理服務(wù)為例加以說(shuō)明。
統(tǒng)一身份管理流程如圖3所示,統(tǒng)一身份管理平臺(tái)與企業(yè)門(mén)戶服務(wù)緊密集成,提供統(tǒng)一認(rèn)證、統(tǒng)一授權(quán)、訪問(wèn)控制、單點(diǎn)登錄和行為審計(jì)5大功能,完成訪問(wèn)者與門(mén)戶之間的登錄和資源列表返回、信息資源訪問(wèn)請(qǐng)求和用戶身份傳遞等前后臺(tái)的身份識(shí)別和信息訪問(wèn)過(guò)程。統(tǒng)一身份管理平臺(tái)一般包含訪問(wèn)管理器和身份管理器兩個(gè)邏輯部分。
?
?
(1) 訪問(wèn)管理器和身份管理器
訪問(wèn)管理器為門(mén)戶服務(wù)提供了針對(duì)Web服務(wù)器、J2EE應(yīng)用服務(wù)器、Web代理服務(wù)器以及典型企業(yè)應(yīng)用的多個(gè)策略代理 (Policy Agent) ;另外,它還提供了訪問(wèn)管理器 SDK,用以集成企業(yè)的Java或C/C++應(yīng)用,實(shí)現(xiàn)集中認(rèn)證、授權(quán)和單點(diǎn)登錄[4]。
用戶管理與信息同步系統(tǒng)由身份管理器實(shí)現(xiàn),對(duì)各應(yīng)用或子網(wǎng)絡(luò)系統(tǒng)用戶帳號(hào)的集中管理,包括用戶帳號(hào)在其相對(duì)應(yīng)的應(yīng)用系統(tǒng)里的自動(dòng)創(chuàng)建及創(chuàng)建的規(guī)則,帳號(hào)生成的審批流程管理,帳號(hào)的禁用和銷(xiāo)毀,帳號(hào)在各個(gè)應(yīng)用系統(tǒng)之間的對(duì)應(yīng)關(guān)系及同步,口令的管理,提供統(tǒng)一的管理界面和分級(jí)授權(quán)管理,帳號(hào)的審計(jì)和風(fēng)險(xiǎn)分析等。身份管理器也是一個(gè)標(biāo)準(zhǔn)的J2EE應(yīng)用系統(tǒng),它通過(guò)部署于其本身服務(wù)器端(而不是要管理的應(yīng)用系統(tǒng)一端)的資源適配器創(chuàng)建和管理在各個(gè)應(yīng)用系統(tǒng)上的用戶帳號(hào)。
(2) 統(tǒng)一認(rèn)證
訪問(wèn)管理器提供了公共的認(rèn)證服務(wù)架構(gòu),具有靈活的認(rèn)證方式和多種認(rèn)證服務(wù)接口。因此,基于統(tǒng)一的認(rèn)證服務(wù)的應(yīng)用系統(tǒng)間可以實(shí)現(xiàn)單點(diǎn)登錄。
訪問(wèn)管理器提供的認(rèn)證服務(wù)基于JAAS(Java認(rèn)證與授權(quán)服務(wù))框架,提供Java和XML/HTTP兩種應(yīng)用認(rèn)證接口。
(3) 認(rèn)證方式定制化接口
不同的認(rèn)證方式具有不同的安全性、易用性和部署成本。因此,針對(duì)企業(yè)門(mén)戶中不同的用戶群與不同的應(yīng)用范圍,需要對(duì)認(rèn)證方式進(jìn)行定制化。在訪問(wèn)管理器中,可以根據(jù)角色、用戶、服務(wù)指定不同的認(rèn)證方式,也可以在認(rèn)證時(shí)直接指定認(rèn)證模塊。對(duì)于不同組織、角色和服務(wù),可以配置個(gè)性化的認(rèn)證選項(xiàng)。
訪問(wèn)管理器為應(yīng)用程序提供兩種類型的認(rèn)證編程接口。對(duì)基于Java的應(yīng)用系統(tǒng)(包括基于JSP的WEB應(yīng)用系統(tǒng)和基于Java的應(yīng)用程序)可以使用Java編程接口;對(duì)于非Java的應(yīng)用系統(tǒng),可以使用XML/HTTP編程接口或C/C++編程接口。
(4) 單點(diǎn)登錄支持
單點(diǎn)登錄的根本原理是保持用戶的會(huì)話(session)狀態(tài)。訪問(wèn)管理器對(duì)單點(diǎn)登錄提供的SDK級(jí)別的支持,其中包括單點(diǎn)登錄令牌的創(chuàng)建與驗(yàn)證。以Web應(yīng)用的單點(diǎn)登錄為例:用戶通過(guò)訪問(wèn)管理器的認(rèn)證頁(yè)面進(jìn)行認(rèn)證,認(rèn)證通過(guò)之后,平臺(tái)為該用戶創(chuàng)建一個(gè)單點(diǎn)登錄令牌,并將該令牌的ID通過(guò)cookie返回至用戶瀏覽器;當(dāng)用戶訪問(wèn)Web應(yīng)用系統(tǒng)時(shí),單點(diǎn)登錄令牌ID自動(dòng)通過(guò)cookie傳遞至Web應(yīng)用系統(tǒng),Web應(yīng)用系統(tǒng)可以通過(guò)單點(diǎn)登錄令牌ID還原單點(diǎn)登錄令牌,并向Access Manager驗(yàn)證單點(diǎn)登錄令牌是否有效。如果有效,則應(yīng)用系統(tǒng)可以從單點(diǎn)登錄令牌獲取用戶身份信息,而不再需要用戶進(jìn)行再次認(rèn)證。對(duì)于C/S結(jié)構(gòu)的應(yīng)用,單點(diǎn)登錄過(guò)程類似,只是單點(diǎn)登錄令牌ID的傳遞方式不同。
綜上,基于4A技術(shù)的統(tǒng)一身份管理為企業(yè)門(mén)戶服務(wù)帶來(lái)較為全面的安全保障,從人員、訪問(wèn)、授權(quán)和審計(jì)等角度保護(hù)企業(yè)內(nèi)部應(yīng)用的數(shù)據(jù)的合法使用,具有如下優(yōu)點(diǎn):
(1)統(tǒng)一認(rèn)證、授權(quán)和審計(jì),管理維護(hù)工作復(fù)雜度大幅度降低,減少維護(hù)操作帶來(lái)的故障隱患;
(2)統(tǒng)一監(jiān)管,企業(yè)系統(tǒng)安全狀況隨時(shí)被自動(dòng)監(jiān)管;
(3)免去用戶在各系統(tǒng)間切換時(shí)需要再次輸入用戶名和口令的繁瑣操作,減少帳號(hào)密碼泄露機(jī)會(huì);
(4)對(duì)各個(gè)系統(tǒng)進(jìn)行統(tǒng)一的訪問(wèn)審計(jì),利于綜合分析,及時(shí)發(fā)現(xiàn)入侵行為。
但從技術(shù)實(shí)現(xiàn)方式和用戶使用效果上看,基于4A的統(tǒng)一身份管理也存在著一定的不足,具體表現(xiàn)為:
(1)技術(shù)實(shí)現(xiàn)方式限制較多,例如基于策略代理的SSO,對(duì)門(mén)戶系統(tǒng)產(chǎn)品提出固定要求,對(duì)特定產(chǎn)品的版本、未提供開(kāi)放接口的系統(tǒng)缺乏靈活的處理方法;
(2)合規(guī)審計(jì)能力一般不強(qiáng),多數(shù)產(chǎn)品只提供以日志為主的審計(jì)能力,以及基于日志的數(shù)據(jù)傳輸接口由第三方模塊完成審計(jì)報(bào)告。
相信,隨著企業(yè)門(mén)戶對(duì)安全管控需求的不斷細(xì)化,隨著各廠家產(chǎn)品和技術(shù)的發(fā)展,4A技術(shù)對(duì)企業(yè)門(mén)戶安全的貢獻(xiàn)將越來(lái)越突出。
評(píng)論