婁 峰,韓 超
(中國民航信息網(wǎng)絡(luò)股份有限公司 運(yùn)行中心,北京 101318)
在企業(yè)數(shù)據(jù)中心的日常運(yùn)行與維護(hù)(簡稱:運(yùn)維)中,操作系統(tǒng)賬號的管理是保障系統(tǒng)安全運(yùn)行的重要手段,同時(shí)信息系統(tǒng)等級保護(hù)各級要求都對系統(tǒng)賬號管理提出了要求[1]。文獻(xiàn)[2-4]通過對信息系統(tǒng)主機(jī)安全等級保護(hù)測評方法的分析研究,明確了從用戶身份認(rèn)證、訪問控制、數(shù)據(jù)加密、容錯(cuò)能力、日志審計(jì)等方面需要改進(jìn)的方向。因此,用戶管理系統(tǒng)的穩(wěn)定性和可用性會(huì)直接影響到運(yùn)維人員日常的維護(hù)變更及故障的應(yīng)急處理。對于數(shù)據(jù)中心主機(jī)系統(tǒng)的管理,現(xiàn)有商業(yè)用戶管理系統(tǒng)無法滿足對于特定運(yùn)維模式下的某些個(gè)性化需求。此外,現(xiàn)有商業(yè)用戶管理系統(tǒng)的采購和使用成本巨大,后期仍需大量持續(xù)投資。針對以上情況,基于文獻(xiàn)[1-2],以及對國內(nèi)外市場上已有產(chǎn)品的調(diào)研、對企業(yè)內(nèi)實(shí)際運(yùn)維需求的分析,本文自主設(shè)計(jì)并實(shí)現(xiàn)了數(shù)據(jù)中心用戶管理系統(tǒng),以滿足信息安全等級保護(hù)要求,并為企業(yè)信息系統(tǒng)提供安全保障。
數(shù)據(jù)中心用戶管理系統(tǒng)基于系統(tǒng)賬號生命周期管理理念設(shè)計(jì),如圖1所示。
圖1 賬號生命周期管理
數(shù)據(jù)中心用戶管理系統(tǒng)的設(shè)計(jì)原則主要包括以下幾個(gè)方面。
(1)運(yùn)維需求:系統(tǒng)的設(shè)計(jì)要基于實(shí)際運(yùn)維中的用戶管理需求,保證系統(tǒng)的適用性,讓系統(tǒng)真正服務(wù)于運(yùn)維工作。
(2) 等保合規(guī)要求:系統(tǒng)的設(shè)計(jì)要符合信息系統(tǒng)等級保護(hù)相關(guān)的合規(guī)要求。
(3)用戶管理規(guī)定:系統(tǒng)的設(shè)計(jì)要符合運(yùn)維部門現(xiàn)有的系統(tǒng)用戶管理規(guī)定,系統(tǒng)的建設(shè)是為了使規(guī)定更好得落地、執(zhí)行。
數(shù)據(jù)中心用戶管理系統(tǒng)的總體架構(gòu),如圖2所示。
圖2 系統(tǒng)總體架構(gòu)
應(yīng)用層主要基于Java服務(wù)器頁面(JSP,Java Server Pages)、 jQuery、 Hibernate開 發(fā) ; 處 理 層主要處理前臺請求對系統(tǒng)賬號的具體操作,包括消息隊(duì)列、JMS消費(fèi)者、業(yè)務(wù)邏輯、多種系統(tǒng)適配器等部分;數(shù)據(jù)庫層采用開源的MySQL數(shù)據(jù)庫。
用戶管理系統(tǒng)在設(shè)計(jì)過程中,結(jié)合業(yè)務(wù)特點(diǎn),采用基于Spring Cloud 的微服務(wù)架構(gòu)開發(fā)系統(tǒng),并在此基礎(chǔ)上進(jìn)行封裝。Spring Cloud 是一個(gè)基于 Spring Boot 實(shí)現(xiàn)的微服務(wù)架構(gòu)開發(fā)工具。它為微服務(wù)架構(gòu)中涉及的配置管理、服務(wù)治理、斷路器、智能路由、微代理、控制總線、全局鎖、決策競選、分布式會(huì)話和集群狀態(tài)管理等操作提供了一種簡單的開發(fā)方式。通過開放式微服務(wù)體系可以將不同設(shè)備對接、不同業(yè)務(wù)系統(tǒng)對接、不同軟件對接的單體功能模塊,細(xì)分為多個(gè)開放的小功能模塊服務(wù),服務(wù)獨(dú)立部署在不同的進(jìn)程中,不同服務(wù)通過一些輕量級交互機(jī)制來通信,從而滿足業(yè)務(wù)體系的高擴(kuò)展性技術(shù)要求,實(shí)現(xiàn)資源的最大限度利用。
對象關(guān)系映射(ORM,Object Relational Mapping)是一種將關(guān)系型數(shù)據(jù)庫映射到面向?qū)ο缶幊陶Z言中的技術(shù)。使用ORM技術(shù),開發(fā)人員可以不必編寫具體的結(jié)構(gòu)化查詢語言(SQL,Structured Query Language)語句及數(shù)據(jù)類型轉(zhuǎn)換代碼,即可輕松操作數(shù)據(jù)庫。Java持久層應(yīng)用(JPA,Java Persistence API)是由Java EE提供的一套實(shí)現(xiàn)ORM規(guī)范的接口。Spring Data JPA則是由Spring提供的針對JPA接口的實(shí)現(xiàn)方式,并可方便地與Spring Boot框架組合使用。因此,本系統(tǒng)采用 Spring Data JPA 框架作為ORM工具進(jìn)行開發(fā),可以有效地簡化開發(fā)工作,縮短項(xiàng)目周期。
在用戶管理系統(tǒng)與服務(wù)器或者其他平臺進(jìn)行交互時(shí),必須等待服務(wù)對象完成處理返回結(jié)果才能繼續(xù)執(zhí)行,這將嚴(yán)重影響用戶管理系統(tǒng)的并發(fā)性能,因此在系統(tǒng)設(shè)計(jì)時(shí)引入了消息中間件ActiveMQ。
在進(jìn)行用戶管理系統(tǒng)的需求收集時(shí),基于文獻(xiàn)[5-7]收集通用需求,結(jié)合運(yùn)維工作實(shí)際情況,提出以下功能需求。
(1)用戶主目錄策略:在每個(gè)主機(jī)系統(tǒng)中單獨(dú)劃出一個(gè)文件系統(tǒng),專門用來存放所有用戶的主目錄及相關(guān)文件。
(2)用戶分類策略:根據(jù)主機(jī)系統(tǒng)用戶的屬性或用途進(jìn)行分類,并對每類用戶采取不同安全管理策略。
(3)用戶分組策略:根據(jù)用戶的部門或用戶之間相同的特性,把用戶分在一組,同組的用戶可實(shí)現(xiàn)組內(nèi)資源共享,便于對系統(tǒng)日常維護(hù)的管理。
(4)統(tǒng)一用戶組命名策略:在各個(gè)主機(jī)系統(tǒng)中應(yīng)采用統(tǒng)一的命名來建立用戶組。
(5)統(tǒng)一用戶命名策略:在各個(gè)主機(jī)系統(tǒng)中對應(yīng)同一個(gè)運(yùn)維人員的系統(tǒng)用戶的命名應(yīng)該統(tǒng)一,以此將系統(tǒng)用戶與實(shí)際人員做唯一對應(yīng),為用戶制定相應(yīng)的命名規(guī)則。
(6)用戶口令策略:對主機(jī)系統(tǒng)用戶的口令要制定高強(qiáng)度的密碼策略。
(7)用戶系統(tǒng)登錄策略:考慮系統(tǒng)用戶遠(yuǎn)程訪問服務(wù)器的安全性,采用安全的遠(yuǎn)程訪問方式,并采取必要的登錄失敗處理措施,限制失敗登錄次數(shù)。
(8)管理用戶使用策略:限制管理用戶的直接系統(tǒng)登錄權(quán)限,盡可能減少管理用戶的發(fā)放,控制管理用戶的用戶數(shù),對管理用戶的使用要制定嚴(yán)格的審批流程和使用規(guī)范,防止系統(tǒng)特權(quán)擴(kuò)散[8-9],保證系統(tǒng)安全,便于管理。
(9)系統(tǒng)用戶安全審計(jì):針對等級保護(hù)二級及二級以上系統(tǒng),要求對每個(gè)主機(jī)系統(tǒng)的用戶進(jìn)行安全審計(jì),審計(jì)內(nèi)容應(yīng)包括重要用戶行為、系統(tǒng)資源的異常使用和重要系統(tǒng)命令的使用等系統(tǒng)內(nèi)重要的安全相關(guān)事件。
(10)系統(tǒng)用戶登錄認(rèn)證:針對等級保護(hù)三級及三級以上系統(tǒng),要求對主機(jī)系統(tǒng)用戶的登錄認(rèn)證過程,采用兩種或兩種以上組合的鑒別技術(shù)進(jìn)行身份鑒別。
數(shù)據(jù)中心用戶管理系統(tǒng)的主要功能模塊包括人員管理模塊、賬號管理模塊、資源管理模塊、策略模塊、基礎(chǔ)服務(wù)模塊、外部服務(wù)模塊和審計(jì)模塊,如圖3所示。
圖3 功能邏輯架構(gòu)
3.2.1 人員管理模塊
基于對各資源服務(wù)器中賬號的歸屬進(jìn)行規(guī)范化管理,在系統(tǒng)設(shè)計(jì)過程中引入人員管理模塊。該模塊中核心功能是對賬號擁有者即具體運(yùn)維人員信息的維護(hù)和管理,主要包括功能人員基礎(chǔ)信息管理、關(guān)聯(lián)賬號的別名信息管理,以及涉及供應(yīng)策略的別名組信息管理。人員管理模塊不僅涵蓋運(yùn)維人員的基礎(chǔ)信息維護(hù)功能,也可以操作對應(yīng)人員擁有的賬號。在使用過程中,創(chuàng)建人員基礎(chǔ)信息,綁定對應(yīng)別名信息,完成基礎(chǔ)信息錄入后,提交在指定資源中創(chuàng)建人員賬號的請求,后臺接收到請求消息后自動(dòng)進(jìn)行賬號創(chuàng)建操作。針對人員擁有的賬號,可修改賬號密碼、鎖定賬號、解鎖賬號等。同時(shí),管理批量創(chuàng)建賬號處理策略的別名組,維護(hù)別名組中包含的別名信息。在此基礎(chǔ)上也可對人員擁有賬號的合規(guī)性進(jìn)行自動(dòng)化檢測,計(jì)算出供應(yīng)策略控制下多建、少建的賬號列表,并且根據(jù)需要對多余或缺失賬號進(jìn)行相應(yīng)處理。
3.2.2 賬號管理模塊
該模塊核心功能就是進(jìn)行各資源賬號執(zhí)行創(chuàng)建申請和孤立賬號的統(tǒng)一管理。通過請求賬號的入口,可以指定資源、人員、別名等創(chuàng)建合規(guī)的賬號信息,模塊中還可以管理各資源中已存在的賬號組信息,即賬號關(guān)聯(lián)的主組、附屬組。在孤立賬號管理頁面中,可對未綁定人員的賬號進(jìn)行歸屬分配操作,也可對未使用或多余的孤立賬號進(jìn)行刪除操作。
3.2.3 資源管理模塊
該模塊主要是針對各資源IP、資源類型(操作系統(tǒng)、數(shù)據(jù)庫)、系統(tǒng)類型(操作系統(tǒng)如LINUX、AIX、 SUNOS、 HP-UX等 , 數(shù) 據(jù) 庫 如 Oracle、MySQL、達(dá)夢、EDB等)、狀態(tài)、組織結(jié)構(gòu)、適配器、關(guān)聯(lián)策略等的信息維護(hù)入口,作為整個(gè)應(yīng)用的核心模塊,資源管理模塊中可以查看數(shù)據(jù)中心用戶管理系統(tǒng)已接管的所有資源信息。該模塊主要分為資源信息管理、資源組管理、適配器管理。資源組是涉及批量創(chuàng)建賬號處理策略時(shí)定義的組概念,用于關(guān)聯(lián)策略中的資源和別名關(guān)系。適配器管理實(shí)際是針對各資源的連接方式進(jìn)行管理,定義登錄認(rèn)證方式,如用戶名、密碼或公鑰、私鑰進(jìn)行資源連接。操作流程方面,在輸入已接管的資源信息后,后臺將定時(shí)利用指定的適配器信息去連接相應(yīng)資源,自動(dòng)獲取資源上已存在的賬號信息,完成實(shí)際資源和系統(tǒng)數(shù)據(jù)庫賬號信息的同步。在資源列表頁面,可以查看各資源的主要信息,同時(shí),可進(jìn)行刪除資源、修改資源、資源連接狀態(tài)檢查、資源賬號同步的基礎(chǔ)操作。針對具體資源,也能夠查看該資源中所有賬號信息,并對賬號進(jìn)行基礎(chǔ)的維護(hù)管理。
3.2.4 策略模塊
該模塊功能包含供應(yīng)策略、密碼策略和協(xié)調(diào)策略。策略始于用戶需求,是為方便用戶提供的快捷服務(wù)模塊,直觀理解可認(rèn)為是批處理和自動(dòng)化處理的配置支撐,用于定義業(yè)務(wù)所需的具體規(guī)則內(nèi)容。(1)供應(yīng)策略主要功能是在批量創(chuàng)建賬號時(shí)定義規(guī)則,每一個(gè)供應(yīng)策略會(huì)定義資源組和別名組的對應(yīng)關(guān)系,資源組中包含資源成員,別名組中包含別名成員。供應(yīng)策略實(shí)現(xiàn)了資源和別名的關(guān)聯(lián)規(guī)則配置,當(dāng)資源組和別名組中成員增加時(shí),將觸發(fā)批量賬號創(chuàng)建操作,自動(dòng)將供應(yīng)策略中涉及的別名在相關(guān)資源中創(chuàng)建。(2)密碼策略約定各賬號登錄密碼的規(guī)則,指定大小寫、數(shù)字、特殊字符、長度等內(nèi)容,各賬號的密碼設(shè)置都應(yīng)符合密碼策略定義規(guī)則的要求。(3)協(xié)調(diào)策略是資源賬號同步過程中調(diào)度頻率的規(guī)范,不同資源可以指定使用不同的協(xié)調(diào)策略,資源關(guān)聯(lián)對應(yīng)協(xié)調(diào)策略后,后臺將自動(dòng)按照該協(xié)調(diào)策略定義的調(diào)度規(guī)則進(jìn)行定時(shí)資源狀態(tài)、賬號信息同步。
3.2.5 基礎(chǔ)服務(wù)模塊
該模塊是數(shù)據(jù)中心用戶管理系統(tǒng)運(yùn)行的配置管理模塊,其中,包含系統(tǒng)業(yè)務(wù)中涉及的固定信息和接管賬號范圍的配置。例如,數(shù)據(jù)在線保留的天數(shù)、郵件服務(wù)器信息、賬號管理范圍、角色管理范圍、請求消息發(fā)送配置等。該模塊的配置內(nèi)容是系統(tǒng)運(yùn)行過程中的基礎(chǔ)配置信息,為系統(tǒng)穩(wěn)定運(yùn)行提供數(shù)據(jù)支持。當(dāng)對配置模塊中相關(guān)內(nèi)容進(jìn)行修改操作后,系統(tǒng)業(yè)務(wù)將實(shí)時(shí)同步獲取到最新的配置信息,以當(dāng)前數(shù)據(jù)為基礎(chǔ)進(jìn)行相關(guān)業(yè)務(wù)流轉(zhuǎn)。
3.2.6 外部服務(wù)模塊
外部服務(wù)模塊即請求管理模塊,該模塊是針對所有資源、人員、賬號相關(guān)操作請求的數(shù)據(jù)記錄,在系統(tǒng)中執(zhí)行涉及核心對象的操作都有對應(yīng)具體的記錄。例如,創(chuàng)建資源時(shí)生成創(chuàng)建資源的相關(guān)信息,如資源IP、資源類型、適配器信息、請求人員、創(chuàng)建時(shí)間、執(zhí)行結(jié)果等,修改賬號密碼操作時(shí)對應(yīng)請求信息有賬號名稱、資源信息、密碼信息、修改時(shí)間、執(zhí)行結(jié)果等。請求管理中基本涵蓋系統(tǒng)中所有操作的數(shù)據(jù)記錄,是對系統(tǒng)和用戶行為的數(shù)據(jù)備份,通過請求管理,可追蹤各操作的具體執(zhí)行情況和處理結(jié)果。
3.2.7 審計(jì)模塊
該模塊可針對人員、資源、賬號三者間規(guī)范進(jìn)行不定期審計(jì)操作。審計(jì)人員通過該模塊可完成白名單管理、審計(jì)批次管理、查看審計(jì)結(jié)果、審計(jì)信息統(tǒng)計(jì)等。用戶需要定義審計(jì)白名單排除無須參加審計(jì)人員名單,在創(chuàng)建新一批次審計(jì)任務(wù)時(shí),指定起始時(shí)間、審計(jì)賬號類型。當(dāng)啟動(dòng)該審計(jì)流程后,后臺自動(dòng)將通知郵件發(fā)送給各部門負(fù)責(zé)審計(jì)人員,審計(jì)人員即可登錄系統(tǒng)查看本部門內(nèi)需要審計(jì)的人員賬號列表。審計(jì)人員需要對被審計(jì)賬號的狀態(tài)進(jìn)行標(biāo)識(刪除、鎖定、保留),完成部門內(nèi)所有賬號狀態(tài)審計(jì)確認(rèn)。審計(jì)管理者將按照審計(jì)賬號標(biāo)識狀態(tài)進(jìn)行最終處理。在整個(gè)審計(jì)過程中,可隨時(shí)查看審計(jì)批次中各賬號審計(jì)結(jié)果和審計(jì)信息統(tǒng)計(jì)。
數(shù)據(jù)中心用戶管理系統(tǒng)適用范圍比較廣,融合性高,實(shí)現(xiàn)了對數(shù)據(jù)中心內(nèi)約 5 000 臺服務(wù)器、70萬個(gè)系統(tǒng)賬號的統(tǒng)一納管,對各類系統(tǒng)賬號從創(chuàng)建、使用、變更到注銷的全生命周期進(jìn)行管理,可以納管多種操作系統(tǒng)(支持管理LINUX、AIX、SUNOS、HP-UX等多類型操作系統(tǒng))、多種數(shù)據(jù)庫類型的資源(Oracle、MySQL、達(dá)夢、EDB等多類型數(shù)據(jù)庫);多種策略配置,符合等級保護(hù)要求;基于等級保護(hù)要求指導(dǎo)及運(yùn)維部門實(shí)際工作需求,將全部納管的用戶密碼實(shí)行動(dòng)態(tài)調(diào)整的功能設(shè)計(jì),根據(jù)密碼資源策略的配置進(jìn)行動(dòng)態(tài)密碼修改,從而進(jìn)一步提高信息保密的安全等級;賬號審計(jì)、規(guī)范化管理;支持隨時(shí)對部門賬號進(jìn)行審計(jì),及時(shí)掌握賬號分配信息,規(guī)范賬號使用情況,方便各部門及時(shí)進(jìn)行賬號自查。
商業(yè)用戶管理系統(tǒng)與數(shù)據(jù)中心用戶管理系統(tǒng)主要功能的對比如圖4所示。可以看出,數(shù)據(jù)中心用戶管理系統(tǒng)在實(shí)現(xiàn)原商業(yè)用戶管理系統(tǒng)全部使用中的功能外,在別名組管理、資源組管理、協(xié)調(diào)策略、Group管理、適配器管理、超時(shí)時(shí)間配置等功能方面彌補(bǔ)了商業(yè)用戶管理系統(tǒng)的不足,可以更好地支持日常用戶管理運(yùn)維工作。
圖4 兩種系統(tǒng)主要功能對比
數(shù)據(jù)中心用戶管理系統(tǒng)投產(chǎn)至今,極大地方便了運(yùn)維人員對系統(tǒng)賬號的日常管理工作。從人員維度角度,用戶組功能模塊減輕了運(yùn)維人員分配賬號時(shí)的重復(fù)工作;從賬號維度角度,用戶別名模塊讓新申請的賬號格式更加整齊合規(guī),易于整理和查找;從資源維度角度,設(shè)備資源以圖表形式呈現(xiàn)給運(yùn)維人員,減輕了閱讀壓力,使數(shù)據(jù)更加直觀、易讀。
本文在綜合分析等級保護(hù)要求的基礎(chǔ)上,結(jié)合運(yùn)維部門的實(shí)際情況,秉承滿足要求、減少投入、方便使用的原則,設(shè)計(jì)并實(shí)現(xiàn)了數(shù)據(jù)中心用戶管理系統(tǒng)。該系統(tǒng)已在相關(guān)運(yùn)維部門投入使用,為企業(yè)信息系統(tǒng)提供了更高標(biāo)準(zhǔn)的安全保障,也為信息安全工作的全面開展提供了可選產(chǎn)品及解決方案。