王瑤 何淳真 康瑩 燕昊 王瑞
[摘 要] 隨著信息化的快速發展,企業信息系統不斷增多,用戶訪問各應用系統需要分別記憶多個系統的用戶名及口令,多次登錄,影響工作效率。為了實現一鍵登錄,整網漫游,首先需要規范用戶管理。在唯一數據源中,對用戶信息的注冊、分發、授權、變更、注銷等動作進行全生命周期的統一管理,并及時同步至各信息系統中,保證各應用系統中用戶數據的一致性和同步性。然后通過統一用戶身份管理和單點登錄技術,為企業各應用系統提供統一入口,避免多次驗證。最后介紹了企業實施單點登錄時的兩種接入方式,以及單點登錄集成業務的統一規范,強調了企業實施統一身份認證時的注意事項。這種解決方案幫助企業簡化應用系統用戶創建及變更的流程,確保各應用系統中用戶數據的一致性與完整性,同時實現用戶各應用系統間的單點切換。
[關鍵詞] 統一用戶管理;統一身份認證;單點登錄技術;系統集成
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2019. 01. 082
[中圖分類號] TP315 [文獻標識碼] A [文章編號] 1673 - 0194(2019)01- 0193- 04
0 引 言
隨著企業信息化的飛速發展,企業信息系統規模日趨龐大,部分企業建設了門戶平臺、產品數據管理系統、企業資源管理系統、質量信息管理系統、項目管理系統等信息化應用系統,應用面覆蓋了設計、生產、經營、管理等各方面的業務領域,信息化建設也從單一建設逐步過渡發展到集成整合階段。企業用戶的工作領域較廣泛,平均每個用戶都會經常使用2-3種不同的信息系統。而用戶在門戶平臺和各業務系統間訪問,需要多次認證登錄不同業務系統,用戶感知度差[1]。而且每個信息系統擁有一套屬于自己的用戶數據,彼此間沒有集成交互,需要各信息系統的系統管理員手工創建用戶信息,浪費大量人力和時間,數據更新不及時,且無法保證各信息系統用戶數據的完整性和同一性。目前迫切需要在企業門戶平臺和各業務系統之間進行統一身份認證,實現用戶的單點登錄。所謂單點登錄,就是用戶驗證身份后登錄企業門戶,當其再訪問其他信息系統時,不需要再次進行身份認證就可以直接進入其他信息系統,甚至讓用戶感受不到系統間的切換[2]。首先建立統一的用戶身份管理體系,將各個業務系統的賬號進行重新規劃,建立統一標準,以實現各業務系統單點登錄和統一認證。即在企業內部實行統一用戶身份管理,即建立用戶管理規范,確認用戶信息的權威數據源,對權威數據源用戶信息的創建、授權、分發、變更、停用進行全生命周期管理。然后建立同步機制,將用戶信息同步至統一用戶身份管理系統和其他應用系統,保證人員基礎數據的及時性、一致性和唯一性。然后在此基礎上,利用單點登錄技術建立企業的統一身份認證體系,根據信息系統的集成特點,選擇基于Cookie的單點登錄認證方式或基于Header的單點登錄認證方式,統一集成各類資源和應用系統,避免多次認證,實現一鍵登錄,全網遍歷。
1 統一用戶身份管理
1.1 規范用戶數據源
實施統一身份認證前,企業的用戶數據可能存在于各個應用系統中,每一個應用系統都有一套自己的用戶數據,沒有統一的數據源,用戶數據也不盡相同,例如A系統中用戶登錄賬號為拼音,而B系統中用戶卻是使用工號編碼登錄,而且用戶信息新增或變更的實時性和同步性都很難保證。因此需要規范管理各應用系統的用戶數據,實施統一用戶管理。
將企業中人力資源管理系統或其他管理人員數據的系統作為用戶數據的權威數據源,當人員信息出現新增或變更時,統一用戶身份管理系統獲取用戶創建或修改事件,定期掃描新變更的用戶記錄。統一用戶身份管理系統將這些事件同步給每個連接的應用系統中,各系統根據規則修改相應信息。要求各系統不能私自創建賬號或對用戶基礎信息做出任何修改,保持與權威數據源的數據一致。因此利用統一用戶身份管理能夠統一管理企業內用戶和組織機構的基本信息,并自動地為所有和統一用戶身份管理系統集成的應用系統進行用戶賬號創建、變更、注銷等工作。
1.2 用戶生命周期管理
如圖1所示,一個完整的用戶身份生命周期管理包含以下幾個階段:
(a)用戶注冊:在權威數據源系統(例如人力資源管理系統)中對用戶進行注冊,確定用戶要注冊的部門、崗位分配等信息,并在權威數據系統中建立用戶賬戶。
(b)通過接口將用戶信息同步至統一用戶身份庫,統一用戶身份管理系統通過對身份庫的監控,根據規則同步至統一用戶身份管理系統。
(c)賬戶分發、審批和授權:系統管理員在統一用戶身份管理系統中對新增的用戶進行審批和授權,分配賬戶在其他應用系統的使用權限并將賬戶同步至相關的應用系統中。
(d)變更:當用戶的分配部門或崗位、密級等其他信息發生變化后,系統管理員在權威數據源中對用戶信息進行修改和更新,然后通過(b)、(c)兩個步驟將用戶信息同步至統一用戶身份庫,然后由統一用戶身份管理系統統一更新并同步該用戶關聯的其他信息系統中的賬戶信息。
(e)密碼管理:由統一用戶身份管理系統統一接管用戶在其他應用系統中的賬戶和密碼信息,密碼策略按照企業保密規定統一執行。采用統一密碼的方式,即企業門戶密碼與其他應用系統密碼保持一致,在企業門戶中集成用戶的密碼管理模塊,用戶將企業門戶密碼更改后,接口會把新密碼同步到各應用系統中。
(f)銷戶:當用戶離職以后,首先由系統管理員在權威數據源停用或注銷用戶賬戶,然后把用戶狀態同步到統一用戶身份庫,再將用戶狀態推送至與該用戶關聯的應用系統中,完成企業門戶和各應用系統的統一注銷用戶賬戶工作。
如圖2所示,實現統一用戶身份管理系統與其他應用系統、其他目錄之間的同步服務,將權威數據源中的用戶信息同步至身份目錄,再將用戶信息同步至企業資源目錄、認證目錄和各應用系統,從而實現各應用系統用戶賬號的自動創建、變更和注銷,從而代替現有的人工管理賬號的工作模式。同時,統一用戶身份管理系統能將關鍵事件等日志信息存儲在數據庫中,供審計使用。
此外,目錄服務中還可以構建項目組概念,根據企業內部需要,如果企業還沒有建設項目管理系統,可以在目錄中初始化各個項目組,目錄服務能夠將該項目組的組織機構、項目組成員同步到PDM等協同設計系統中,當項目組撤銷、項目組成員變更,項目成員角色變更,都將從目錄中自動同步到業務系統中。將來,對于企業內部項目,只需要在目錄服務中進行統一維護。通過在目錄服務中構建項目統一視圖,即可實現在各個業務系統中,項目組信息保持同步。
業務系統與統一用戶身份管理系統集成主要是用戶和組織機構的集成管理,業務系統的用戶和組織機構數據由統一用戶身份管理系統統一管理。在業務系統與統一用戶身份管理系統集成過程中,統一用戶身份管理系統需要與業務系統完成用戶組織機構的數據同步。同步過程始終保證由用戶與組織信息的權威數據源到統一用戶身份管理系統,然后再由統一用戶身份管理系統根據權限將用戶與組織信息同步至其他相關應用系統中。根據各應用系統的實際情況,可以采用數據庫中間表或Webservice兩種同步方式。
2 統一身份認證機制
統一身份認證為其他信息系統提供相同的認證策略和認證方式,該策略可以有效識別用戶身份的合法性。用戶通過計算機登錄某個信息系統時,該客戶端通過瀏覽器訪問該信息系統的登錄頁面,獲取隨機數和認證服務器證書,然后客戶端將認證請求和用戶證書發送給該信息系統的服務器,服務器轉發認證請求和用戶證書給認證服務器,認證服務器認證后,將用戶證書序列號返回給系統服務器,由系統服務器通知客戶端登錄信息系統。統一身份認證支持電子密鑰、數字簽名和用戶名/口令等多種認證方式,充分滿足用戶的安全認證需求。具體認證原理和流程如下圖3所示。
對于安全級別要求較高的信息系統,也可以考慮在自身應用系統中額外加入身份認證模塊,如二次密碼、問題驗證和令牌等認證方式[3]。
這種統一身份認證策略,能夠解決多個系統分別獨立認證的弊端:例如用戶需要分別單獨登錄各信息系統;不能統一認證和授權;多個認證系統增加了管理成本和重復開發的成本等。因此建立統一認證機制對用戶實行統一認證和統一授權管理對企業的系統集成是非常必要的[4]。
2.1 單點登錄實現原理
當企業信息系統繁多,用戶分別擁有各個信息系統的不同用戶名和密碼,訪問一個系統時,輸入一套用戶名和密碼驗證登3 信息系統統一身份認證管理標準
所有集成的信息系統在集成到統一用戶身份管理系統后,必須遵循以下標準:
(a)業務系統提供門戶系統專有的登錄驗證跳轉頁面,為了方便后期維護,建議不要復用系統自身登錄頁面。
(b)業務系統必須禁用密碼修改功能,業務系統密碼統一在統一用戶身份管理系統中修改,然后通過同步機制同步到應用系統中。
(c)業務系統中不能獨自添加,修改,禁用,刪除用戶,如果新注冊用戶為正式員工,或用戶信息發生變更時,必須在用戶數據源系統(如人力資源管理系統)中進行新賬戶注冊或數據更新,然后通過同步機制依次同步到統一用戶管理系統,再通過統一分配與授權同步到其他應用系統中,否則無法完成在企業門戶中的單點登錄。
(d)如果業務系統使用統一用戶身份管理系統提供的標準組織機構,業務系統組織標準機構的創建,修改,刪除必須通過統一用戶身份管理系統同步。
(e)用戶訪問業務系統的驗證頁面時,驗證頁面需能解析Cookie中賬號信息,以及請求的目標地址。業務系統完成用戶認證后,必須能夠定向到用戶訪問的目標地址頁面,不能轉向到業務系統首頁或其他頁面。
(f)業務系統在判定用戶請求的目標地址時候,應判斷所請求的地址是否是系統自身登錄頁面,如果是,應自動跳轉至登陸成功后的地址。
對于CS架構的業務系統,需要業務系統進行改造,通過JSP頁面獲取到登錄信息后,可以實現從JSP頁面啟動CS客戶端,并跟進獲取到登錄信息登錄至CS系統中。
4 結 論
本文提供的統一身份認證解決方案能夠幫助簡化應用系統用戶創建及變更的流程,保持應用系統中用戶數據與權威數據源的一致性,確保用戶基礎信息的準確性,提高整體安全性和企業系統的集成度,同時簡化用戶操作,改善用戶體驗度,避免用戶記憶多套賬號信息,為用戶提供一站式、個性化、全面的服務。
主要參考文獻
[1]王茜,史晨昱,李安穎,等.基于統一用戶管理的辦公業務資源系統集成[J].計算機技術與發展,2014(1):200-203.
[2]胡娟.統一用戶管理與單點登錄系統的設計與實現[D].北京:北京郵電大學,2014.
[3]王樺,黃紹建,周可,等.基于郵箱的統一用戶認證[J].華中科技大學學報:自然科學版,2013(z2):38-41.
[4]趙菁.基于企業門戶統一認證系統的設計與實現[J].信息安全與技術.2012(8):27-29.
[5]S K Bhosale. Architecture of a Single Sign on(SSO)for Internet Banking[C]//IEF Conference on Wireless,Mobile and Multimedia Network,2008.
[6]張振,朱志祥,梁小江.一種統一用戶管理和認證授權方案[J].電子科技,2015,28(5):140-146.
[7]蔡芳.統一用戶與單點登錄實現應用系統集成方法研究[J].電腦知識與技術,2016,12(27):188-190.
[8]付影平,杜程,劉建華.基于SAML單點登錄模型研究與設計[J].現代電子技術,2015,38(16):38-41.