

摘 要隨著信息化建設橫向集成的推進,對用戶身份信息進行統一認證和為用戶提供單點登錄訪問方式的必要性日益提高,如何實現統一認證和單點登錄是信息化建設的重要課題。Novell AM是Novell公司提供的統一身份認證解決方案,它通過反向代理、自動填表等技術實現信息系統的單點登錄,為企業建設統一認證提供了切實可行的一種方案。
【關鍵詞】單點登錄 身份認證 訪問網關 統一認證
1 前言
隨著信息化建設的推進,提供給用戶使用的業務信息系統越來越多。每個業務系統都有各自獨立的登錄認證功能及用戶信息管理功能,缺乏統一的信息系統登錄入口和用戶帳號管理機制,用戶需記憶的不同系統的登錄帳號和密碼越來越多,造成用戶使用不便。對用戶帳號信息進行統一規劃和管理,對用戶身份進行統一認證使用戶進行單點登錄訪問,是當前信息化建設的方向。Novell Access Manager是Novell公司提供的統一身份認證解決方案,它為上述問題提供了圓滿解決方案。
2 實現統一身份認證和單點登錄的必要性
信息系統傳統的用戶身份管理和登錄方式存在弊端,表現為:
(1)每套業務系統都開發有自己的用戶帳號管理功能,用戶帳號在每套系統中都需要單獨創建,同一個人在多套業務系統中可能存在多個用戶帳號,在登錄不同的業務系統時需要使用不同的帳號密碼,用戶需要記憶多個帳號和密碼,使用不便,用戶體驗下降。
(2)每套系統都有自己的用戶登錄頁面和認證機制,用戶界面各異,認證安全性水平有高有低,不能提供給用戶統一的視覺界面和系統安全性。特別是用戶登錄進入門戶后訪問業務系統時,仍然顯示登錄頁面要求再次輸入帳號密碼,用戶體驗不佳。
因此,為消除以上弊端,應進行以下改進:
(1)進行統一用戶建設。隨著業務系統橫向集成的推進,需要將用戶信息單獨抽取出來作為信息系統的基礎設施進行統一建設和規范化管理,然后將用戶信息從權威數據源分發至各業務系統,各業務系統不再保留獨立的用戶管理功能。
(2)實現統一認證和單點登錄訪問。給用戶提供統一的訪問入口進行單點登錄訪問。單點登錄的含義是用戶只需一次登錄就可以訪問不同的業務系統。用戶無需再記憶多個帳號,只需記住統一用戶系統中自己的一個帳號即可,用一個帳號訪問所有業務系統,而且在登錄門戶后訪問業務系統時也無需再重復輸入帳號和密碼,提高了信息系統的易用性、安全性,改善了用戶體驗。
Novell Access Manager(以下簡稱Novell AM)是Novell公司提供的統一認證解決方案,業務系統與Novell Access Manager進行集成就可實現業務系統的單點登錄。
3 Novell AM系統架構
Novell AM系統由身份認證管理服務器(Identity Server,簡稱IDS)、訪問網關(Access Gateway,簡稱AG)、目錄服務器(LDAP Directory)、管理控制臺(Administration Console,簡稱AC)組成,提供對用戶身份的統一認證和對業務應用系統的安全訪問。系統架構如圖1。
系統各組件的功能如下:
(1)IDS:身份認證管理服務器,負責對用戶身份信息進行認證,向用戶推送統一的身份認證頁面,將用戶在認證頁面中輸入的用戶名、密碼提交至用戶身份信息庫LDAP Directory進行認證,判斷是否為合法用戶。IDS支持用戶名/密碼、X.509 數字證書、令牌等多種認證方式。IDS可由多臺服務器組成集群。
(2)AG:訪問網關,基于反向代理服務,利用自動填表或身份注入等技術實現對業務系統的單點登錄訪問。業務系統與AG集成后對業務系統的所有訪問都受到AG保護,此時提供給用戶的訪問地址不再是業務系統原來自己Web服務器的地址,而是DNS域名形式的AG服務器的地址,業務系統位于AG之后,用戶訪問業務系統首先需要經過AG,從而AG為業務系統提供安全訪問控制,提高了業務系統的安全性。AG可由多臺服務器組成集群。
(3)LDAP Directory:用戶身份信息數據庫,存儲著權威的用戶帳號名稱、密碼等身份信息,IDS使用它作為唯一的用戶身份認證數據源。
(4)AC:管理控制臺,實現對IDS、AG、業務系統單點登錄的配置功能,同時提供IDS、AG間的通信服務功能。AC可由兩臺服務器組成主備關系的HA架構。
4 Novell AM單點登錄實現
4.1 單點登錄流程
業務系統通過Novell AM進行訪問的流程如圖2。
圖2的登錄流程(對應圖中所標序號)分析如下:
(1)用戶向受AG保護的業務系統(Web Server)發出訪問請求,因為業務系統已受AG保護,所以用戶訪問請求首先被發送到AG。
(2)AG檢查當前用戶是否已登錄,如果用戶尚未登錄,利用HTTP協議重定向機制,用戶訪問請求被AG重定向到身份認證管理服務器Identity Server,IDS向用戶推送身份認證頁面,即登錄頁面,提示用戶輸入用戶名和密碼,用戶輸入用戶名、密碼后提交。
(3)IDS獲取到用戶提交的用戶名、密碼信息,然后IDS到用戶身份信息數據庫LDAP Directory中對獲取到的用戶身份信息進行認證,驗證用戶合法性。若IDS驗證不通過,則用戶瀏覽器仍然停留在登錄頁面,提示用戶重新數據用戶名、密碼。
(4)在上步驟中,若IDS認證通過,則IDS返回認證成功的信息到用戶瀏覽器,用戶瀏覽器重新將訪問業務系統的請求發送至AG。
(5)AG向IDS確認用戶已經被IDS認證成功,是合法用戶,并且AG向IDS請求獲得已認證通過的用戶的身份信息,AG得到IDS發送的用戶身份信息。
(6)AG在獲得用戶身份信息后,AG利用自動填表或者身份注入等方法向受保護業務系統Web Server發送用戶身份信息。
(7)業務系統認為當前訪問用戶是合法用戶,接受用戶訪問請求,將用戶請求信息發送給用戶瀏覽器。完成登錄流程。
4.2 統一用戶
統一用戶的建設首先需要確定一個身份權威源,權威源是指對確定用戶身份關鍵信息進行管理維護的應用系統,一般推薦將人力資源系統作為身份權威源,也可以定制開發身份權威源系統。建立權威源的目的是從源頭對用戶身份信息進行控制和規范化管理,作為用戶身份信息的唯一出處,改變以往用戶身份信息各業務系統重復建設、管理分散的局面。
Novell公司的Identity Manager組件能夠實現將身份信息從權威源到LDAP Directory再到相關業務應用系統的實時同步,包括用戶賬號的同步創建、變更、刪除等,實現全生命周期管理。在權威源中可以制定賬號管理策略對用戶身份信息到業務系統的同步進行控制,控制哪些帳號可以同步到哪些業務系統,達到需要的帳號才能同步到需要的業務系統的目的。用戶身份信息同步的數據流如圖3。
統一用戶建立后,用戶身份信息就成為了一個在所有業務系統間共享、流動、一致的基礎數據,為不同業務系統間的單點登錄奠定了數據基礎。
4.3 基于自動填表策略的集成方式
對于大多數B/S業務系統,使用表單頁面作為系統的登錄頁面,因此AG向業務應用系統發送用戶身份信息,大多使用自動填表策略來完成。在圖2登錄流程所示的第6步中,AG在獲得用戶身份信息后,自動向業務系統的登錄頁面填入用戶帳號、密碼信息,并對業務系統的登錄頁面進行自動提交,從而登錄進入業務系統。
基于自動填表策略的集成方式適用于從企業門戶到其它業務應用系統入口的業務導航跳轉,用戶無需再次輸入用戶名密碼,實現單點登錄。
4.4 基于身份注入(即HTTP頭)策略的集成方式
在用戶通過IDS認證后,AG通過注入機制在HTTP請求中添加表示用戶信息的HTTP頭,并將請求轉發到業務應用系統,業務系統獲取HTTP頭中的用戶身份信息,完成對用戶身份信息的接收和認證。業務應用系統需要按照AG接口規范的要求,利用HTTP協議中規定的基本認證方式登錄應用系統,也可以使用認證系統與應用系統之間約定的頭信息登錄。
此方式適合于從企業門戶到其它應用系統業務功能頁面的跳轉,如進入待辦任務對應的業務應用系統的處理頁面。
4.5 典型應用
當前,企業往往以門戶為中心實現各業務系統的應用集成和數據集成,因此,企業信息化的典型應用場景是將企業門戶系統及各業務應用系統與Novell AM集成,然后將門戶作為企業信息系統的唯一訪問入口對用戶開放,用戶登錄進入門戶后對各業務系統進行單點登錄式訪問,如圖4所示。
5 結束語
統一認證和單點登錄的實現,標志著信息系統橫向集成的建設推進到了一個新階段,為用戶帶來嶄新體驗,大大方便用戶使用信息系統。本文描述了基于Novell AM的實現方案,為企業建設統一認證提供了切實可行的一種選擇。
參考文獻
[1]霍成義.結合Cookie與票據共享的單點登錄方案[J].自動化與儀器儀表,2013, 3:167-169.
[2]胡聰,姚振.基于VMware的Novell身份認證系統虛擬化架構實踐[J].電力信息化,2013,11(4):78-81.
作者簡介
柴新(1974-),男,山東省壽光市人。現為江蘇電力信息技術有限公司工程師,主要從事信息化運維工作。
作者單位
江蘇電力信息技術有限公司 江蘇省南京市 210024