某軍工單位是我國(guó)規(guī)模最大、體系最完整、集軍民品生產(chǎn)科研為一體的特大型工業(yè)生產(chǎn)科研基地,目前已經(jīng)建設(shè)了多個(gè)業(yè)務(wù)系統(tǒng)為生產(chǎn)、科研任務(wù)服務(wù),形成了由大量的網(wǎng)絡(luò)設(shè)備、操作系統(tǒng)、數(shù)據(jù)庫系統(tǒng)、應(yīng)用系統(tǒng)構(gòu)成的信息系統(tǒng)運(yùn)行環(huán)境,業(yè)務(wù)部門在業(yè)務(wù)開展中對(duì)信息系統(tǒng)的依賴程度也日益增加,員工必須訪問多個(gè)系統(tǒng)以完成必要的日常工作,信息系統(tǒng)在提高業(yè)務(wù)處理效率的同時(shí),也為員工的使用帶來了一些不便之處。
二、項(xiàng)目需求
為了解決當(dāng)前業(yè)務(wù)系統(tǒng)使用上的實(shí)際問題,時(shí)代億信認(rèn)真分析公司系統(tǒng)現(xiàn)狀,提出了以下建設(shè)目標(biāo):
-
建立統(tǒng)一認(rèn)證平臺(tái),實(shí)現(xiàn)對(duì)業(yè)務(wù)系統(tǒng)的統(tǒng)一認(rèn)證、單點(diǎn)登錄和訪問控制。
-
統(tǒng)一認(rèn)證平臺(tái)分兩級(jí)部署,以便分別管理各自范圍內(nèi)的業(yè)務(wù)系統(tǒng),實(shí)現(xiàn)與業(yè)務(wù)系統(tǒng)的帳號(hào)信息同步。
-
統(tǒng)一認(rèn)證平臺(tái)實(shí)現(xiàn)管理員分級(jí)管理。
-
兩級(jí)統(tǒng)一認(rèn)證平臺(tái)之間實(shí)現(xiàn)信息同步,兩級(jí)應(yīng)用系統(tǒng)在任意一級(jí)平臺(tái)上都能進(jìn)行用戶認(rèn)證;
-
對(duì)C/S業(yè)務(wù)系統(tǒng)提供認(rèn)證、單點(diǎn)登錄接入;
-
實(shí)現(xiàn)用戶對(duì)業(yè)務(wù)系統(tǒng)的訪問控制。
三、項(xiàng)目建設(shè)效果
3.1整體體系結(jié)構(gòu)
體系組成說明:
總部統(tǒng)一認(rèn)證平臺(tái)
總部統(tǒng)一認(rèn)證平臺(tái)基于CA數(shù)字證書認(rèn)證的智能密鑰身份認(rèn)證方式,通過數(shù)字證書、數(shù)字簽名等機(jī)制充分保證認(rèn)證過程的安全性。平臺(tái)整合多個(gè)業(yè)務(wù)系統(tǒng),通過對(duì)用戶身份的統(tǒng)一認(rèn)證和訪問控制,實(shí)現(xiàn)各個(gè)業(yè)務(wù)系統(tǒng)的單點(diǎn)登錄。
總部統(tǒng)一認(rèn)證平臺(tái)負(fù)責(zé)集中簽發(fā)數(shù)字證書,作為用戶登錄認(rèn)證的唯一憑證。
下屬單位統(tǒng)一認(rèn)證平臺(tái)
下屬單位統(tǒng)一認(rèn)證平臺(tái)基于CA數(shù)字證書認(rèn)證的智能密鑰身份認(rèn)證方式,通過數(shù)字證書、數(shù)字簽名等機(jī)制充分保證認(rèn)證過程的安全性。平臺(tái)整合多個(gè)業(yè)務(wù)系統(tǒng),通過對(duì)用戶身份的統(tǒng)一認(rèn)證和訪問控制,實(shí)現(xiàn)各個(gè)業(yè)務(wù)系統(tǒng)的單點(diǎn)登錄。
下屬單位統(tǒng)一認(rèn)證平臺(tái)負(fù)責(zé)收集用戶證書申請(qǐng)信息,提交到總部統(tǒng)一認(rèn)證平臺(tái)進(jìn)行簽發(fā)。
3.2單點(diǎn)登錄
用戶在通過統(tǒng)一認(rèn)證平臺(tái)認(rèn)證后,可直接訪問已授權(quán)的各應(yīng)用系統(tǒng),實(shí)現(xiàn)不同應(yīng)用系統(tǒng)的身份認(rèn)證共享,從而達(dá)到多應(yīng)用系統(tǒng)的單點(diǎn)登錄。
公司現(xiàn)有的業(yè)務(wù)系統(tǒng)比較多,對(duì)業(yè)務(wù)系統(tǒng)的維護(hù)情況也各有差異,因此根據(jù)現(xiàn)有情況對(duì)進(jìn)行必要的改造。
在可以改造的業(yè)務(wù)系統(tǒng)使用插件方式的單點(diǎn)登錄。
不可以改造的業(yè)務(wù)系統(tǒng)使用反向代理方式的單點(diǎn)登錄。
插件方式
插件方式為緊耦合改造方式,采用集成插件的方式與統(tǒng)一認(rèn)證平臺(tái)的SSO認(rèn)證服務(wù)進(jìn)行交互驗(yàn)證用戶信息,完成應(yīng)用系統(tǒng)單點(diǎn)登錄。緊耦合方式提供多種API,通過簡(jiǎn)單調(diào)用即可實(shí)現(xiàn)SSO。
J2EE JAR包
ASP/.net COM組件
Domino DSAPI
對(duì)于有原廠商配合開發(fā)的應(yīng)用系統(tǒng),可以使用該方式高效地接入統(tǒng)一認(rèn)證平臺(tái)。
插件方式下通過平臺(tái)訪問應(yīng)用系統(tǒng)的流程如下:
(1)用戶在統(tǒng)一認(rèn)證平臺(tái)上點(diǎn)擊訪問的應(yīng)用系統(tǒng)URL鏈接;
(2)由統(tǒng)一認(rèn)證平臺(tái)驗(yàn)證用戶權(quán)限,有權(quán)限則在平臺(tái)數(shù)據(jù)庫中查詢用戶和應(yīng)用系統(tǒng)的關(guān)聯(lián)表,無權(quán)限則提示用戶無權(quán)訪問;
(3)如關(guān)聯(lián)表中無相應(yīng)記錄,則該用戶未授權(quán),不允許訪問;如關(guān)聯(lián)表中有相應(yīng)記錄,則平臺(tái)服務(wù)器提取用戶在該應(yīng)用系統(tǒng)中的身份信息,送至SSO服務(wù)加密簽名形成數(shù)字信封后,返還給統(tǒng)一認(rèn)證平臺(tái);
(4)由平臺(tái)將加密信息發(fā)送給相應(yīng)的應(yīng)用系統(tǒng);
(5)應(yīng)用系統(tǒng)調(diào)用SSO API,對(duì)加密信息進(jìn)行解密,得到用戶身份信息并返回給應(yīng)用系統(tǒng);
(6)應(yīng)用系統(tǒng)收到用戶身份信息后通過信任機(jī)制允許用戶訪問應(yīng)用系統(tǒng)。
反向代理方式
用戶先登錄進(jìn)入統(tǒng)一認(rèn)證平臺(tái),然后利用反向代理技術(shù),使得通過認(rèn)證后的用戶可以直接訪問進(jìn)入有權(quán)限的業(yè)務(wù)系統(tǒng)。
這種方式下業(yè)務(wù)系統(tǒng)基本不需改動(dòng)和開發(fā),對(duì)于不能作改動(dòng)或沒有原廠商配合的業(yè)務(wù)系統(tǒng),可以使用該方式接入統(tǒng)一認(rèn)證平臺(tái)。實(shí)現(xiàn)上,采用SSO服務(wù)和SSOAgent進(jìn)行交互驗(yàn)證用戶信息,完成業(yè)務(wù)系統(tǒng)單點(diǎn)登錄。
反向代理登錄方式下通過統(tǒng)一認(rèn)證平臺(tái)訪問業(yè)務(wù)系統(tǒng)的流程如下:
(1)用戶在統(tǒng)一認(rèn)證平臺(tái)提供的用戶頁面上點(diǎn)擊訪問的業(yè)務(wù)系統(tǒng)URL鏈接;
(2)由統(tǒng)一認(rèn)證平臺(tái)驗(yàn)證用戶權(quán)限,有權(quán)限則在統(tǒng)一認(rèn)證平臺(tái)數(shù)據(jù)庫中查詢用戶和業(yè)務(wù)系統(tǒng)的關(guān)聯(lián)表,無權(quán)限則提示用戶無權(quán)訪問;
(3)如關(guān)聯(lián)表中無相應(yīng)記錄,則瀏覽器彈出建立關(guān)聯(lián)的頁面;如關(guān)聯(lián)表中有相應(yīng)記錄,則平臺(tái)服務(wù)器提取用戶和業(yè)務(wù)系統(tǒng)的關(guān)聯(lián)信息,送至SSO服務(wù)加密簽名形成數(shù)字信封后,返還給平臺(tái);
(4)由統(tǒng)一認(rèn)證平臺(tái)將加密信息發(fā)送給業(yè)務(wù)系統(tǒng)前端的SSO Agent;
(5)SSO Agent收到加密信息后進(jìn)行解密,并向業(yè)務(wù)系統(tǒng)提交用戶關(guān)聯(lián)信息;
(6)業(yè)務(wù)系統(tǒng)收到用戶關(guān)聯(lián)信息后進(jìn)行驗(yàn)證,驗(yàn)證成功則允許用戶訪問應(yīng)用,失敗則提示用戶更新關(guān)聯(lián)信息。
3.3 帳號(hào)集中管理
公司統(tǒng)一認(rèn)證平臺(tái)中的用戶帳號(hào)信息統(tǒng)一管理組件基于關(guān)系型數(shù)據(jù)庫,用于存儲(chǔ)用戶的帳號(hào)信息,并實(shí)現(xiàn)對(duì)接入平臺(tái)的所有應(yīng)用系統(tǒng)均可以同步帳號(hào)信息,節(jié)省了用戶投入,實(shí)現(xiàn)了資源利用最大化。
帳號(hào)集中管理
統(tǒng)一認(rèn)證平臺(tái)內(nèi)置應(yīng)用帳號(hào)管理組件,提供了對(duì)多個(gè)業(yè)務(wù)系統(tǒng)的用戶帳號(hào)信息集中管理,并與企業(yè)現(xiàn)有AD系統(tǒng)無縫結(jié)合,滿足多種類型的連接和互操作標(biāo)準(zhǔn)。
帳號(hào)管理實(shí)現(xiàn)的功能如下:
(1)管理員可在一點(diǎn)操作,實(shí)現(xiàn)對(duì)各業(yè)務(wù)系統(tǒng)帳號(hào)的注冊(cè)、變更和注銷管理;
。2)保證用戶帳號(hào)唯一性,實(shí)現(xiàn)操作可追溯,可定責(zé);
。3)集成AD帳號(hào)信息;
(4)提供兩級(jí)信息自動(dòng)同步功能,可實(shí)現(xiàn)用戶信息的分級(jí)管理。
帳號(hào)同步
統(tǒng)一認(rèn)證平臺(tái)的帳號(hào)管理功能通過標(biāo)準(zhǔn)的Web Service接口,向各個(gè)業(yè)務(wù)系統(tǒng)自動(dòng)同步帳號(hào)信息。
3.4 統(tǒng)一授權(quán)
統(tǒng)一認(rèn)證平臺(tái)通過統(tǒng)一授權(quán)功能,可對(duì)用戶組與業(yè)務(wù)系統(tǒng)或資源的關(guān)聯(lián)關(guān)系,角色與應(yīng)用系統(tǒng)或資源的關(guān)聯(lián)關(guān)系進(jìn)行創(chuàng)建和維護(hù),以此來完成用戶對(duì)應(yīng)用系統(tǒng)與資源訪問的授權(quán)。
公司根據(jù)系統(tǒng)現(xiàn)狀選擇了實(shí)體級(jí)授權(quán)方式。
實(shí)體級(jí)授權(quán)主要指用戶可以訪問哪些資源(包括系統(tǒng)和應(yīng)用)的授權(quán)。
業(yè)務(wù)系統(tǒng)的實(shí)體級(jí)授權(quán)主要通過統(tǒng)一用戶管理、統(tǒng)一認(rèn)證、統(tǒng)一授權(quán)功能的相互配合完成:
。1)根據(jù)用戶的權(quán)限策略制定相應(yīng)的ACL(訪問控制列表);
。2)將制定的ACL通過附屬到組中形成一定顆粒度的授權(quán)單元;
。3)當(dāng)一個(gè)用戶進(jìn)行實(shí)體級(jí)授權(quán)時(shí),可以通過在統(tǒng)一用戶管理功能中分配權(quán)限組的方式對(duì)用戶進(jìn)行授權(quán)。
四、經(jīng)驗(yàn)總結(jié)
“軍工單位統(tǒng)一認(rèn)證工程”的成功經(jīng)驗(yàn)總結(jié)如下:
1.采用時(shí)代億信UAP統(tǒng)一認(rèn)證與訪問控制系統(tǒng)產(chǎn)品,擁有良好的產(chǎn)品成熟度,豐富的標(biāo)準(zhǔn)接口,可快速實(shí)施上線并滿足多種開發(fā)語言、多種類型的業(yè)務(wù)系統(tǒng)接入需求。
2.采用分級(jí)部署、分級(jí)管理模式,實(shí)現(xiàn)與業(yè)務(wù)系統(tǒng)現(xiàn)狀的無縫對(duì)接。
3.內(nèi)置CA系統(tǒng),與用戶管理功能直接集成,添加用戶自動(dòng)簽發(fā)證書,提高了管理員工作效率,減少了維護(hù)工作量。
4.單點(diǎn)登錄接入方式完善,對(duì)公司已有的C/S架構(gòu)業(yè)務(wù)系統(tǒng)提供了良好支撐,可以在業(yè)務(wù)系統(tǒng)不做改動(dòng)或少量改動(dòng)情況下,實(shí)現(xiàn)單點(diǎn)登錄與訪問控制。
5.時(shí)代億信UAP統(tǒng)一認(rèn)證與訪問控制系統(tǒng)產(chǎn)品經(jīng)過國(guó)家保密局檢測(cè),具備管理員三員分立、智能卡PIN碼安全策略、管理平臺(tái)安全防護(hù)等安全保護(hù)措施,并在源代碼層面進(jìn)行了安全加固與抗反向工程,有效保證了企業(yè)網(wǎng)絡(luò)的使用安全。