趙紅霞
(運(yùn)城職業(yè)技術(shù)學(xué)院 山西 044000)
Web是基于瀏覽器/服務(wù)器(B/S)的工作模式,由瀏覽器和服務(wù)器構(gòu)成并通過URL實現(xiàn)對服務(wù)器的訪問。服務(wù)器會根據(jù)具體請求文件類型的不同而做出相應(yīng)的響應(yīng)。網(wǎng)站上傳到應(yīng)用服務(wù)器上,瀏覽器向服務(wù)器提交數(shù)據(jù)時,服務(wù)器打開數(shù)據(jù)庫管理系統(tǒng),并向數(shù)據(jù)表中根據(jù)要求更新數(shù)據(jù)庫,最后服務(wù)器將瀏覽器所需的更新的數(shù)據(jù)結(jié)果返回到網(wǎng)頁中。本文研究web數(shù)據(jù)安全,如圖1所示從數(shù)據(jù)的存儲位置數(shù)據(jù)庫本身,管理數(shù)據(jù)庫的數(shù)據(jù)庫服務(wù)器,存放數(shù)據(jù)庫服務(wù)器的應(yīng)用服務(wù)器,運(yùn)行環(huán)境中防火墻和瀏覽器端瀏覽的網(wǎng)站本身進(jìn)行分析維護(hù)數(shù)據(jù)安全的實現(xiàn)方法和建議。
圖1 web工作原理圖
目前制作web時使用的是關(guān)系型數(shù)據(jù)庫,其本身擁有數(shù)據(jù)獨立于應(yīng)用程序。數(shù)據(jù)獨立性包括數(shù)據(jù)的物理獨立性和邏輯獨立性。物理獨立性是編程者的應(yīng)用程序與存儲在服務(wù)器端的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。邏輯獨立性是指編程者的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨立的,這在一定程度上保證了數(shù)據(jù)庫中數(shù)據(jù)的安全。
本文以w indows下SQL Server數(shù)據(jù)庫服務(wù)器為例,SQL Server的安全機(jī)制一般主要包括三個級別安全機(jī)制,分為服務(wù)器級別,數(shù)據(jù)庫級別和數(shù)據(jù)對象級別。服務(wù)器級別安全機(jī)制實現(xiàn),在服務(wù)器端可以通過設(shè)置登錄賬戶限制訪問數(shù)據(jù)庫服務(wù)器,登錄賬號分為windows賬戶或組,SQL Server安裝時設(shè)置的賬戶和服務(wù)器角色。數(shù)據(jù)庫級別安全機(jī)制實現(xiàn),在登錄數(shù)據(jù)庫服務(wù)器后,對其所擁有的所用數(shù)據(jù)庫進(jìn)行設(shè)置用戶賬戶限制其訪問權(quán)限,該用戶賬戶是通過登錄賬戶進(jìn)行映射的,可以屬于固定的數(shù)據(jù)庫角色或自定義數(shù)據(jù)庫角色。數(shù)據(jù)對象級別的安全機(jī)制實現(xiàn),打開數(shù)據(jù)庫后可以對數(shù)據(jù)對象設(shè)置訪問權(quán)限進(jìn)行安全控制。grant 賦予權(quán)限,deny拒絕權(quán)限,revoke撤消權(quán)限,而select |insert |update |delete是可以設(shè)置的各個權(quán)限項目。
服務(wù)器作為整個網(wǎng)站信息存儲中心,而在日常運(yùn)用過程中,服務(wù)器可能面臨來自網(wǎng)卡、電源模塊、內(nèi)存、RAID陣列、靜電、風(fēng)扇、CPU、硬盤、主板以及其他未知因素等方面的服務(wù)器數(shù)據(jù)安全威脅。對于這些故障,從服務(wù)器本身可以在硬件方面機(jī)械的更換設(shè)備保持其正常運(yùn)行,在軟件方面可以使用專業(yè)服務(wù)器數(shù)據(jù)安全防護(hù)產(chǎn)品——服務(wù)器SAS / SCSI恢復(fù)系統(tǒng)。
針對客戶需求,服務(wù)器上的所有資料需階段性進(jìn)行完整備份,對于新增的數(shù)據(jù)需進(jìn)行合理的差異備份,重要的數(shù)據(jù)資料需要進(jìn)行事務(wù)日志備份,有了備份同時還需提供數(shù)據(jù)恢復(fù)功能,當(dāng)服務(wù)器發(fā)生意外情況發(fā)生時,可以短時間內(nèi)將數(shù)據(jù)恢復(fù),保證服務(wù)器對業(yè)務(wù)不會造成影響和維護(hù)web數(shù)據(jù)安全。
相對于傳統(tǒng)防火墻用于解決網(wǎng)絡(luò)接入控制問題,應(yīng)用防火墻通過執(zhí)行應(yīng)用會話內(nèi)部的請求來處理應(yīng)用層,專門保護(hù)web免受利用web協(xié)議發(fā)動的攻擊。實現(xiàn)應(yīng)用防火墻有兩種方式:執(zhí)行積極行為的積極安全模型和阻止已知攻擊的消極安全模型。積極安全模型是通過在用戶與應(yīng)用互動時學(xué)習(xí)應(yīng)用邏輯,然后再建立有效的已知請求的安全政策來執(zhí)行積極行為。消極安全模型依靠一個保存可能出現(xiàn)攻擊的特征的數(shù)據(jù)庫阻止識別出的攻擊。
應(yīng)用防火墻在 iso模型的第七層上運(yùn)行。所有會話信息都要經(jīng)過應(yīng)用防火墻,包括上行和下行的會話信息。下行請求經(jīng)過應(yīng)用防火墻時,是在積極安全模型的情況下,進(jìn)行政策的解析處理。上行請求經(jīng)過應(yīng)用防火墻,是在消極安全模型情況下,避免了有害請求進(jìn)入服務(wù)器。通過不斷實踐和驗證獲取數(shù)據(jù),對積極安全模型政策及時更新,對消極模型的特征數(shù)據(jù)庫及時補(bǔ)充,來有效的保護(hù)web應(yīng)用的通信流和所有相關(guān)的應(yīng)用資源遭到攻擊保障數(shù)據(jù)安全。
瀏覽器端網(wǎng)站保護(hù)數(shù)據(jù)安全主要是編程人員在開發(fā)設(shè)計網(wǎng)站時的具體實現(xiàn)的功能模塊設(shè)計。網(wǎng)站設(shè)計開發(fā)首先編程人員選擇適合的網(wǎng)站開發(fā)工具根據(jù)需求分析設(shè)計數(shù)據(jù)庫,再根據(jù)功能要求設(shè)計實現(xiàn)前臺功能頁面和后臺管理頁面。根據(jù)編程步驟維護(hù)數(shù)據(jù)安全。
數(shù)據(jù)庫是存儲和管理數(shù)據(jù)的倉庫,關(guān)系型數(shù)據(jù)庫是以二維表的形式存儲數(shù)據(jù)。編程者根據(jù)需求分析設(shè)計數(shù)據(jù)庫,畫出流程圖,設(shè)計該數(shù)據(jù)庫中每個表。從以下幾個個方面維護(hù)數(shù)據(jù)安全:1)對表中的字段設(shè)置數(shù)據(jù)類型,防止合法用戶插入非法數(shù)據(jù);2)對特定字段設(shè)置數(shù)據(jù)約束,包括主鍵約束,外鍵約束,唯一約束,不為空(空)約束,默認(rèn)值約束,檢查約束和索引約束,實現(xiàn)數(shù)據(jù)庫中數(shù)據(jù)的域完整性,實體完整性和引用完整性;3)創(chuàng)建觸發(fā)器,對插入該表中的數(shù)據(jù)進(jìn)行控制,可以實現(xiàn)表與表間的級聯(lián)更新和事務(wù)回滾,保障數(shù)據(jù)庫中數(shù)據(jù)的一致性,正確性和有效性;4)編程者也可以通過創(chuàng)建視圖調(diào)用視圖來保證表中數(shù)據(jù)的安全。
網(wǎng)站前臺是面向網(wǎng)站訪問用戶的,用戶可以瀏覽公開發(fā)布的內(nèi)容,通過注冊成為會員再登錄實現(xiàn)網(wǎng)上購物功能,留言評論功能和上傳文件等等。在前臺保證數(shù)據(jù)安全主要包括登錄功能,注冊功能和會話功能,細(xì)節(jié)如下:1)登錄功能通過驗證會員用戶名和密碼防止非會員對數(shù)據(jù)進(jìn)行查看和更新;2)注冊功能是添加合法會員,使其實現(xiàn)只有會員權(quán)限對web數(shù)據(jù)的查看,更新操作和功能模塊的使用,在注冊中可以實現(xiàn)對插入的數(shù)據(jù)進(jìn)行驗證和加密,驗證所插入的數(shù)據(jù)在一定程度上的正確性,可通過設(shè)置函數(shù)和已有的加密函數(shù)對文本進(jìn)行加密,保證數(shù)據(jù)的安全性;3)加入會話功能,通過 session 或者 cookie 實現(xiàn)會話,跟蹤會員從登錄成功直到安全退出整個過程,若超過一定時間段沒有刷新和使用該網(wǎng)頁則會出現(xiàn)自動退出請重新登錄防止其他用戶纂改數(shù)據(jù),保障會員的信息不被發(fā)現(xiàn)和修改。
網(wǎng)站后臺即網(wǎng)站管理后臺,用于管理網(wǎng)站前臺的一系列操作,如:產(chǎn)品、企業(yè)信息的增加、更新、刪除等。網(wǎng)站管理后臺可以有效的管理網(wǎng)站供瀏覽者查閱的信息。網(wǎng)站后臺維護(hù)數(shù)據(jù)安全體現(xiàn)在:1)登錄驗證功能,網(wǎng)站的后臺只限于網(wǎng)站管理員進(jìn)行管理,通過登錄進(jìn)行身份驗證,驗證存在后進(jìn)入網(wǎng)站后臺的管理界面進(jìn)行相關(guān)操作;2)設(shè)置權(quán)限賦予功能,此功能網(wǎng)站管理員具備對前臺注冊成功的會員賦予權(quán)限,實現(xiàn)具有不同權(quán)限的會員對本網(wǎng)站的數(shù)據(jù)進(jìn)行不同程度的訪問和更新,防止數(shù)據(jù)泄露給級別不夠的會員;3)設(shè)置數(shù)據(jù)備份和恢復(fù)功能,此功能網(wǎng)站管理員可實現(xiàn)對該網(wǎng)站數(shù)據(jù)階段性的進(jìn)行備份,當(dāng)系統(tǒng)出現(xiàn)癱瘓時或服務(wù)器出現(xiàn)故障時,對數(shù)據(jù)進(jìn)行恢復(fù),制定一套有效合理符合本網(wǎng)站的備份方案可以實現(xiàn)對數(shù)據(jù)實時恢復(fù),最大程度的保障本網(wǎng)站數(shù)據(jù)的安全。
相對于傳統(tǒng)的軟件編程,應(yīng)用框架編程在最大限度上可以實現(xiàn)安全架構(gòu),構(gòu)建網(wǎng)絡(luò)、硬件和軟件相結(jié)合的安全體系。應(yīng)用框架安全架構(gòu)設(shè)計思想:1)設(shè)計整體一體化的安全架構(gòu);2)采取符合信息安全標(biāo)準(zhǔn)(物理安全、運(yùn)行安全、數(shù)據(jù)安全、內(nèi)容安全等)規(guī)定的技術(shù)和管理要求;3)實現(xiàn)信息安全與數(shù)據(jù)質(zhì)量管理的技術(shù)物理環(huán)境,并提供安全策略的具體管理機(jī)制。信息安全體現(xiàn)在物理環(huán)境和安全管理機(jī)制相輔相成,通過不斷完善信息安全管理機(jī)制和在物理環(huán)境上持續(xù)管理、記錄、分析各類信息安全事件,避免安全事件再次發(fā)生。
網(wǎng)絡(luò)技術(shù)的發(fā)展伴隨著網(wǎng)絡(luò)中的數(shù)據(jù)越來越龐大,維護(hù)web中的數(shù)據(jù)安全是保證信息安全的重要手段之一。本文通過web的工作原理和運(yùn)行環(huán)境從各個環(huán)節(jié)進(jìn)行分析維護(hù)web數(shù)據(jù)安全的實現(xiàn)方法和并提出具體實施步驟。不足之處在于本文分析的依據(jù)是使用應(yīng)用框架和數(shù)據(jù)庫編寫網(wǎng)站設(shè)計開發(fā)的經(jīng)驗,并沒有深層次考慮各個管理決策的運(yùn)行機(jī)制,下一步的工作研究是框架編程過程中,完善應(yīng)用框架的安全架構(gòu)的一體化,應(yīng)用安全體系物理環(huán)境分析各類信息安全事件逐步完善安全策略的具體管理機(jī)制。
[1]李春葆、曾慧等,數(shù)據(jù)庫原理與應(yīng)用——基于SQL Server[M].北京:清華大學(xué)出版社,2012.4.
[2]劉秋菊、劉書倫等,Web編程技術(shù)—— PHP+M ySQL動態(tài)網(wǎng)頁設(shè)計[M].北京:北京師范大學(xué)出版社,2013.3.
[3](波)波倫布斯基等著、付勇等譯,PHP框架高級編程——應(yīng)用Sym fony、CakePHP和Zend[M].北京:清華大學(xué)出版社,2012.2.