宮 成 王鴻捷 吳靖寰 傅賀平
中國石油工程建設有限公司西南分公司, 四川 成都 610041
信息技術的發(fā)展及互聯(lián)網(wǎng)的普及,使企業(yè)應用系統(tǒng)已呈快速增長態(tài)勢。應用系統(tǒng)在企業(yè)業(yè)務生產(chǎn)及管理等方面發(fā)揮著越來越重要的作用,并為各種業(yè)態(tài)下的企業(yè)生產(chǎn)經(jīng)營模式的改變、企業(yè)精細化管理的實現(xiàn)提供基礎[1],有效地提高了企業(yè)的經(jīng)營管理水平。
工程公司由于業(yè)務和管理的需要,應用系統(tǒng)的建設也在不斷增長,由于歷史原因,不同時期建立的應用系統(tǒng)所采用的技術不同,當時為解決對應用系統(tǒng)的權限及數(shù)據(jù)安全的管控,每個應用系統(tǒng)分別部署獨立登陸賬號和密碼[2-4]。但由于應用系統(tǒng)數(shù)量的不斷增長,導致了眾多的問題:
1)用戶體驗差:用戶必須記住不同應用系統(tǒng)的用戶名和密碼,登錄每個應用系統(tǒng)使用時不斷重復登錄操作。
2)運維管理復雜:業(yè)務部門需要對各業(yè)務系統(tǒng)的多套用戶名及密碼進行管理,運維工作量巨大,難以管控。
3)安全隱患嚴重:用戶為記住登錄名和密碼,采用了簡單的密碼,造成保密級別降低,為業(yè)務數(shù)據(jù)安全帶來極大的隱患。
4)信息不一致:各系統(tǒng)之間的賬號不統(tǒng)一,形成信息孤島現(xiàn)象[5]。
這種分散式的認證方式已經(jīng)成為企業(yè)實現(xiàn)信息系統(tǒng)集成化、一體化所必須解決的問題。本文根據(jù)工程公司的實際應用情況提出了一種新的統(tǒng)一身份認證建設思路,能夠較好地解決以上問題。
統(tǒng)一身份認證平臺建設應在工程公司自身的信息化建設總體規(guī)劃下進行,以遵循“統(tǒng)一規(guī)劃,分步實施”的策略[6],根據(jù)工程公司自身的實際需求,明確項目建設目標。統(tǒng)一身份認證平臺規(guī)劃目標應從兩方面考慮:
1)所謂統(tǒng)一身份認證就是用戶只需通過一個賬號密碼,就可訪問具有合法權限內(nèi)的所有資源,是統(tǒng)一身份認證平臺實現(xiàn)的最基本目標。
2)從整體信息化架構角度考慮,構建一個完整統(tǒng)一、高效穩(wěn)定、規(guī)范安全的集中式身份管理。
范圍決定需求,需求決定架構[7],如果范圍不能正確地定義將會導致一系列的不良連鎖反應,最終造成系統(tǒng)的嚴重缺陷。正確、合理的定義范圍是保證成功實施的重要工作之一。
筆者認為范圍的定義通俗來講就是為達成目標所必須要做的事情。統(tǒng)一身份認證平臺建設范圍的確定應以前文提出的規(guī)劃目標為基礎,并根據(jù)信息化整體IT架構及應用使用情況進行分析、細化的一個過程。工程公司規(guī)劃統(tǒng)一身份認證平臺建設范圍可從三方面考慮:
1)制定身份認證標準,建設一個沒有重復、沖突的統(tǒng)一身份認證信息架構[8]。
2)兼容企業(yè)整體IT基礎架構和運行環(huán)境要求,筆者所在工程公司提出了需兼容企業(yè)內(nèi)部的私有云架構模式。
3)滿足已存在的各種異構應用系統(tǒng)的接入及改造,實現(xiàn)各應用系統(tǒng)之間身份認證信息的整合。
如何將工程公司不同的業(yè)務應用系統(tǒng)進行有效整合,做到統(tǒng)一認證,統(tǒng)一管理[9-11],是實現(xiàn)統(tǒng)一身份認證平臺核心關鍵。
統(tǒng)一身份認證標準的建立,應建立在能夠滿足工程公司各種異構應用架構的基礎上,與應用系統(tǒng)本身的開發(fā)語言、平臺無關,無論是B/S結(jié)構、C/S結(jié)構以及移動APP應用(原生、混合、Web)結(jié)構。
統(tǒng)一身份認證標準的建立要充分利用SOA(面向服務體系)架構松耦合的特點[12-13],采用國際標準的網(wǎng)絡協(xié)議和規(guī)定的一些標準數(shù)據(jù)格式,包括登錄方式、交互流程、認證協(xié)議等。
統(tǒng)一身份認證平臺的集中安全管控必須從全局角度考慮:
1)授權管理:對接入到統(tǒng)一身份認證平臺的應用進行授權,為應用系統(tǒng)的接入提供安全、高效、可用的安全機制。
2)審計管理:對應用系統(tǒng)的使用情況、用戶對應用系統(tǒng)的訪問行為進行審計,可為后續(xù)發(fā)生事故時提供一個可追查的機制[14]。
統(tǒng)一身份認證平臺本身并不對用戶信息進行管理,這取決于企業(yè)本身對信息管理的劃分。從工程公司信息化整體管理角度而言,用戶信息一般是由公司人力資源管理部門進行管理[15]。該部分內(nèi)容的確定,對統(tǒng)一身份認證平臺的整體架構設計起著重要的作用。
筆者所在工程公司,采用了基于活動目錄進行用戶身份驗證的解決方案?;顒幽夸浿械挠脩艏敖M織機構信息與“人力資源公共數(shù)據(jù)管理平臺”實現(xiàn)無縫集成,不需要對活動目錄中的用戶信息單獨維護。統(tǒng)一身份認證平臺中的用戶身份認證直接使用活動目錄中的用戶信息進行驗證。
工程公司必然會對已存在的應用系統(tǒng)進行改造,以適應統(tǒng)一身份認證方式。因此,如何實現(xiàn)讓已有應用系統(tǒng)與統(tǒng)一身份認證進行無縫集成是需要解決的另一個問題。建議遵循如下原則和方法解決:
1)統(tǒng)一身份認證平臺為各應用系統(tǒng)提供身份認證服務,其他業(yè)務系統(tǒng)只需根據(jù)其規(guī)則調(diào)用此服務即可。
2)已有應用系統(tǒng)的身份認證一般與權限控制緊密相連,權限控制是用戶通過身份認證后,為用戶授權其在應用系統(tǒng)中的角色和使用資源。當前在一個比較完整、規(guī)范的企業(yè)信息化建設體系中,應由一個統(tǒng)一身份認證供各應用系統(tǒng)使用,權限控制由各應用系統(tǒng)自行管理。
3)針對應用系統(tǒng)改造較多的工程公司,可能存在技術復雜(不同平臺)、項目干系人眾多(各應用系統(tǒng)的開發(fā)商、業(yè)務部門、技術人員)等問題。因此,可根據(jù)應用系統(tǒng)的使用范圍、人數(shù)、改造難易程度等進行優(yōu)先級排序,并在項目實施過程中制定合理的統(tǒng)一規(guī)劃。
4)明確統(tǒng)一身份認證登錄賬號與已有應用系統(tǒng)用戶信息的共同點,可從用戶名、員工編號、郵箱名稱等信息進行關聯(lián)。
在已有應用系統(tǒng)的改造過程中,必然會存在無法改造的應用系統(tǒng),但針對自研及定制開發(fā)類型的軟件完全可避免。筆者所在工程公司對自研及定制研發(fā)類軟件在開發(fā)過程中就進行管控,包含對成果文件(需求報告、設計報告、數(shù)據(jù)字典等)、代碼進行審查(編寫規(guī)范、注釋、編譯、封裝等),以避免此問題發(fā)生。
統(tǒng)一身份認證平臺建設一般有“產(chǎn)品+服務”模式和“定制化開發(fā)”模式兩種。不管選擇哪種開發(fā)模式,都需要以正確的、量體裁衣式的解決方案為基礎。
根據(jù)調(diào)研,“產(chǎn)品+服務”模式是當前企業(yè)選擇較多的一種模式[16-18]。這種模式是軟件供應商將產(chǎn)品功能基本固化,再根據(jù)個性化需求進行二次開發(fā),這種模式因有一個原型產(chǎn)品的存在,能夠快速地滿足一個較大應用群體的共性化需求,以及后期的運維服務等。筆者建議,工程公司選擇這種商業(yè)產(chǎn)品時要注意:前期一定要對產(chǎn)品有充分了解,確切是否能夠滿足所有需求,包括二次開發(fā)是否能夠滿足工程公司自身的個性需求,因為商業(yè)產(chǎn)品在設計架構上基本是固化的,很難改變。
“定制化開發(fā)”模式是企業(yè)建設目標需要什么,軟件開發(fā)商就生產(chǎn)什么,是一種由無到有的一種模式。這種開發(fā)模式與商業(yè)化產(chǎn)品對比,具有較強靈活性及適應性,可更好地實現(xiàn)企業(yè)建設目標。但同時也帶來了不小的挑戰(zhàn),因此需要以工程公司信息化建設部門為主導,掌控整個平臺的架構設計,對整體規(guī)劃及技術有較高的要求。
統(tǒng)一身份認證平臺建設具體選擇哪一種模式,不能一概而論,沒有最完美的,只有最適合的。表1是針對兩種模式的比較,建議工程公司根據(jù)自身需求情況并結(jié)合表1的分析結(jié)果,來選擇最適當?shù)慕ㄔO模式。
表1“產(chǎn)品+服務”與“定制化開發(fā)”模式對比分析
建設模式周期成本兼容性運維/響應個性化技術要求產(chǎn)品+服務短較低一般慢一般較低定制化開發(fā)長高高快滿足高
筆者所在工程公司按照上述提出的建設思路、方法進行了規(guī)劃實施,統(tǒng)一身份認證平臺建設選用了“定制化開發(fā)”模式。
統(tǒng)一身份認證平臺自建成后,已無故障運行28個月,并有18個應用系統(tǒng)接入到統(tǒng)一身份認證平臺,其中包括13個B/S架構應用系統(tǒng)、2個C/S架構應用系統(tǒng)、3個移動APP模式應用系統(tǒng),用戶登錄訪問總計 869 308次。該平臺的建設有效提升了公司信息化整體管理水平及用戶自身的工作效率。
本文提出了一種適用于多應用架構模式的統(tǒng)一身份認證建設思路,滿足當前所有不同應用架構系統(tǒng)的統(tǒng)一身份認證問題,保證了各業(yè)務集成系統(tǒng)的松散耦合。
在工程公司的實際使用也展現(xiàn)了良好的應用效果。用戶只需要記住一套用戶名/密碼就可以訪問所有不同平臺、不同語言所開發(fā)的應用系統(tǒng),提升了用戶體驗和IT的運維管理工作。筆者建議,在統(tǒng)一身份認證平臺建設過程中,一定采用科學的項目實施方法論為指導,才能較好實現(xiàn)建設目標。