袁建萍
(鄭州市第三人民醫院 河南省鄭州市 450000)
科學技術的不斷進步和快速發展,網絡技術的整體發展形勢相對比較良好,越來越多的技術在各領域中可以得到合理利用,數據庫在各行業中的應用相對比較廣泛,特別是在目前醫院的日常運營和管理中,實現數據庫與Internet 相互之間的有效連接。但是在數據庫使用時,由于其中涉及到的安全問題不容忽視,特別是敏感數據的篡改、盜取等。因此,現階段對網絡安全提出的要求越來越高,要積極采取有針對性的對策,保證安全防護措施在實踐中的有效落實,以此來實現對數據庫的安全防護。
在醫療信息數據庫當中,對用戶的行為展開深入分析,收集用戶對于數據庫在具體操作時,涉及到的所有操作信息內容。其中會涉及到的內容相對比較多,比如登錄數據庫的具體時間、用戶執行操作時間等。同時還要將數據庫登錄用戶名等各種不同類型信息作為出發點,從多個角度出發,實現對數據庫用戶行為準確有效的描述。通常在第一條SQL 語句當中,基本上都是直接由命令動詞、子句等相互組合而成。其中命令動詞會直接對SQL 的語句操作類型進行確定,比如SELECT 以及DELETE 等。如果表達式是SQL語句當中的部分值,那么很有是變量、常量等。在其中涉及到的數據庫關系表、查詢字段等,這些都會結合現實要求,直接對SQL語句的整個操作目標進行確定。一個用戶行為向量,一般都會直接對應一條SQL 語句,由若干用戶行為向量相互組合而成,則可以直接用來對此SQL 語句操作行為進行表示。各用戶行為向量中,主要是以用戶名、操作類型以及操作目標這幾個元素為主。如表1所示。
用戶行為向量當中涉及到的元素類型在實踐中可以實現不斷擴展,其根本目的是為了促使用戶行為向量組能夠得到增加,實現對SQL 語句競價精準的精度描述。以此為基礎,有利于增加向量維度,雖然可以在實踐中不斷提高對SQL 語句的整個描述精度,但是在實踐中也會不斷增加用戶行為向量對應的個數[1]。此時,勢必會促使系統處理數據量有所增加。通過對用戶行為向量組的合理利用,能夠直接對SQL 語句操作行為進行表示,不僅能夠對SQL 語句具體操作類型、操作目標進行分析,而且能夠對操作條件、操作內容進行提取。以此為基礎,有利于從根本上實現對數據庫用戶自身具體操作行為相對比較全面的描述。

表1:行為向量包含元素

表2:數值化用戶行為向量

表3:運算符優先順序

表4:安全檢測結果屬性
數據庫用戶行為規則在編制和具體應用中,是指用戶在長期對數據庫進行操作時,可以從大量用戶操作記錄中對相關內容進行不斷挖掘,具有一定典型性特征,能夠代表用戶對數據庫操作行為。其自身的整個含義可以直接表達成為用戶經常操作的數據庫對象,或者也可以被看作是用戶經常使用的操作類型。經過一系列分析之后,不難看出目前用戶行向量元素相互之間具有非常強的聯系。
將用戶的整個歷史操作記錄作為基礎,對其中涉及到的操作語句全部進行有效轉換,逐漸轉變成為用戶行為向量組之后,在用戶行為規則的基礎上,以安全檢測為基礎,利用關聯規則算法對用戶行為向量進行妥善處理,促使各向量都可以作為一條最基本的事務相。為了從根本上保證關聯規則算法在整個系統中的應用執行效率可以得到有效提升,盡可能減少算法甄別數據的過程,以此來實現對每個向量元素的數值化處理[2]。向量數值化之前,要對該段時間范圍內所有不同用戶名、具體操作目標和數目等進行詳細統計。對各元素進行數值映射處理,這樣能夠盡可能避免出現向量元素數值重疊的問題。比如,用戶行為向量 SELECT,DUAL>、 EMP〉、 CREATETABLE=2,DELETE =3,INSERT =4,UPDATE =5,ALTERTABLE =6,DR0PTABLE=7)。除此之外,與各個不同用戶名對應的數量,直接將用戶名映射為(WANGH0NG=8,SC0TT=9)。結合操作類型、用戶名自身的數值映射結果,可以直接將操作目標映射為(DUAL=10,PRIVS=11,0PTI0N=12,EMP=13,DEPT=14)。以此為基礎,促使整個向量數值化處理過程有效推進。如表2 所示。 在最大置信度度量標準的基礎上,關聯規則算法在提出以及具體應用中,要將用戶行為向量組作為基礎,從中生成最基本的用戶行為規則。此時,將關聯規則自身的作用充分發揮出來,實現對相關數據潛在聯系能力的深入挖掘[3]。但是在實踐中,需要注意的是由于用戶行為向量組,只是單純能夠對用戶的SQL 語句操作行為、操作目標進行表征,但是并沒有對語句當中的具體條件表達式等相關信息有所關注和重視。無形當中導致用戶行為規則對用戶自身的行為描述過于粗糙。 系統在實際操作中,要對用戶提交的SQL 語句進行解析處理,以此為基礎,能夠從中得出語句的語法解析樹。對SQL 語句當中涉及到的部分內容進行分析和識別,以上文提到的各種已知惡意模式進行對比分析,以此為基礎,對其中是否存在嚴重的惡意行為進行判斷。對其中涉及到的限制性操作而言,SQL 語句可以與注釋符進行結合。UNION 查詢等行為都必須要實現有針對性的檢測,在實踐中要對語句當中的關鍵字、關鍵符號進行有效識別[4]。針對條件的恒真、假進行檢測,同時還要對條件子句當中的不同條件子式進行準確有效的判斷。將其作為參考依據,能夠對條件子句是否具有良好的邏輯值進行判斷,確定其是否屬于恒值。 在條件子句轉換成為后綴表達式時,首先要做的一點是在SQL語法解析基礎上,對SQL 語句條件子句當中涉及到的操作數、運算符等進行仔細的識別。同時,對其中的棧Z、集合C 進行設置。其次,從左到右讀入以上具體操作數、運算符,對子句當中涉及到的列名、列名值等作為最基本的操作數。一旦讀到操作數時,可以直接加入到集合C 當中。如果讀取到的運算符且Z 是空的狀態,那么將運算符直接加入到對應的棧中。如果讀取到的是運算符Z,同時不為空狀態時,可以從中取出所有優先級不小于該運算符的客棧五頂元素,以此為基礎,直接將該預算符入棧處理。如表3 所示。 該系統在構建和具體應用時,主要是在SQL 語句結構安全檢測基礎上,以用戶行為規則為基礎,促使安全檢測能夠與其進行結合,促使安全檢測策略在實踐中的應用效果能夠滿足預期目標。在實踐中,詳細探究用戶對數據庫操作中涉及到的一系列異常行為進行識別在SQL 語句安全檢測基礎上,從SQL 語句自身的安全角度作為出發點,對其展開有針對性的檢測,這也可以被看作是細顆粒度的檢測。但是在實踐中,需要注意的是只能單純對現知類型異常操作行為進行檢測,在用戶行為規則安全檢測基礎上,將用戶操作行為角度作為出發點,實現有針對性的檢測,同時也可以被看作是粗顆粒度的檢測,但是能夠實現對異常操作行為的檢測。 結合系統設計基本原理,現階段醫療信息系統在構建和應用時,可以對用戶異常操作行為進行檢測。其中主要包括合法用戶越權操作、入侵者操作以及SQL 注入攻擊。系統安全檢測結果會直接保存在對應的數據庫安全審計日至對應數據庫中。在原安全審計日至基礎上,可以從根本上促使其自身的整個操作安全性屬性得到有效強化。如表4 所示。 醫療信息系統安全檢測是在用戶行為規則、SQL 語句結構基礎上進行安全檢測,促使兩者可以實現有效結合。針對目前醫療信息安全問題,要在現有醫療信息標準體系下對其進行不斷完善和優化,結合醫療流程以及行業實際情況,促使醫療信息服務質量能夠得到有效提升。2 SQL語句結構的安全檢測模型構建
3 安全檢測模型建立和應用結果
4 結語