張繼德 劉盼盼
[摘 要] 本文從數(shù)據(jù)庫技術(shù)視角,對金融危機(jī)環(huán)境下會計(jì)信息共享保證措施進(jìn)行了探討。分析了數(shù)據(jù)庫技術(shù)目前存在的問題,提出了在金融危機(jī)環(huán)境下會計(jì)信息共享保證對策。
[關(guān)鍵詞] 信息共享;數(shù)據(jù)庫技術(shù);金融危機(jī);保護(hù)措施
doi:10.3969/j.issn.1673-0194.2009.10.004
[中圖分類號]F232[文獻(xiàn)標(biāo)識碼]A[文章編號]1673-0194(2009)10-0015-03
2008年,美國的金融危機(jī)迅速蔓延到全球,對中國的經(jīng)濟(jì)造成很大影響,中國的實(shí)體產(chǎn)業(yè):鋼鐵行業(yè)2008年行業(yè)全年利潤額850億元,比2007年的1 447億元同比下降41%;汽車行業(yè)2008年與上年同期相比,下半年產(chǎn)銷增速分別回落16.81個(gè)百分點(diǎn)和15.14個(gè)百分點(diǎn),全年汽車?yán)塾?jì)產(chǎn)銷自1999年后首次跌破10%以下;機(jī)械行業(yè)2008年全行業(yè)完成總產(chǎn)值大約8.5萬億元,比2007年增長了20%,全年各項(xiàng)指標(biāo)增長基本持平;化工行業(yè)2008年全年實(shí)現(xiàn)利潤1 500億元,上半年生產(chǎn)效益平穩(wěn)增長,下半年運(yùn)行情況出現(xiàn)逆轉(zhuǎn),行業(yè)增加值比上年增長10%,增速同比回落10.7個(gè)百分點(diǎn)。唯獨(dú)2008年中國軟件產(chǎn)業(yè)整體保持快速增長態(tài)勢,累計(jì)完成軟件業(yè)務(wù)收入7 572.9億元,同比增長29.8%,增速比上年同期高8.3個(gè)百分點(diǎn)。這說明在金融危機(jī)環(huán)境下,在外部環(huán)境惡化,市場壓力增加,效益增速下滑或者虧損的情況下,選擇利用信息技術(shù)提升企業(yè)競爭力和管理水平的要求增加。作為企業(yè)信息系統(tǒng)核心子系統(tǒng),會計(jì)信息系統(tǒng)的信息共享成為企業(yè)信息系統(tǒng)的使用者和提供者必須面對的問題。
一、會計(jì)信息共享存在的問題分析
在會計(jì)信息系統(tǒng)中,會計(jì)信息是對會計(jì)數(shù)據(jù)進(jìn)行加工處理得出的,可以有效輔助企業(yè)相關(guān)管理者進(jìn)行有關(guān)決策服務(wù)的。會計(jì)數(shù)據(jù)實(shí)際上是描述會計(jì)交易和事項(xiàng)的符號記錄,在計(jì)算機(jī)中,為了存儲和處理這些事物,就要抽出對這些事物感興趣的特征組成一個(gè)記錄來描述。在會計(jì)信息系統(tǒng)中數(shù)據(jù)庫就是長期儲存在計(jì)算機(jī)內(nèi)、有組織、可共享的會計(jì)數(shù)據(jù)集合,數(shù)據(jù)庫中的會計(jì)數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存,具有較小的冗余度,較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并可為各種用戶共享。
會計(jì)數(shù)據(jù)的管理依賴于數(shù)據(jù)庫技術(shù), 數(shù)據(jù)庫技術(shù)應(yīng)數(shù)據(jù)管理任務(wù)所需產(chǎn)生于20世紀(jì)60年代中期,是有關(guān)會計(jì)數(shù)據(jù)管理的最新技術(shù),它的出現(xiàn)在很大程度上促進(jìn)了計(jì)算機(jī)應(yīng)用于會計(jì)行業(yè)的發(fā)展?jié)B入。在會計(jì)信息系統(tǒng)中,數(shù)據(jù)庫可以供多個(gè)用戶共享,具有最低冗余度和較高的會計(jì)數(shù)據(jù)獨(dú)立性,但正因?yàn)闀?jì)信息系統(tǒng)的數(shù)據(jù)庫為許多用戶共享,更使得其中的數(shù)據(jù)庫技術(shù)問題尤為突出?,F(xiàn)如今,會計(jì)信息系統(tǒng)的數(shù)據(jù)庫以及數(shù)據(jù)庫技術(shù)已廣泛服務(wù)于國家各級政府、軍隊(duì)、商業(yè)部門及各個(gè)企業(yè),它不僅是每一筆電子交易、金融和企業(yè)可利用資源規(guī)劃的基礎(chǔ),也包含許多來自商業(yè)合作伙伴以及客戶的敏感性信息。因此,這些數(shù)據(jù)庫中會計(jì)數(shù)據(jù)的并發(fā)控制、完整性和安全性是非常重要的,但是往往管理員對于會計(jì)信息系統(tǒng)的數(shù)據(jù)庫所采取的安全檢查和防護(hù)措施遠(yuǎn)不及對操作系統(tǒng)和網(wǎng)絡(luò)系統(tǒng)的檢查和防護(hù)措施,所以數(shù)據(jù)庫因沒有做好安全檢查和防護(hù)措施而被黑客攻擊的事件屢見不鮮。在現(xiàn)今開放的網(wǎng)絡(luò)環(huán)境下,未來的會計(jì)信息系統(tǒng)將使得整個(gè)社會的會計(jì)信息實(shí)現(xiàn)全面共享,所以從數(shù)據(jù)庫技術(shù)方面加強(qiáng)會計(jì)信息共享的保證措施變得尤為重要。
二、會計(jì)信息共享保證措施
數(shù)據(jù)庫系統(tǒng)中的會計(jì)數(shù)據(jù)是經(jīng)由數(shù)據(jù)庫管理系統(tǒng)來統(tǒng)一進(jìn)行管理和控制的,為適應(yīng)會計(jì)數(shù)據(jù)共享的環(huán)境、保護(hù)數(shù)據(jù)庫環(huán)境、并保證數(shù)據(jù)庫中會計(jì)數(shù)據(jù)的安全可靠和正確有效性,數(shù)據(jù)庫管理系統(tǒng)必須提供統(tǒng)一的會計(jì)數(shù)據(jù)保護(hù)功能,通過并發(fā)控制、完整性控制和安全性控制等來達(dá)到控制會計(jì)數(shù)據(jù),實(shí)現(xiàn)有效共享的目的。
1.并發(fā)控制
作為共享資源的數(shù)據(jù)庫,它可以供多個(gè)用戶使用。當(dāng)多個(gè)用戶同時(shí)訪問、存取和修改數(shù)據(jù)庫時(shí),就有可能對會計(jì)數(shù)據(jù)庫的完整性產(chǎn)生破壞,容易產(chǎn)生丟失修改和不一致的問題,此時(shí)就需要對數(shù)據(jù)庫進(jìn)行并發(fā)控制,以保證數(shù)據(jù)庫中會計(jì)數(shù)據(jù)的一致性。并發(fā)控制機(jī)制的好壞是衡量一個(gè)數(shù)據(jù)庫管理系統(tǒng)性能的重要標(biāo)志之一。
并發(fā)控制在數(shù)據(jù)庫管理系統(tǒng)中是以事務(wù)為單位來進(jìn)行的。而事務(wù)是用戶定義的數(shù)據(jù)庫操作的一個(gè)系列,這些操作或者全部都做,或者全部都不做,是一個(gè)完整的不可分割的工作單位。事務(wù)有4個(gè)特性:原子性、一致性、隔離性、持久性。原子性是指一個(gè)事務(wù)的全部操作是一個(gè)整體,在邏輯上是一個(gè)不可分割的工作單位;一致性是指一個(gè)事務(wù)執(zhí)行的結(jié)果必須使得數(shù)據(jù)庫從一個(gè)一致性狀態(tài)轉(zhuǎn)變到另一個(gè)一致性狀態(tài);隔離性是指數(shù)據(jù)庫管理系統(tǒng)要保證多個(gè)事務(wù)并發(fā)執(zhí)行的效果要和系統(tǒng)一次只執(zhí)行一個(gè)事務(wù)也即串行執(zhí)行事務(wù)的效果一樣;持久性是指一個(gè)事務(wù)一旦提交上去,它對數(shù)據(jù)庫中會計(jì)數(shù)據(jù)的改變就應(yīng)該是永久性的,以后的操作或故障不會對其產(chǎn)生任何影響。并發(fā)控制有兩種基本方法:封鎖和版本。
(1)封鎖
封鎖是一種悲觀的并發(fā)控制機(jī)制。封鎖機(jī)制是指通過強(qiáng)制實(shí)施一個(gè)順序修改過程來達(dá)到阻止錯(cuò)誤修改的目的。在并發(fā)控制的實(shí)現(xiàn)中,要特別注意封鎖級別的選擇。封鎖級別也稱為鎖粒度,即封鎖的數(shù)據(jù)庫源的范圍。鎖的類型包括共享鎖和排他鎖,是數(shù)據(jù)庫管理系統(tǒng)提供的最常用的封鎖類型。共享鎖也稱為讀鎖或S鎖,它允許其他事務(wù)讀一個(gè)記錄或其他資源但不能修改它。排他鎖也稱為X鎖或?qū)戞i,它可以阻止另一件事務(wù)讀(并修改)一個(gè)記錄一直到它被解鎖。
所謂封鎖協(xié)議就是在對會計(jì)數(shù)據(jù)對象加鎖、持鎖和釋放鎖時(shí)所約定的一些規(guī)則。保證數(shù)據(jù)庫數(shù)據(jù)一致性的有3級封鎖協(xié)議,但是利用3級封鎖協(xié)議可以解決并發(fā)執(zhí)行時(shí)丟失修改、不可重復(fù)讀等的問題時(shí),又可能導(dǎo)致死鎖問題的產(chǎn)生——當(dāng)兩個(gè)或多個(gè)事務(wù)為同一公共資源加鎖,而且每一個(gè)事務(wù)必須等待其他事務(wù)來解鎖這一資源時(shí),就會產(chǎn)生困境,這就是死鎖。解決死鎖的兩種基本方法就是死鎖預(yù)防和死鎖解除。在事務(wù)開始時(shí),為全部所需的記錄加鎖就能預(yù)防死鎖。死鎖的預(yù)防可以通過一次封鎖法和順序封鎖法來解決。一次封鎖法就是要求每一個(gè)事務(wù)必須一次將所有需要使用的會計(jì)數(shù)據(jù)全部加鎖,否則將不予繼續(xù)執(zhí)行;順序封鎖法就是提前對某個(gè)會計(jì)數(shù)據(jù)對象規(guī)定一個(gè)封鎖順序,所有事務(wù)都要按照這個(gè)順序來進(jìn)行封鎖。死鎖解除是允許死鎖發(fā)生,但在數(shù)據(jù)庫管理系統(tǒng)里建立一種機(jī)制用來檢測和打破死鎖,數(shù)據(jù)庫管理系統(tǒng)可以用超時(shí)法或事務(wù)等待圖法來檢測死鎖。超時(shí)法就是當(dāng)一個(gè)事務(wù)的等待時(shí)間超過了規(guī)定的時(shí)限時(shí),就認(rèn)為是發(fā)生了死鎖;等待圖法是用圖來動態(tài)地反映所有事務(wù)的等待情況,若圖中存在回路,就表明系統(tǒng)中發(fā)生了死鎖現(xiàn)象。死鎖解除通常是選擇一個(gè)處理死鎖代價(jià)最低的事務(wù)將其撤銷,釋放此事務(wù)持有的全部的鎖,這樣使得其他事務(wù)繼續(xù)運(yùn)行下去。
(2)版本
并發(fā)控制的樂觀方法稱為版本。使用版本時(shí)就沒有加鎖的形式。每一個(gè)事務(wù)開始時(shí),就被限制在數(shù)據(jù)庫的一個(gè)視圖中,且當(dāng)一個(gè)事務(wù)修改一個(gè)記錄時(shí),數(shù)據(jù)庫管理系統(tǒng)就會創(chuàng)建一個(gè)新的記錄版本用以代替或者重新改寫舊記錄。
版本優(yōu)于封鎖,相比封鎖,它的主要優(yōu)點(diǎn)就是性能改進(jìn),只讀事務(wù)和修改事務(wù)能夠并行,從而不失數(shù)據(jù)庫的一致性。
2.完整性控制
數(shù)據(jù)庫的完整性是數(shù)據(jù)庫設(shè)計(jì)和數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)中的關(guān)鍵問題之一。它要求數(shù)據(jù)庫在物理上和邏輯上都是符合完整性的,并且SQL可以提供3種完整性約束條件:實(shí)體完整性、參照完整性和用戶自定義完整性,它們共同促進(jìn)了數(shù)據(jù)庫技術(shù)的完整性控制。
(1)完整性控制的內(nèi)涵
數(shù)據(jù)庫的完整性是指保證數(shù)據(jù)庫中會計(jì)數(shù)據(jù)的正確性、有效性和相容性,防止錯(cuò)誤的數(shù)據(jù)進(jìn)入數(shù)據(jù)庫。數(shù)據(jù)庫是否完整關(guān)系到數(shù)據(jù)庫系統(tǒng)能否真實(shí)反映客觀的現(xiàn)實(shí)世界,所以對于數(shù)據(jù)庫完整性的維護(hù)是非常重要的。數(shù)據(jù)庫的完整性包括物理上和邏輯上的完整性。
① 物理上的完整性。物理上的數(shù)據(jù)庫完整性應(yīng)該能夠確保當(dāng)數(shù)據(jù)庫出現(xiàn)物理方面的問題后可以重構(gòu)數(shù)據(jù)庫,如突然斷電或被災(zāi)禍破壞等。
② 邏輯上的完整性。邏輯上的數(shù)據(jù)庫完整性是指當(dāng)數(shù)據(jù)庫被用戶錯(cuò)誤操作時(shí),數(shù)據(jù)的結(jié)構(gòu)不會發(fā)生變化。例如,某一個(gè)字段的值的修改不會影響到其他字段。
(2)完整性控制的約束條件
為保證數(shù)據(jù)庫的完整性,數(shù)據(jù)庫管理系統(tǒng)必須提供某一種機(jī)制來檢查數(shù)據(jù)庫中的會計(jì)數(shù)據(jù)是否滿足語義規(guī)定的條件,也即數(shù)據(jù)庫完整性約束條件。通常,數(shù)據(jù)庫管理系統(tǒng)通過完整性約束來實(shí)現(xiàn)數(shù)據(jù)庫的完整性。關(guān)系數(shù)據(jù)庫提供了3類完整性:實(shí)體完整性、參照完整性和用戶自定義完整性。其中,實(shí)體完整性規(guī)定,關(guān)系的主碼是不可為空的;參照完整性規(guī)定,關(guān)系的外碼不可以引用不存在的屬性;用戶自定義完整性則規(guī)定了某個(gè)特定的屬性取值約束。這些完整性在具體實(shí)現(xiàn)時(shí)可以通過SQL語言提供的Primarykey、Unique、Foreign key和Check約束來完成。
① 實(shí)體完整性。實(shí)體完整性規(guī)定,關(guān)系的主碼不可為空,也即基本關(guān)系的所有主屬性都不可取空值,且取值必須唯一,不可重復(fù)。
② 參照完整性。參照完整性規(guī)定,關(guān)系的外碼不可以引用不存在的屬性,也即基本關(guān)系的任何一個(gè)元組在外碼上的取值要么是空值,要么就是被參照關(guān)系中的一個(gè)元組的主碼值。
③ 用戶自定義完整性。用戶自定義完整性規(guī)定了某個(gè)特定的屬性取值約束,它反映了某一具體應(yīng)用涉及的會計(jì)數(shù)據(jù)所必須滿足的語義要求。它包括唯一值約束、非空值約束、域約束和觸發(fā)器等。唯一值約束是指表中某一列的取值不能與該表中另一行會計(jì)數(shù)據(jù)在該列的取值相同;非空值約束指表中某一列用戶不能輸入空值;域約束是指定義域時(shí)要確定域的取值范圍;最后指對于用戶定義的完整性可以利用觸發(fā)器來定義。
3. 安全性控制
作為共享資源的數(shù)據(jù)庫,無可避免地存在著數(shù)據(jù)庫的安全問題。數(shù)據(jù)庫的安全是指保證數(shù)據(jù)庫信息的保密性、完整性、一致性和可用性。保密性指保護(hù)數(shù)據(jù)庫中的數(shù)據(jù)不被泄露和未授權(quán)的獲取;完整性指保護(hù)數(shù)據(jù)庫中的數(shù)據(jù)不被破壞和刪除;一致性指確保數(shù)據(jù)庫中的數(shù)據(jù)滿足實(shí)體完整性、參照完整性和用戶定義完整性要求;可用性指確保數(shù)據(jù)庫中的會計(jì)數(shù)據(jù)不因人為和自然的原因?qū)κ跈?quán)用戶不可用。數(shù)據(jù)庫的安全性控制就是要盡可能杜絕所有可能的數(shù)據(jù)庫被非法訪問,不管他們是有意的還是無意的。
(1)一般方法
一般的,在計(jì)算機(jī)系統(tǒng)中,安全措施都是逐層設(shè)立的,如圖1所示,在用戶進(jìn)入計(jì)算機(jī)系統(tǒng)時(shí),系統(tǒng)首先要對其標(biāo)識進(jìn)行用戶的身份鑒定,鑒定合法的用戶才被準(zhǔn)許進(jìn)入計(jì)算機(jī)系統(tǒng)中。對進(jìn)入計(jì)算機(jī)系統(tǒng)的用戶,數(shù)據(jù)庫管理系統(tǒng)還要進(jìn)行存取控制,并只允許用戶進(jìn)行合法的操作,對于非法操作將不予執(zhí)行。操作系統(tǒng)一級也具有自身的保護(hù)措施,最后還可把會計(jì)數(shù)據(jù)加密后存到數(shù)據(jù)庫中。
(2)對用戶的標(biāo)識與鑒定
對用戶的標(biāo)識與鑒定是計(jì)算機(jī)系統(tǒng)最外層的安全保護(hù)措施。方法就是由系統(tǒng)提供一定的方式來讓用戶標(biāo)識自身的名字或身份。也就是說,系統(tǒng)內(nèi)存儲著所有合法用戶的標(biāo)識,每次用戶需要進(jìn)入系統(tǒng)時(shí),就由系統(tǒng)對用戶的身份進(jìn)行識別和鑒定,核實(shí)身份后才允許用戶進(jìn)入計(jì)算機(jī)系統(tǒng)。
(3)存取控制
存取控制是指授予某個(gè)用戶某種特權(quán),利用該特權(quán)能夠以某種方式(如讀取、修改等)訪問數(shù)據(jù)庫中的某些會計(jì)數(shù)據(jù)對象。存取控制可以通過SQL授權(quán)語句提供靈活的授權(quán)機(jī)制、授予用戶特權(quán)和對角色的管理來完成。
(4)審計(jì)
安全性措施對于計(jì)算機(jī)系統(tǒng)來說并不能窮盡,總會有黑客、間諜或其他想要盜竊或破壞會計(jì)數(shù)據(jù)的人在想方設(shè)法地破壞控制。因此,對于敏感性的會計(jì)數(shù)據(jù)或極為重要的會計(jì)數(shù)據(jù)處理,就有必要以審計(jì)技術(shù)為監(jiān)控手段來監(jiān)測任何可能存在的不合法行為。
此審計(jì)是指對選定用戶動作的監(jiān)測和記錄,一般由信息技術(shù)審計(jì)員用于審查可疑的活動或監(jiān)控并收集有關(guān)指定數(shù)據(jù)庫活動的會計(jì)數(shù)據(jù),以達(dá)到數(shù)據(jù)庫系統(tǒng)控制得當(dāng)并能夠正常運(yùn)轉(zhuǎn)。比如說,Oracle數(shù)據(jù)庫能做到以下3種審計(jì)類型:語句審計(jì)、特權(quán)審計(jì)和對象審計(jì)。
(5)數(shù)據(jù)加密
對于某些高度機(jī)密的會計(jì)數(shù)據(jù),除了利用以上的安全措施之外,還可以采取會計(jì)數(shù)據(jù)加密技術(shù)。正常的用戶在檢索會計(jì)數(shù)據(jù)時(shí),首先要提供密碼鑰匙,經(jīng)由計(jì)算機(jī)系統(tǒng)進(jìn)行解碼后,才能獲得可識別的會計(jì)數(shù)據(jù)資料;而非法用戶通過不正常渠道得到的會計(jì)數(shù)據(jù)只是一些無法辨認(rèn)的二進(jìn)制數(shù),這樣就保證了對機(jī)密會計(jì)數(shù)據(jù)的安全性控制。
當(dāng)前的不少數(shù)據(jù)庫產(chǎn)品都提供了會計(jì)數(shù)據(jù)加密程序,系統(tǒng)可根據(jù)用戶的要求做到自動對要儲存和傳輸?shù)臅?jì)數(shù)據(jù)進(jìn)行加密處理;部分?jǐn)?shù)據(jù)庫產(chǎn)品沒有提供會計(jì)數(shù)據(jù)加密技術(shù),但是提供了接口,它允許用戶使用其他廠商的加密技術(shù)程序?qū)?jì)數(shù)據(jù)進(jìn)行加密。會計(jì)數(shù)據(jù)加密技術(shù)相應(yīng)地也存在會計(jì)數(shù)據(jù)解密程序,這些會計(jì)數(shù)據(jù)解密程序自身也具有一定的安全性保護(hù)措施。因?yàn)椴还軙?jì)數(shù)據(jù)加密還是會計(jì)數(shù)據(jù)解密都是比較費(fèi)時(shí)的操作,并且加密、解密程序也會占用大量的系統(tǒng)資源空間,所以數(shù)據(jù)庫管理系統(tǒng)將它們設(shè)為可選操作,只對高度機(jī)密的會計(jì)數(shù)據(jù)進(jìn)行加密。
主要參考文獻(xiàn)
[1] 王珊,陳紅.數(shù)據(jù)庫系統(tǒng)原理教程[M].北京:清華大學(xué)出版社,1998:145-172.
[2] 〔美〕Jeffrey Hoffer.現(xiàn)代數(shù)據(jù)庫管理[M].第7版.袁方,羅文劼,李寧,等,譯.北京:電子工業(yè)出版社:483-488.
[3] 王珊,張孝,李翠平,等.數(shù)據(jù)庫技術(shù)與應(yīng)用[M].北京:清華大學(xué)版社,2005:119-138.
[4] 國家技術(shù)監(jiān)督局.中華人民共和國公共安全行業(yè)標(biāo)準(zhǔn)GA/T389-2002:計(jì)算機(jī)信息系統(tǒng)安全等級保護(hù)數(shù)據(jù)庫管理系統(tǒng)技術(shù)要求[S].北京:中國標(biāo)準(zhǔn)出版社,2002.
[5] 國家技術(shù)監(jiān)督局.中華人民共和國國家標(biāo)準(zhǔn)GB17859-1999:計(jì)算機(jī)信息系統(tǒng)安全保護(hù)等級劃分準(zhǔn)則[S].北京:中國標(biāo)準(zhǔn)出版社,1999.
[6] 〔美〕Joel Siegel,Jae Shim.數(shù)據(jù)庫管理系統(tǒng)管理人員必讀[M].尹買華,譯.北京:清華大學(xué)出版社,2004:196.