陳立平 溫一軍
摘 要:隨著大數(shù)據(jù)、物聯(lián)網(wǎng)、人工智能、信息安全等信息技術(shù)的快速發(fā)展,各個高校的智慧校園建設(shè)的整體水平得到了很大的提升。而高校財務(wù)預(yù)算的信息化是智慧校園建設(shè)的重要組成部分,可以有效控制高校多個方面的費用支出、降低成本,提高國家財政撥款資金的使用效率。文章設(shè)計了基于智慧校園的預(yù)算管理系統(tǒng),該系統(tǒng)包括預(yù)算經(jīng)費撥入、報銷支出、查詢和生成報表、基礎(chǔ)數(shù)據(jù)配置等模塊。并從安全的角度出發(fā)對應(yīng)用軟件系統(tǒng)做了代碼優(yōu)化,提高系統(tǒng)安全性,有效防范SQL注入等網(wǎng)絡(luò)攻擊。該系統(tǒng)根據(jù)智慧校園服務(wù)總線的接口規(guī)范,實現(xiàn)了與智慧校園的統(tǒng)一認(rèn)證,查詢系統(tǒng)接入移動端今日校園,為教職員工提供多方位的查詢服務(wù)。
關(guān)鍵詞:服務(wù)質(zhì)量;智慧校園;預(yù)算管理;大平臺;單點登錄;信息安全
隨著大數(shù)據(jù)、物聯(lián)網(wǎng)等信息技術(shù)的快速應(yīng)用,高校原先信息化建設(shè)中的軟件模式已經(jīng)不能滿足工作需求和校園網(wǎng)環(huán)境,而以“大平臺、微應(yīng)用”為設(shè)計理念的信息化系統(tǒng)成為很多高校信息化建設(shè)的主流產(chǎn)品,主要思想是在統(tǒng)一平臺的基礎(chǔ)上對已有的系統(tǒng)和數(shù)據(jù)進(jìn)行整理和重構(gòu),以重移動輕PC的形式進(jìn)行展現(xiàn),以碎片化的形式提供服務(wù)。
高校預(yù)算管理系統(tǒng)作為智慧校園信息化系統(tǒng)的重要組成部分,在大平臺的基礎(chǔ)上,進(jìn)行大量的整合和優(yōu)化,提高了預(yù)算服務(wù)的質(zhì)量和水平。
1 預(yù)算管理系統(tǒng)功能模塊
預(yù)算管理系統(tǒng)實現(xiàn)了學(xué)院各類項目經(jīng)費的全程管理,通過報銷的數(shù)字化,學(xué)校管理人員可以查看整體經(jīng)費使用情況,項目負(fù)責(zé)人可以查看個人預(yù)算項目經(jīng)費余額以及使用詳情,財務(wù)人員可以實時查看每個項目的報銷額度,防止超過報銷余額,以及對預(yù)申請的項目進(jìn)行資金凍結(jié)等。主要功能包括預(yù)算經(jīng)費撥入、報銷支出、查詢和生成報表等。預(yù)算項目經(jīng)費撥入模塊功能包括各類預(yù)算項目的定義,以及預(yù)算經(jīng)費的撥入。預(yù)算撥入詳情模塊記錄每一筆預(yù)算經(jīng)費撥入的詳細(xì)情況,包括撥入金額、下達(dá)日期等信息;報銷管理模塊對每個預(yù)算項目的報銷進(jìn)行電子化管理,包括報銷時間、報銷人、摘要、金額、賬號等。其他功能模塊還包括支出詳情模塊、權(quán)限設(shè)置模塊及基礎(chǔ)數(shù)據(jù)配置模塊等[1]。
預(yù)算支出列表如圖1所示,報銷界面如圖2所示。
2 統(tǒng)一認(rèn)證的設(shè)計
為更好地為師生服務(wù),依據(jù)智慧校園項目方案的總體規(guī)劃,預(yù)算管理系統(tǒng)要實現(xiàn)統(tǒng)一認(rèn)證。統(tǒng)一認(rèn)證又稱為單點登錄(Single Sign On,SSO),是指在多系統(tǒng)應(yīng)用群中登錄一個系統(tǒng),便可在其他所有系統(tǒng)中得到授權(quán)而無需再次登錄,包括單點登錄和單點注銷,是目前比較流行的企業(yè)業(yè)務(wù)整合的方案之一。
2.1 單點登錄的設(shè)計
在智慧校園統(tǒng)一認(rèn)證體系中,有兩臺服務(wù)器專門用作獨立的認(rèn)證服務(wù),其中一臺Redis1是主備,另一臺Redis2是熱備。一般情況下是主備Redis1提供認(rèn)證服務(wù)。只有認(rèn)證服務(wù)能接受用戶的賬號、密碼等信息,預(yù)算系統(tǒng)不再提供登錄入口,只接受認(rèn)證服務(wù)Redis的間接授權(quán)。認(rèn)證服務(wù)驗證賬號密碼正確,則創(chuàng)建授權(quán)令牌,該令牌作為參數(shù)發(fā)送給預(yù)算管理系統(tǒng),預(yù)算管理系統(tǒng)拿到令牌,即得到授權(quán),可以在授權(quán)的基礎(chǔ)上創(chuàng)建局部回話SESSION[2]。認(rèn)證過程流程如圖3所示,認(rèn)證過程序列如圖4所示。
2.2 單點注銷的設(shè)計
在預(yù)算管理系統(tǒng)中注銷系統(tǒng),所有參與統(tǒng)一認(rèn)證的系統(tǒng)都會被注銷。注銷過程的序列如圖5所示。
對于預(yù)算管理系統(tǒng)的用戶來說,可以發(fā)起注銷請求。預(yù)算系統(tǒng)收到該請求后,根據(jù)會話ID得到令牌,向統(tǒng)一認(rèn)證中心發(fā)起注銷請求。中心在收到注銷請求令牌后,銷毀全局會話,并向其他系統(tǒng)如圖5中的一卡通系統(tǒng)發(fā)起注銷請求,一卡通系統(tǒng)銷毀局部會話。認(rèn)證中心返回用戶登錄界面[3]。
3 統(tǒng)一認(rèn)證的實現(xiàn)
根據(jù)單點登錄中統(tǒng)一認(rèn)證的流程,利用智慧校園平臺服務(wù)供應(yīng)商提供的接口,通過C#語言實現(xiàn)了預(yù)算管理系統(tǒng)的統(tǒng)一身份認(rèn)證。在預(yù)算管理系統(tǒng)中,接口攔截用戶登錄請求,重定位到統(tǒng)一認(rèn)證頁面,用戶輸入用戶名和密碼,點擊登錄提交請求。統(tǒng)一認(rèn)證中心將提交的用戶名和密碼跟用戶數(shù)據(jù)庫中的用戶名和密碼進(jìn)行比對,如果比對一致,則校驗成功,將此次會話狀態(tài)標(biāo)志為已登錄,通過Guid.NewGuid().ToString()創(chuàng)建一串全球唯一的字符串作為授權(quán)令牌回傳給預(yù)算系統(tǒng)。預(yù)算管理系統(tǒng)接口接收到該令牌后再提交給統(tǒng)一認(rèn)證中心驗證,校驗該令牌是否過期,如果沒有過期,會將預(yù)算管理系統(tǒng)的URL地址以鍵值對的形式保存到Redis中,并設(shè)置有效期。預(yù)算管理系統(tǒng)在收到認(rèn)證中心返回的令牌有效后,把會話ID和令牌綁定并保存,成功打開預(yù)算系統(tǒng)的主界面。
在VS2012開發(fā)環(huán)境中,首先要將平臺供應(yīng)商提供的接口DLL拷貝到預(yù)算管理系統(tǒng)的bin目下,在項目中添加引用該動態(tài)庫。然后需要配置web.config,實現(xiàn)對登錄請求的攔截和重定向。
casServerLoginUrl=”統(tǒng)一認(rèn)證URL” serverName=”預(yù)算管理系統(tǒng)URL”
notAuthorizedUrl=”~/NotAuthorized.aspx” cookiesRequiredUrl=”~/CookiesRequired.aspx”
redirectAfterValidation=”true” gateway=”false” renew=”false” singleSignOut=”true”
ticketTimeTolerance=”5000” ticketValidatorName=”Cas20”
serviceTicketManager=”CacheServiceTicketManager” gatewayStatusCookieName=”CasGatewayStatus”
基于.NET的Form認(rèn)證的配置如下:
loginUrl=”統(tǒng)一認(rèn)證URL” timeout=”30” defaultUrl=”預(yù)算管理系統(tǒng)URL”
cookieless=”UseCookies” slidingExpiration=”true” path=”/”
根據(jù)asp.net對HTTP請求處理過程可以得知,HttpModules是HTTP請求到達(dá)真正處理中心之前的必經(jīng)之路,在web.Config中HttpModules的配置如下:
type=”DotNetCasClient.CasAuthenticationModule,DotNetCasClient” /> 其中name是Module的名稱,type是指定由哪個類來實現(xiàn),第一個參數(shù)表示類名稱,第二參數(shù)表示DLL名稱,即程序集名稱。 與統(tǒng)一認(rèn)證相關(guān)的HttpModul常用事件如表1所示。 此外,還要對.Net自身的用戶會話數(shù)據(jù)Session進(jìn)行配置,有4種mode模式:Off,InProc,StateServer及SqlServer,其中Off是關(guān)閉模式,不需要使用Session;InProc是Session直接存儲在IIS進(jìn)程中,雖然獲取速度快,但易丟失;StateServer是Session存儲在單獨的內(nèi)存緩沖區(qū)中,再由單獨一臺服務(wù)器上運行的Asp.net SateService來控制整個緩沖區(qū),不易丟失,但速度慢;SqlServer是Session存儲在Sqlserver數(shù)據(jù)庫中持久化保存。綜合多種因素考慮,本系統(tǒng)采用的是Inproc方式。 用戶在預(yù)算管理系統(tǒng)中點擊退出按鈕提交注銷請求,接口會攔截請求并統(tǒng)一認(rèn)證中心發(fā)起注銷請求。認(rèn)證中心收到該請求后,注銷全局會話,并通知所有上述保存在鍵值對中的系統(tǒng)注銷。除了統(tǒng)一認(rèn)證注銷外,.Net本身也需要清除會話Session,并讓本地Cookie過期。 4 與平臺的對接 根據(jù)智慧校園建設(shè)方案的總體要求,在服務(wù)總線接口規(guī)范的基礎(chǔ)上,完成與大平臺的對接,預(yù)算系統(tǒng)成為服務(wù)大廳的一個應(yīng)用APP。用戶登錄服務(wù)大廳后就可以直接查看和訪問預(yù)算管理系統(tǒng)。 首先,在統(tǒng)一身份認(rèn)證管理系統(tǒng)中增加預(yù)算管理系統(tǒng)應(yīng)用,使之成為可信任應(yīng)用,應(yīng)用名稱為預(yù)算管理系統(tǒng),應(yīng)用URL為https://預(yù)算管理系統(tǒng)URL/**。并對該應(yīng)用和目錄的訪問用戶和用戶組進(jìn)行授權(quán),包括授權(quán)開始時間、授權(quán)結(jié)束時間、允許訪問IP地址和拒絕訪問IP地址等。然后在服務(wù)大廳應(yīng)用管理平臺管理中心創(chuàng)建預(yù)算管理系統(tǒng)應(yīng)用APP,指定應(yīng)用名稱和訪問URL,分配業(yè)務(wù)域,對用戶進(jìn)行授權(quán),授權(quán)后的用戶就可以在服務(wù)大廳看到預(yù)算管理系統(tǒng)的APP圖標(biāo),根據(jù)自己的身份和權(quán)限進(jìn)行訪問。 智慧校園建設(shè)是一個長期而復(fù)雜的系統(tǒng)工程,需要領(lǐng)導(dǎo)的大力支持,進(jìn)行架構(gòu)的頂層設(shè)計;需要各業(yè)務(wù)部門的通力合作,梳理和規(guī)范業(yè)務(wù)流程;需要信息部門的技術(shù)保障,充分考慮大數(shù)據(jù)、人工智能等技術(shù)趨勢和安全性保障,同時也離不開一款優(yōu)秀的平臺軟件系統(tǒng)和簡單易用的應(yīng)用軟件系統(tǒng)。 [參考文獻(xiàn)] [1]樊鐵成,蔣磊宏,蘇偉,等.高等學(xué)校智慧校園應(yīng)用案例[M].北京:清華大學(xué)出版社,2017. [2]張劍橋.ASP.NETCore跨平臺開發(fā)從入門到實戰(zhàn)[M].北京:電子工業(yè)出版社,2017. [3]楊秋黎,金智.Windows網(wǎng)絡(luò)編程[M].北京:人民郵電出版社,2016. Abstract:With the rapid development of information technology such as big data, Internet of Things, artificial intelligence, information security, the overall level of the construction of smart campus in Colleges and universities has been greatly improved. The informatization of university financial budget is an important part of the construction of smart campus, which can effectively control the expenditure of various aspects of universities, reduce costs, and improve the efficiency of the use of state financial allocation funds. This paper designs the budget management system based on smart campus. The system includes budget allocation, reimbursement expenditure, query and report generation, basic data configuration and other modules. From the point of view of security, the application software system is optimized to improve system security and effectively prevent network attacks such as SQL injection. According to the interface specification of smart campus service bus, the system achieves the unified authentication with smart campus. The query system is connected to the mobile campus today and provides multi-directional query service for teachers and staff. Key words:quality of service; smart campus; budget management; large platform; single sign on; information security