曲 佳
(承德石油高等??茖W(xué)校信息中心,河北 承德 067000)
目前辦公軟件的身份認(rèn)證技術(shù)主要有單因子認(rèn)證、雙因子認(rèn)證、多因子認(rèn)證、生物特征認(rèn)證、數(shù)字認(rèn)證。單因子認(rèn)證知道一個(gè)條件即可;雙因子認(rèn)證本是指使用兩種獨(dú)立不相干的證據(jù)來證明身份的認(rèn)證;多因子認(rèn)證是三種以上不同因子結(jié)合的認(rèn)證;數(shù)字認(rèn)證是基于數(shù)字證書的認(rèn)證,比如優(yōu)盾;生物特征認(rèn)證是利用生物本身的DNA、臉像、虹膜、指紋等來進(jìn)行身份認(rèn)證。這些認(rèn)證方法都是以軟硬件形式實(shí)現(xiàn)的,因此每種辦公軟件都需要單獨(dú)實(shí)現(xiàn)認(rèn)證功能。辦公軟件的認(rèn)證模塊單獨(dú)提取后在開發(fā)辦公軟件時(shí)便不需要考慮?;谏鲜鏊枷腴_發(fā)一套面向辦公軟件的身份認(rèn)證系統(tǒng),此身份認(rèn)證系統(tǒng)利用三層結(jié)構(gòu)的技術(shù)手段來實(shí)現(xiàn)一個(gè)面向辦公軟件身份認(rèn)證的新方法。利用在辦公軟件中省略用戶名、密碼的認(rèn)證方式可直接識別當(dāng)事人的真實(shí)身份,方便、快捷、安全性高。
面向辦公軟件的身份認(rèn)證系統(tǒng)設(shè)計(jì)開發(fā)要求能夠在辦公自動(dòng)化系統(tǒng)(OA)上確認(rèn)用戶身份,盡量屏蔽用戶名、密碼,能夠提供數(shù)據(jù)接口供二次開發(fā)使用,用戶使用該系統(tǒng)時(shí)可以根據(jù)電腦隨機(jī)生成電子密碼,相對辦公自動(dòng)化系統(tǒng)獨(dú)立、攜帶方便。本系統(tǒng)科學(xué)地分析用戶需求,運(yùn)用先進(jìn)的技術(shù)手段保證該軟件系統(tǒng)得以分階段實(shí)現(xiàn),并在軟件試運(yùn)行的過程中不斷完善和改進(jìn),最終完成一個(gè)符合辦公軟件的身份認(rèn)證系統(tǒng)。
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展辦公自動(dòng)化軟件(OA)帶給人們極大的方便,相應(yīng)的,無紙化也走進(jìn)了廣大企事業(yè)單位[1]。隨著辦公自動(dòng)化軟件(OA)的普及,所有企事業(yè)單位的文件及公函都是以電子形式存在的。所以領(lǐng)導(dǎo)干部和行政管理人員在辦公自動(dòng)化軟件(OA)文件處理使用過程中,網(wǎng)絡(luò)安全上主要面臨三方面的問題:①在使用辦公軟件的同時(shí)如何保證使用者身份的真實(shí)性以及不可抵賴性。②單位領(lǐng)導(dǎo)干部如何通過辦公軟件對電子文件或合同進(jìn)行簽發(fā)。③如何克服傳統(tǒng)的“用戶名/口令”的安全隱患。由于三個(gè)問題的存在,大多數(shù)企事業(yè)單位的公文都要由當(dāng)事人在紙面上簽字、蓋章。這樣就減少了對辦公自動(dòng)化軟件(OA)的利用率。雖然可以通過“數(shù)字簽名”的方法來解決以上三個(gè)問題,但是難以使用、價(jià)格昂貴是一般企事業(yè)單位接受不了的。而通過本文所研發(fā)的“辦公軟件的身份認(rèn)證系統(tǒng)”,則可有效地利用網(wǎng)絡(luò)資源,控制成本,降低使用難度[2]。
本系統(tǒng)是利用計(jì)算機(jī)軟件手段代替身份認(rèn)證的一種技術(shù)。利用三層結(jié)構(gòu)的技術(shù)手段來實(shí)現(xiàn)一個(gè)電子身份認(rèn)證的新方法。通過此方法可以在辦公自動(dòng)化系統(tǒng)中不用輸入“用戶名/密碼”手段就能夠在辦公自動(dòng)化(OA)中識別當(dāng)事人的真實(shí)身份,方便、快捷、安全性高。本系統(tǒng)結(jié)構(gòu)采用后臺數(shù)據(jù)庫、中間層和客戶端組成。適用于企業(yè)與事業(yè)單位。本軟件可以與硬件結(jié)合也可以在計(jì)算機(jī)上單獨(dú)使用節(jié)約成本,采用三層結(jié)構(gòu)結(jié)構(gòu)增強(qiáng)軟件的安全性。通過自主開發(fā)的中間層有效隔離數(shù)據(jù)庫增強(qiáng)安全性、可靠性。此軟件通過微軟最新的.NET實(shí)現(xiàn)可以部署在微軟公司的任何操作系統(tǒng)上。通過中間層提供的接口可以方便用戶進(jìn)行軟件的二次開發(fā)。本系統(tǒng)的客戶端采用(用戶名/密碼)和本地隨機(jī)密碼(存儲(chǔ)本地)認(rèn)證機(jī)制,用戶關(guān)閉客戶端下線的同時(shí)可自動(dòng)關(guān)閉服務(wù)器端的認(rèn)證端口,并且由服務(wù)器端生成本地隨機(jī)密碼發(fā)送給客戶端??蛻舳耸盏椒?wù)器發(fā)來的本地密碼并存入本地的文件中以便下次登路使用以達(dá)到更佳安全的目的,攜帶方便可以放到優(yōu)盤或其它硬件設(shè)備上[3]。
面向辦公軟件的身份認(rèn)證系統(tǒng)的設(shè)計(jì)開發(fā)要求能夠在辦公自動(dòng)化系統(tǒng)(OA)上確認(rèn)用戶身份,在辦公自動(dòng)化系統(tǒng)(OA)上盡量屏蔽用戶名、密碼,能夠提供數(shù)據(jù)接口供二次開發(fā)使用,用戶使用該系統(tǒng)時(shí)可以根據(jù)電腦隨機(jī)生成電子驗(yàn)證碼,相對辦公自動(dòng)化系統(tǒng)獨(dú)立、攜帶方便。本系統(tǒng)科學(xué)地分析用戶需求,運(yùn)用先進(jìn)的技術(shù)手段保證該軟件系統(tǒng)得以分階段實(shí)現(xiàn),并在軟件試運(yùn)行的過程中不斷完善和改進(jìn),最終完成一個(gè)符合辦公軟件的身份認(rèn)證系統(tǒng)[4]。軟件基于微軟公司.NET4.0平臺開發(fā),適用于所有微軟公司操作系統(tǒng),方便可靠。
本軟件前端系統(tǒng)和中間層服務(wù)器采用微軟公司的.NET4.0平臺編寫可以運(yùn)行在裝有.net framework 4.0的一切操作系統(tǒng)上。采用.net framework框架可以增強(qiáng)和保證系統(tǒng)代碼的安全性和可靠性[5]。
本身份認(rèn)證系統(tǒng)結(jié)構(gòu)采用后臺數(shù)據(jù)庫、中間層和客戶端組成,中間層由Web Service服務(wù)器和心跳服務(wù)器組成。本項(xiàng)目的中間層封裝了一個(gè)透明的數(shù)據(jù)訪問層。不僅可以實(shí)現(xiàn)潛在的數(shù)據(jù)安全,有效、方便的訪問,并且可以快速適應(yīng)的數(shù)據(jù)指標(biāo)體系的變化,縮短基礎(chǔ)數(shù)據(jù)的變化對系統(tǒng)響應(yīng)時(shí)間,該中間件不但可以提供最基本的對象關(guān)系映射,還提供事務(wù)及事務(wù)回滾、連接檢查、數(shù)據(jù)批量更新、實(shí)體緩存、在線監(jiān)視、數(shù)據(jù)連接、存儲(chǔ)過程執(zhí)行等功能,并提供數(shù)據(jù)接口可進(jìn)行二次開發(fā)以及擴(kuò)展能力。后臺數(shù)據(jù)庫單獨(dú)運(yùn)行在一臺服務(wù)器上與中間層軟件分開,增強(qiáng)安全性,前端運(yùn)行在客戶電腦上。如圖1所示。
客戶端軟件的作用主要是進(jìn)行用戶的身份驗(yàn)證和對自身行為的一種設(shè)定,也是接收管理員信息的一種工具??蛻舳塑浖碛凶灾餮邪l(fā)的三項(xiàng)密碼認(rèn)證系統(tǒng):此系統(tǒng)由三種不同的密碼機(jī)制組成。第一項(xiàng)密碼可以采用手工輸入方法也可采用非手工方法獲取。第二項(xiàng)密碼由中間層服務(wù)器每60 s隨機(jī)生成一次然后發(fā)送給客戶端。第三項(xiàng)密碼是軟件使用結(jié)束后由客戶端軟件隨機(jī)生成然后存入本地文件中,在軟件下次使用時(shí)調(diào)用。最后通過三項(xiàng)密碼共同參于軟件的安全認(rèn)證來確保用戶的真實(shí)性、安全性和可靠性。客戶端軟件還是檢測中間層服務(wù)器的重要工具。它可以將中間層服務(wù)器的狀態(tài)返回給用戶,可以判斷網(wǎng)絡(luò)是否正常(見圖2)。
中間層服務(wù)器由Web Service服務(wù)器和心跳服務(wù)器組成。Web Service服務(wù)器負(fù)責(zé)提供IO接口供開發(fā)人員調(diào)用以便2次開發(fā)。心跳服務(wù)器負(fù)責(zé)監(jiān)視用戶端的行為以及用戶端的狀態(tài)。并且及時(shí)更新數(shù)據(jù)庫。中間層服務(wù)器也是聯(lián)系客戶端和后臺數(shù)據(jù)庫的中間途徑。在該系統(tǒng)中是最重要的組成部分(見圖3)。
2.3.1 Web Service 服務(wù)器設(shè)計(jì)
為了兼容其它軟件、提高軟件的使用效率、減少軟件2次開發(fā)的成本,本項(xiàng)目數(shù)據(jù)接口采用Web Service服務(wù)器,Web Service服務(wù)器主要是完成對數(shù)據(jù)的處理工作以及提供2次開發(fā)接口。
2.3.2 心跳服務(wù)器設(shè)計(jì)
心跳服務(wù)器是此系統(tǒng)中最重要的服務(wù)器。心跳服務(wù)器設(shè)計(jì)時(shí)主要從以下幾方面進(jìn)行考慮:
1)負(fù)責(zé)監(jiān)控Web Service服務(wù)器的狀態(tài)如果Web Service服務(wù)器異常則立刻發(fā)送信息給客戶端。2)負(fù)責(zé)完成初始化數(shù)據(jù)庫的工作,當(dāng)心跳服務(wù)器啟動(dòng)時(shí)會(huì)初始化后臺數(shù)據(jù)庫。3)對后臺數(shù)據(jù)庫狀態(tài)進(jìn)行監(jiān)控,如果后臺數(shù)據(jù)庫異常則發(fā)信息給客戶端。4)負(fù)責(zé)接受客戶端的請求,把客戶端的信息加入到后臺數(shù)據(jù)庫中。5)查看客戶端是否在線,如果在線不予理會(huì)。如果客戶端下線則刪除數(shù)據(jù)庫中用戶的內(nèi)容(見圖4)。6)動(dòng)態(tài)向在線的客戶端返回動(dòng)態(tài)口令。7)動(dòng)態(tài)分配網(wǎng)絡(luò)端口保證網(wǎng)絡(luò)安全。
心跳服務(wù)器最主要的是向每個(gè)客戶端發(fā)送心跳包,心跳包就是在客戶端和服務(wù)器間定時(shí)通知對方自己狀態(tài)的一個(gè)自己定義的命令字,按照一定的時(shí)間間隔發(fā)送,類似于心跳,所以叫做心跳包。用來判斷對方(設(shè)備、進(jìn)程或其它網(wǎng)元)是否正常運(yùn)行[6]。
本項(xiàng)目心跳服務(wù)器的作用主要是負(fù)責(zé)監(jiān)測客戶端程序是否在線,Web Server服務(wù)器是否正常,如果Web Service服務(wù)器不正常則會(huì)第一時(shí)間通知管理員。如果客戶端程序突然下線或者掉線則第一時(shí)間做出反應(yīng),連接Web Server服務(wù)器,對數(shù)據(jù)庫進(jìn)行清理在線名單操作。本項(xiàng)目的心跳服務(wù)器還起到初始化數(shù)據(jù)庫的作用。如果心跳服務(wù)器突然死機(jī)或者掉線,在下一次啟動(dòng)時(shí)會(huì)初始化數(shù)據(jù)庫并第一時(shí)間通知客戶端。
由于現(xiàn)在的辦公自動(dòng)化系統(tǒng)多數(shù)采用的B/S結(jié)構(gòu),所以本系統(tǒng)應(yīng)用在WEB頁面上使用時(shí)只需要安裝自主開發(fā)的網(wǎng)絡(luò)插件,需要調(diào)用Web Service服務(wù)器預(yù)留的數(shù)據(jù)接口與軟件(客戶端)結(jié)合使用,就可以進(jìn)行身份認(rèn)證,免去在界面上輸入“用戶名/密碼”。在WEB頁面上輸入動(dòng)態(tài)獲得的驗(yàn)證碼,便可自動(dòng)登錄到辦公自動(dòng)化系統(tǒng)中。結(jié)合AJAX技術(shù),當(dāng)用戶退出出認(rèn)證軟件時(shí),辦公自動(dòng)化系統(tǒng)將自動(dòng)退出??梢赃_(dá)到軟件(客戶端)在辦公自動(dòng)化在的效果。如圖5。
為了更好地讓本軟件與辦公自動(dòng)化系統(tǒng)銜接,本系統(tǒng)提供了一個(gè)網(wǎng)絡(luò)插件。本網(wǎng)絡(luò)插件利用微軟公司的AJAX技術(shù)編寫,主要由時(shí)鐘控件、Script Manager控件、Update Panel控件組成。通過此控件隔斷時(shí)間對Web Service服務(wù)器的在線狀態(tài)接口掃描,判定客戶端軟件是否在線,如果判定在線則繼續(xù)使用辦公自動(dòng)化系統(tǒng)。否則退出辦公自動(dòng)化系統(tǒng)。如圖6所示。
組合驗(yàn)證:S=P(x)+F(x)+M(x)
其中S為驗(yàn)證的最終結(jié)果P(x)為手動(dòng)輸入的“用戶名/密碼”,F(xiàn)(x)為本地存儲(chǔ)的驗(yàn)證碼,M(x)隨機(jī)生成的動(dòng)態(tài)驗(yàn)證碼。P(x):驗(yàn)證可以保護(hù)使用者的正確性。確保使用者的真實(shí)身份。F(x):驗(yàn)證客戶端的獨(dú)立性防止客戶端被盜用。M(x):一定時(shí)間變換一次驗(yàn)證網(wǎng)絡(luò)有效性防止信息被網(wǎng)絡(luò)篡改
通過組合多維密碼的驗(yàn)證方法,可有效防止信息篡改,保證使用人的獨(dú)立性,完成電子認(rèn)證。減少了使用難度。所有密碼均采用MD5加密技術(shù)。
此系統(tǒng)主要負(fù)責(zé)監(jiān)控用戶的行為狀態(tài),查看用戶是否正在使用此軟件,并將狀態(tài)回饋給服務(wù)器。服務(wù)器根據(jù)狀態(tài)對數(shù)據(jù)庫做出指示。此系統(tǒng)還可以監(jiān)控服務(wù)器的行為,將服務(wù)器的行為反饋給客戶端,客戶端通過服務(wù)器行為可判斷出服務(wù)器是否正常工作,通過此系統(tǒng)還可以實(shí)時(shí)監(jiān)控網(wǎng)絡(luò)的狀態(tài)(見圖7)。
此服務(wù)器由邏輯中間層(Web Service服務(wù)器)和狀態(tài)中間層(心跳服務(wù)器)構(gòu)成。邏輯中間層為系統(tǒng)的邏輯業(yè)務(wù)提供接口,用戶可以根據(jù)自身的需求動(dòng)態(tài)擴(kuò)充業(yè)務(wù)接口。狀態(tài)中間層服務(wù)器負(fù)責(zé)監(jiān)視所有服務(wù)器的網(wǎng)絡(luò)狀態(tài)并及時(shí)反饋給管理員,還有記錄用戶登路信息的作用。邏輯中間層和狀態(tài)中間層相互連接使中間層服務(wù)器更加穩(wěn)定。
現(xiàn)如今市面有很多身份認(rèn)證軟件,如農(nóng)業(yè)銀行的K寶,但是K寶軟件必須從網(wǎng)上下載證書,使用。比較麻煩,往往有的時(shí)候不適合大眾人群。普通的電子簽名軟件在架構(gòu)上也非常的麻煩,需要大量的軟、硬件。一個(gè)電子證書發(fā)放系統(tǒng)就需要龐大的硬件服務(wù)器,但是辦公軟件的身份認(rèn)證系統(tǒng)僅僅需要一點(diǎn)成本就可以帶來很大的效益。辦公軟件的身份認(rèn)證系統(tǒng)通過強(qiáng)大的網(wǎng)絡(luò)功能可以適用于網(wǎng)絡(luò)各種環(huán)境[8]。對中小型企業(yè)辦公、電子商務(wù)起到保駕護(hù)航的作用。而且此軟件還可以用于機(jī)關(guān)企業(yè)以及學(xué)校。辦公自動(dòng)化軟件(OA)的發(fā)展有賴于辦公服務(wù)的模式和領(lǐng)域的創(chuàng)新,辦公軟件的身份認(rèn)證系統(tǒng)的廣泛使用和普及將給辦公自動(dòng)化軟件(OA)帶來生機(jī)和活力??梢约涌燹k公自動(dòng)化軟件(OA)的普及和發(fā)展[9]。
本論文以電子身份認(rèn)證技術(shù)、中間層技術(shù)做為研究對象,得到了密碼組合技術(shù)及中間層軟件的一些結(jié)論。密碼組合技術(shù)加強(qiáng)了電子身份認(rèn)證過程中的復(fù)雜因素。中間層軟件技術(shù)更好的發(fā)揮了多層結(jié)構(gòu)作用,數(shù)據(jù)庫、Web Servers服務(wù)器與心跳服務(wù)器分布在不同的計(jì)算機(jī)上可大大減少服務(wù)器的負(fù)擔(dān),減少網(wǎng)絡(luò)的吞吐量。本項(xiàng)目對辦公自動(dòng)化系統(tǒng)用戶身份確認(rèn)有著指導(dǎo)做用。另外本系統(tǒng)還可以降低安全軟件的使用難度。
[1]杜鑫.高校數(shù)字圖書館IPSec VPN網(wǎng)絡(luò)的實(shí)現(xiàn)[J].承德石油高等專科學(xué)校學(xué)報(bào),2014,16(2):69-71.
[2]劉應(yīng)成.基于智能手機(jī)的導(dǎo)游系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用與軟件,2014,31(11):248-250.
[3]李濤.電子簽章技術(shù)及其在網(wǎng)絡(luò)電子合同中的應(yīng)用研究[D].上海:上海交通大學(xué),2005.
[4]李銳.基于XML和.NET技術(shù)的商用網(wǎng)站研究[D].重慶:重慶大學(xué),2002.
[5]葉菁.機(jī)場場務(wù)保障信息管理系統(tǒng)分析與設(shè)計(jì)——以新鄭機(jī)場為個(gè)案[D].天津:南開大學(xué),2011.
[6]趙闖.構(gòu)建數(shù)字化校園數(shù)據(jù)倉庫的方案研究[D].長春:東北師范大學(xué),2009.
[7]高璐曉.云閃雷電探測網(wǎng)數(shù)據(jù)傳輸與遠(yuǎn)程監(jiān)控的技術(shù)研究[D].武漢:華中科技大學(xué),2011.
[8]鐘文晶.實(shí)時(shí)數(shù)據(jù)可靠傳輸與數(shù)據(jù)集成技術(shù)的研究[D].北京:華北電力大學(xué)(北京),2011.
[9]孫志堅(jiān).政務(wù)網(wǎng)隔離與監(jiān)控技術(shù)研究與應(yīng)用[D].青島:中國海洋大學(xué),2010.