面臨的現狀
隨著國家推進信息化的迅猛發展,高校、政府和企業等不斷增加基于Internet/Intranet的業務系統,如各類網上申報系統、網上審批系統、OA系統、郵件系統等。系統的業務性質,一般都要求實現用戶管理、身份認證、授權等必不可少的安全措施;而新系統的涌現,在與已有系統的集成或融合上,特別是針對相同的用戶群,有可能存在如下情況:
1.重復建設:每個應用系統都有獨立的用戶管理系統;
2.用戶類型復雜:除了校內師生用戶,還有校外用戶、外部系統開發用戶等等;
3.用戶需要記憶多個賬戶和口令,使用極為不便,容易造成多種安全隱患;
4.分散的管理模式,成本高,效率低;無法實現統一認證和授權,多個身份認證系統使安全策略必須逐個在不同的系統內進行設置,因而造成修改策略的進度可能跟不上策略的變化;也很容易發生管理疏忽和安全漏洞;
5.無法統一分析用戶的應用行為;因此對于有多個業務系統的應用,需要配置一套統一的身份認證系統,以實現集中統一的身份認證,并減少整個系統的成本。
單點登錄系統的目的就是為應用系統提供集中統一的身份認證,實現“一點登錄、多點漫游、即插即用、應用無關”的目標,方便用戶使用。
所需解決的問題
由于所面臨的緊迫狀況,因此迫切需要從根本上改變這種情況,需要滿足或解決如下的問題:
1.技術需要更多地遵守在法律法規的相關要求,考慮對個人的隱私進一步保護。
2.業務的感知更加敏捷,師生和合作伙伴的訪問更快速,B2B集成度更高和改變需求的反應更敏捷。
3.業務需要提供更安全的保護,包括身份隱私的保護,身份管理的必要性,訪問控制的緊迫性和審計的必要性,因此完整、統一的安全解決方案勢在必行。
除了上述所提到的這幾個方面外,還需要解決:不需要與任何產品集成,能夠實現解決跨應用程序和數據的常見安全性問題,此外還能保護業務流程和Web服務(SOA),同時還要保護傳輸中的數據以及處于靜止狀態的數據,加強內部和外部威脅的檢測和防范,除此之外還可熱插拔并且是基于行業或國家標準能跨領先的應用程序并能與Web服務器、應用服務器、門戶、數據庫以及其他IT系統進行松耦合的協調工作。
統一安全平臺的特征
統一認證平臺必須滿足或至少提供認證(Authentication)、授權(Authorizaton),審計(audit)、賬戶管理(Account)四大基本特征。單點的登錄與退出以及用戶和口令應安全且方便易用。西南財經大學使用Oracle和開源軟件構建了校園安全統一身份認證平臺。
身份管理平臺介紹
身份管理介紹
Oracle身份管理按照其官方的描述是一個完整的和集成的下一代身份管理平臺,提供突破性的可擴展性,使組織能夠快速地在遵守法規的要求下,保護敏感的應用程序和數據。它能使組織有效地管理跨越所有企業資源的用戶身份以及這些用戶端到端的生命周期,包括防火墻內和外部以及云中。
其中身份認證服務是整個系統的核心部分,控制所有遠程用戶對網絡和應用系統的訪問,提供全面的認證、授權和審計服務。用戶在登錄系統時,插上智能卡,通過安全加密通道與遠程身份認證服務器通訊,由認證服務器完成對用戶身份的認證,并得到當前用戶的身份以及系統的授權信息。
Oracle身份管理平臺(簡稱IDM)包括身份管理,角色管理,訪問控制管理,Weiservices管理,目錄服務管理,審計管理以及平臺安全,其邏輯架構如圖1所示。
Oracle身份管理11gR2共包含三個組件:即身份治理(Identity Governance),訪問管理(Access Management),目錄服務(Directory Serclevices):其中身份治理包含提供用戶注冊、訪問請求、角色生命周期管理、用戶配置、訪問認證、閉環管控以及特權賬戶管理等功能。訪問管理提供身份驗證、單點登錄、身份授權、聯合、欺詐檢測以及移動和社交登錄等功能。目錄服務提供虛擬目錄、LDAP存儲、元目錄和同步服務等功能。特點如下:1.集中賬號管理;2.集中身份認證管理;3.集中授權管理;4.集中日志審計管理;5.集中日志審計管理。
由于整個Oracle身份管理涉及的內容眾多,在此,本文僅以其中的統一身份認證授權即單點登錄來做介紹。
OAM介紹
Oracle Access Management是一種基于Java企業版(Java EE)的企業級安全應用程序,提供全方位的Web周邊安全功能和Web單點登錄服務,包括身份上下文,身份驗證和授權、政策管理、測試、風險分析和審計,并提供對機密信息的受限訪問。
Single Sign-On(SSO)即單點登錄,在多個應用系統中,用戶只需要登錄一次就可以訪問所有相互信任的應用系統。在此條件下,管理員無需修改或干涉用戶登錄就能方便地實施希望得到的安全控制了。
Oracle現有兩套單點登錄的解決方案:Oracle Access Manager,Oracle Single Sign-On Server(OSSO)。Oracle官方推薦Access Manager作為SSO的解決方案,Oracle Single Sign-On Server的高級用戶最終也會建議遷移到Oracle Access Manager解決方案上。本文只介紹通過OAM Agent(WebGate)這種方式。其他方式請參考Oracle相關文檔。
1.OAM組件
OAM包含了以下三個組件:
Access Server:一個獨立的服務器,為Accesgates提供了授權,驗證以及審計等服務,安裝OAM的時候自帶的。
WebGate:攔截HTTP請求并將其轉向AccesServer中進行驗證與授權。
Identity Assertion Provider(IAP):一類安全provider,通過驗證產生cookie中的信息對用戶身份進行斷言。
2.OAM功能
OAM為企業應用提供了以下功能:身份驗證,身份管理(通過與OID進行集成),訪問控制與授權,訪問審計,單點登錄。
3.OAM單點
登錄流程一般情況下,用戶會通過瀏覽器對Weblogic中運行的程序進行訪問,Oracle HTTP Server(OHS)會使用OAM Webagte對用戶發出的請求進行攔截,檢驗資源是否為受保護的資源,并將其轉向到OAM的Policy服務器進行身份驗證。OAM對用戶身份驗證成功之后,OAM會產生一個會話憑證即一個cookie,該cookie可以比作單點登錄的令牌。獲得令牌以后,OAM會根據其身份信息,使用IAP進行斷言并進行授權,根據授權級別以及授權結果,返回相應的請求資源。
從其原理可知:
1.OAM主要做了兩個工作:(a)驗證單點登錄cookie是否存在;(b)檢查所請求的資源是否為被保護的。
2.WebGate是Web服務器的一個插件,用于攔截HTTP請求,并把請求導向Oracle Access Manager(OAM)來獲取用戶認證。
3.Oracle OAM通過Cookie存儲用戶的信息,進而通過Cookie來實現單點訪問授信站點。
打造企業級統一身份認證與一體化訪問控制的具體實踐
在高校信息化建設中,由數字校園向智慧校園建設發展過程中,要建立一個完整統一、安全可控的身份認證與管理集中化,身份管理虛擬化,保護應用系統安全的統一身份認證和管理平臺。西南財經大學統一身份認證授權管理策略授權邏輯架構圖如圖2所示。
一體化安全訪問控制的架構與部署
如圖2,在用戶訪問層,采用Nginx做為代理加速服務,結合NGINX、OWASP-MODSECURITY-CRS。OWASP-MODSECURITY-CRS是一個開放源代碼、高效、低維護規則的Nginx Web應用防火墻模塊。其主要目標是加固Web應用程序,以抵御SQL注入、跨站腳本、跨域偽造請求、本地和遠程文件包含漏洞,并配合SSL證書。所有訪問均強制啟用SSL并在該層完成。因此,該層可架構在IDC的邊界上。
通過CRM對用戶賬戶資源的管理
CRM既是一種管理理念、軟件和技術,也是一種應用系統。CRM使用的技術包括Web、數據庫、數據倉庫、數據挖掘等。一個完整、有效的CRM應用系統,由四個子系統組成:業務操作管理子系統、客戶合作管理子系統、數據分析管理子系統和信息技術管理子系統。西南財經大學通過采用開源軟件SuagrRM為基礎平臺,進行深度的二次開發以適應學校兩校區信息化建設的需求,為學校師生的教學、管理、生活等提供更加全面、便捷的信息服務。
學校為每個注冊的教職工、普通類學生(包括本科生和研究生,留學生,交換生)和校友提供了一個統一的身份標識,并根據統一身份認證賬戶及其相應權限提供用戶相應的網絡及信息服務。
OUD的部署
OUD是Oracle統一的目錄與存儲,代理同步和虛擬化功能的所有功能于一身的目錄解決方案。它提供了所有的高性能企業和運營商級環境所需要的服務。統一的目錄,確??蓴U展性,以數十億的條目,安裝方便,彈性部署企業的管理和有效的監測。OUD服務器是根據一個獨立的LDAP目錄服務守護進程(slapd)工作的。復制(導入)服務也是通過Unix守護進程的支持下完成的。
OUD 11gR2中的新功能:1.基于位置的搜索社交網絡應用;2.Oracle數據庫企業用戶安全的支持(EUS);3.開箱即用的JVM;4.兼容Oracle目錄服務器企業版與共存或過渡到OUDODSEE和OUD之間的復制;5.能夠移動測試和生產環境之間的系統;6.身份存儲Oracle的IDM產品。
OAM的部署
OAM為Oracle訪問管理提供了補充傳統的訪問管理功能創新服務。例如,自適應認證(SSO)的聯合單點登錄,風險分析和細粒度的授權擴展到移動客戶端和移動應用程序和訪問門戶,允許客戶構建自己的私有云SSO服務。服務可以被許可并根據需要,以滿足組織的特定需要啟用。訪問管理的服務器端所提供的服務托管在OracleWebLogic服務器上、防御接入管理層攔截器和過濾器(訪問管理WebGate、Web服務和API網關)以及移動和社交服務客戶端SDK,均可根據需要安裝在移動設備上和安裝在個人電腦(臺式機和筆記本電腦)上。
數據庫層介紹
為了保證整套系統的高效、安全、穩定和友好的提供服務,考慮到后期的維護難度,我們對所使用的數據庫Oracle和OUD均采用了雙機主從熱備式的架構。并采用OracleEM(企業管理器)進行整個系統的運行監控與健康檢查。
對應用系統的改造
基于對現有應用系統改造影響最小原則和安全穩定原則,我們采用了對校內如OA系統,郵件系統,人事,學生相關事務,教務等絕大多數應用系統域名進行管控,將其全部解析指向到用戶訪問接入層。而應用系統只需取得從認證系統(OAM)發送過來的HTTP頭里含有的特殊標識即可,幾乎不用改動其他任何代碼。在接入層,開啟日志審計與安全檢測過濾。
通過實際應用測試發現:
1.其架構的良好伸縮性與并發處理能力,可以很好地承擔應對如選課高峰的負荷。
我們采用了4臺OAM做負載均衡,后端采用了Oracle RAC,所有應用目前集成總數達到20多個,采用RedHatAS6,OAM+OUD部署在VMWare的環境中,單臺內存32GB。經過壓力測試,可以得到4000次/秒,完全滿足校園內的應用。
2.應用系統改造小,由于只需調整認證處的代碼,OAM的特征值含在了HTTP的頭里,因此只需修改很少的認證代碼即可快速高效無縫整合以實現單點認證。
3.安全性較好,將應用系統隱藏在WebGate集群后面,有效降低了安全風險。
綜上,系統架構完成后,用戶訪問校內任何應用系統均會被首先強制并加載SSL證書到認證登錄頁面。從而較好地實現了集中授權與管控,減少了后期的維護,用戶體驗也很好。
通過對校園統一身份認證與管理平臺的建設,實現統一認證管理、統一授權管理、統一審計管理和統一賬號管理,實現以用戶為中心的賬號生命周期管理,逐步解決了技術規范的統一,對賬戶管理實現了流程化和標準化,對信息系統中的數據進行了重新梳理,簡化賬號管理工作,節約了管理成本,同時促進了源系統數據質量的提升。此外,由于處于IDC的邊界,有利于保護IDC的內部服務安全。
(作者單位為西南財經大學信息與教育技術中心)