賈斌 代云皓
摘要:隨著當前信息技術的不斷發(fā)展,計算機技術和網(wǎng)絡技術也有了長足的發(fā)展,與此同時,計算機相關應用軟件也逐漸得到開發(fā)。數(shù)據(jù)庫作為計算機軟件的核心,是軟件平穩(wěn)運行的基礎保障。因此,加強計算機軟件開發(fā)中數(shù)據(jù)庫的安全設計對于計算機使用者而言具有非常重要的意義?;诖?,本文通過對計算機軟件開發(fā)中數(shù)據(jù)庫所存在的安全隱患與數(shù)據(jù)庫的安全設計方案兩方面進行研究,從而進一步提高數(shù)據(jù)庫的安全設計水平,保證數(shù)據(jù)庫的信息安全。
關鍵詞:安全;軟件開發(fā);應用實踐
中圖分類號:TP3 文獻標識碼:A
文章編號:1009-3044(2020)09-0001-02
1 概述
數(shù)據(jù)庫作為計算機軟件開發(fā)的核心[1],它設計的合理性決定了軟件分層設計體系是否能夠很好的體現(xiàn)。另一方面,數(shù)據(jù)庫的性能與安全性也極大地影響著軟件的用戶體驗。因此,為了提高計算機軟件的運行效率,杜絕數(shù)據(jù)庫級別的錯誤,保證數(shù)據(jù)庫的信息安全,對數(shù)據(jù)庫的安全設計是計算機在軟件開發(fā)中不可忽視的問題之一。
1)計算機軟件開發(fā)技術
近年,隨著我國互聯(lián)網(wǎng)不斷發(fā)展和信息技術的不斷進步,計算機軟件開發(fā)的框架和模型越來越多樣化,隨著智能手機的普及,計算機軟件、手機軟件已經(jīng)成為人們生活中必不可少的生活用品。目前計算機軟件開發(fā)技術多采用快速原型模型進行軟件迭代的開發(fā)與更新[2],這樣做的益處在于可以使軟件功能開發(fā)的難度降低,高級語言編程的開發(fā),使軟件開發(fā)效率大大提升,充實了軟件開發(fā)組件的可利用性。但同時,快速原型模型技術的缺點在于對數(shù)據(jù)庫的性能及安全性要求較高。這主要是由于數(shù)據(jù)庫涉及了軟件最為核心的內(nèi)容——數(shù)據(jù),數(shù)據(jù)資源需要考量的維度較多,如:是否進行了讀寫分離,是否連接多個數(shù)據(jù)庫,是否進行了漏洞檢測,是否有安全的備份等。
2)數(shù)據(jù)庫技術
上文中我們簡單說明了計算機軟件開發(fā)技術的部分內(nèi)容,計算機軟件與數(shù)據(jù)庫之間是相輔相成的。數(shù)據(jù)庫的實質(zhì)可類比于一個“池”,池中的主要內(nèi)容為有價值數(shù)據(jù),將池中的數(shù)據(jù)通過一定的方式進行存取管理就是數(shù)據(jù)庫管理,具體來說,數(shù)據(jù)庫管理就是通過一系列語義定義與數(shù)據(jù)操作來達到對數(shù)據(jù)庫(database)對象的有效組織和安全管理。當下,通過數(shù)據(jù)庫管理系統(tǒng)(DBMS),我們可以進行數(shù)據(jù)定義,數(shù)據(jù)操作,數(shù)據(jù)查詢,事務管理,權限分配,數(shù)據(jù)備份恢復等一系列必要的操作[3]。成熟的數(shù)據(jù)庫管理系統(tǒng)軟件已經(jīng)能夠很好地解決軟件因為信息資源量龐大而產(chǎn)生的數(shù)據(jù)管理和運行效率等方面的問題。與此同時,在當前數(shù)據(jù)庫管理和計算機軟件開發(fā)過程中,還能夠?qū)?shù)據(jù)庫與軟件開發(fā)技術進行分離[4],數(shù)據(jù)庫和軟件可以作為兩個獨立的對象分別實施,在對軟件設計完成以后,再將軟件和數(shù)據(jù)庫系統(tǒng)進行有效連接。這樣做的好處在于降低了軟件設計的難度,同時也實現(xiàn)了計算機軟件和數(shù)據(jù)庫的高效管理,從而提高軟件的工作效率。數(shù)據(jù)庫管理技術的進步不僅使數(shù)據(jù)庫遷移的簡便性和兼容性有所提高,同時也提高了數(shù)據(jù)庫的安全性。
2 當前計算機軟件開發(fā)中數(shù)據(jù)庫安全問題隱患
數(shù)據(jù)庫作為計算機軟件的核心之一,是用戶體驗良好性的一個重要指標。在為用戶帶來額服務與便利的同時,也出現(xiàn)了一些安全隱患。數(shù)據(jù)表明數(shù)據(jù)庫的安全隱患主要體現(xiàn)在三個方面[5]:
1)管理人員的操作不當,導致數(shù)據(jù)庫數(shù)據(jù)泄露或者資源的缺乏。數(shù)據(jù)庫管理人員的職責之一是需要對數(shù)據(jù)庫進行詳細的分類和整理,除此以外,在日常的運行維護中,如果存在數(shù)據(jù)庫管理人員未嚴格的遵循數(shù)據(jù)庫的操作規(guī)程和使用方法進行數(shù)據(jù)庫管理操作,就會導致數(shù)據(jù)庫出現(xiàn)安全問題,例如導致數(shù)據(jù)泄露,病毒的侵入等等。
2)硬件問題。計算機軟件在開發(fā)和設計中,如果未能進行充分的需求分析與遠景預設,軟件的設計內(nèi)容受限于硬件而存在一些先天的缺陷,典型的如早期的12306網(wǎng)站,在軟件運行及數(shù)據(jù)庫連接獲取資源的過程中,會產(chǎn)生大量的并發(fā)及數(shù)據(jù)冗余,進而在數(shù)據(jù)的傳輸過程中有可能導致數(shù)據(jù)丟失或者無法讀取的現(xiàn)象,嚴重影響數(shù)據(jù)庫的安全性能。
3)計算機軟件使用者在使用中所出現(xiàn)的問題[6]。主要表現(xiàn)為,用戶在進行資源查找時,未按照相應的操作規(guī)范連接數(shù)據(jù)庫的管理中心,造成一些木馬,病毒等問題趁機而人,最終導致數(shù)據(jù)庫數(shù)據(jù)丟失,嚴重的可能會影響計算機軟件的運行失常,同時也為黑客入侵,盜取數(shù)據(jù)庫內(nèi)容,篡改數(shù)據(jù)庫信息,甚至破壞資源庫的整理與分類結(jié)構提供了可能。
3 數(shù)據(jù)庫安全設計方法
鑒于以上存在的問題,根據(jù)筆者的實踐,主要進行以下幾方面的策略來保證數(shù)據(jù)庫的安全性。
1)設置用戶權限
在建立相關的數(shù)據(jù)庫時,可以通過對用戶類型來分配數(shù)據(jù)庫訪問數(shù)據(jù)的權限。在一個計算機中,可以擁有較多的個人賬戶,但是在建立的賬戶中,只有一個主賬戶作為超級賬戶存在,同時有用數(shù)據(jù)庫操作的最高權限。該用戶可以按照自身需求對數(shù)據(jù)庫內(nèi)容進行更改,其他賬戶均作為普通賬戶存在,因此,其他賬戶在進行相關數(shù)據(jù)操作時,必須要經(jīng)過開發(fā)者授權才能夠訪問和查詢數(shù)據(jù)信息。
2)提高數(shù)據(jù)庫的自動化處理能力
數(shù)據(jù)庫作為數(shù)據(jù)信息資源的存儲中心,在對資源信息的保存分類中,需要將資源進一步編寫成數(shù)據(jù)形式,從而通過一定的格式保存在資源共享平臺上,也就是我們常說的云端上。因此,用戶在提取云端資源時,數(shù)據(jù)庫首先要采用觸發(fā)器對字段實現(xiàn)自動化處理。提高數(shù)據(jù)庫的自動化處理能力軟件程序的開發(fā)和應用中具有重要意義,能夠有效為后臺對數(shù)據(jù)信息的追蹤提供有力的保障。
3)數(shù)據(jù)加密
數(shù)據(jù)加密是目前提高數(shù)據(jù)庫安全管理的重要手段[7]。通過PDWDENCRYPT算法對數(shù)據(jù)庫加密,是當前軟件開發(fā)中最有效的數(shù)據(jù)加密的方法。PDWDENCRYPT算法的獨特之處在于,它是一種以單項加密技術為主的算法,即能夠?qū)?shù)據(jù)庫解密的用戶必須擁有處理權限,沒有處理權限的數(shù)據(jù)庫時無法解開PDWDENCRYPT算法加密的數(shù)據(jù)。因此,由于這種算法的簡單,直接,方便的特性,在目前的加密方式中,是運用最多,最廣泛的加密方式。但是在實際操作中,很多開發(fā)者都會在PD-WDENCRYPT算法加密之后,進行二次加密,從而保障數(shù)據(jù)的安全性,減少黑客入侵的概率。加密的第一階段與第二階段的不同主要在于對數(shù)據(jù)庫滲透程度上。一方面,第一階段的加密處理并沒有直接到達數(shù)據(jù)庫,因此在第一秘鑰的破解之后,入侵者并不能直接看到數(shù)據(jù)庫。在加密的第二階段,是針對數(shù)據(jù)傳輸過程的加密。這意味著,當數(shù)據(jù)從客戶端移動到數(shù)據(jù)庫的過程中,數(shù)據(jù)是完全加密的,而后在數(shù)據(jù)資源上傳完畢并且歸類保存之后,數(shù)據(jù)進入第一階段的加密處理。數(shù)據(jù)加密的主要原因是保證用戶與服務器之間的信息傳遞是沒有人能夠讀取的。同時,關于用戶的信息,數(shù)據(jù)庫作為信息分類的主要陣地,是可以通過讀取用戶的表單,來獲取用戶的信息,同樣,用戶也可以通過同樣的方式獲取數(shù)據(jù)庫信息,
4)建立審計日志
審計和日志是記錄用戶使用信息的兩個數(shù)據(jù)記錄的主要環(huán)節(jié)。一方面,數(shù)據(jù)庫的審計功能要比日志記錄復雜得多,開發(fā)者通過數(shù)據(jù)庫產(chǎn)生的審計內(nèi)容,可以了解用戶在使用軟件中,所需要的,所感興趣的資源信息,從而通過大數(shù)據(jù)平臺的分析,為用戶推送用戶所喜歡的消息內(nèi)容。另一方面,日志記錄則是用戶每天的使用記錄和瀏覽歷史等內(nèi)容。開發(fā)者可以通過用戶的審計日志全面的了解用戶在數(shù)據(jù)庫中的各種訪問活動,并且能夠通過審計日志的記錄進行有效的跟蹤信息的獲取地,分析可以活動的軌跡。
5)實時更新數(shù)據(jù)和操作系統(tǒng)
與時俱進是數(shù)據(jù)庫資源獲取和發(fā)展的最基本的要求,是當前數(shù)據(jù)庫存在的根本。而對操作系統(tǒng)的更新,是隨著當前信息技術的發(fā)展和開發(fā)軟件的更新而變化的,反之,如果數(shù)據(jù)庫的資源更新速度和操作系統(tǒng)不能與計算機所開發(fā)的新軟件相適配,那么這個軟件的存在就失去了意義。同時,網(wǎng)絡中的非法攻擊幾乎每隔一段時間就會有新的攻擊技術的出現(xiàn),如果數(shù)據(jù)庫不能進行及時的更新,就會導致數(shù)據(jù)庫內(nèi)的數(shù)據(jù)受到損傷,破壞和篡改等可能。因此,實時更新數(shù)據(jù)和操作系統(tǒng),是保證數(shù)據(jù)庫常用常新的根本途徑,也是提高計算機開發(fā)軟件的使用壽命,適用范圍的主要方式。
4 結(jié)語
綜上所述,本文對計算機軟件開發(fā)技術和數(shù)據(jù)庫概念進行了簡單概述,通過對當前數(shù)據(jù)庫使用中所出現(xiàn)的安全隱患問題進行列舉分析,并聯(lián)系實際對數(shù)據(jù)庫安全的設計方法進行了總結(jié)與闡述,以期對今后的數(shù)據(jù)庫設計與實施有所幫助。
參考文獻:
[1]閆永澤.數(shù)據(jù)庫技術在計算機控制中的應用[J].信息與電腦(理論版),2019(20):117-118,121.
[2]劉雪飛.軟件開發(fā)模式分析[J].中外企業(yè)家,2018(2):157.
[3]劉春生.計算機數(shù)據(jù)庫技術在信息管理中的實踐與應用[Jl.科學技術創(chuàng)新,2019(29):87-88.
[4]徐震,計算機數(shù)據(jù)庫技術在數(shù)據(jù)管理中的應用[J].電子技術與軟件工程,2018(2):181.
[5]侯珂珂,蔡莉莉,大數(shù)據(jù)背景下數(shù)據(jù)庫的安全管理[Jl.電子技術與軟件工程,2019(20):200-201.
[6]張亞利.計算機軟件開發(fā)與數(shù)據(jù)庫管理中的問題及對策[J].信息與電腦(理論版),2016(10):194-195.
[7]陳映村,程鵬飛.計算機軟件開發(fā)與數(shù)據(jù)庫管理中的問題與應對策略[J].計算機產(chǎn)品與流通,2019(1):34.
【通聯(lián)編輯:張薇】
作者簡介:賈斌(1983-),男,甘肅泰安人,碩士,助教,研究方向:數(shù)據(jù)庫及內(nèi)存計算。