[發明專利]一種SQL語句塊分析處理方法和裝置有效
| 申請號: | 202111310323.7 | 申請日: | 2021-11-08 |
| 公開(公告)號: | CN113742371B | 公開(公告)日: | 2022-02-15 |
| 發明(設計)人: | 楊海峰;李彥君 | 申請(專利權)人: | 北京安華金和科技有限公司 |
| 主分類號: | G06F16/242 | 分類號: | G06F16/242;G06F16/2455 |
| 代理公司: | 北京盛詢知識產權代理有限公司 11901 | 代理人: | 韓建偉 |
| 地址: | 100080 北京市海淀區中關村*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 sql 語句 分析 處理 方法 裝置 | ||
1.一種SQL語句塊分析處理方法,其特征在于,包括:
步驟S102,獲取SQL語句塊,其中,所述SQL語句塊中包括多個SQL語句;
步驟S104,從所述SQL語句塊中搜索關鍵詞,其中,所述關鍵詞為預先配置的,所述關鍵詞為SQL的命令;
步驟S106,在所述SQL語句中搜索到所述關鍵詞之后,根據所述關鍵詞從所述語句塊中獲取所述關鍵詞所在的SQL語句;
步驟S108,將所述關鍵詞所在的SQL語句從所述語句塊中提取出來;
步驟S110,對提取得到的SQL語句進行分析,其中,所述分析用于確定所述SQL語句在數據庫執行時所產生的風險;其中,獲取SQL語法中的所有命令,將所有的命令進行分級,其中,關鍵詞構成的語句在數據庫被執行時不會出現風險對應的關鍵詞被定義為第一級別的關鍵詞,關鍵詞構成的語句在數據庫被執行時出現風險對應的關鍵詞被定義為第二級別的關鍵詞;在步驟S110中進行分析的過程包括審計,使用第一級別的關鍵詞進行搜索,將第一級別的關鍵詞搜索對應的SQL語句進行保存,保存下來的SQL語句用于進行審計;第二級別的關鍵詞對應的SQL語句進行保存,保存下來的SQL語句用于進行審計和風險分析;在使用了所有等級的關鍵詞進行搜索時候,獲取被搜索到的關鍵詞在SQL語句塊中的第一位置,以及被搜到的該關鍵詞所在的SQL語句在所述SQL語句塊的第二位置,根據搜索到的所有關鍵詞的第一位置和所有該關鍵詞對應的SQL的第二位置,將從SQL語句塊中提取到的SQL語句進行排列得到第二SQL語句塊,將原始的SQL語句塊作為第一SQL語句塊,比較所述第二SQL語句塊和所述第一SQL語句塊以獲取所述第二SQL語句塊和所述第一SQL語句塊之間的差異,如果沒有差異,則說明提取正確;如果存在差異,則獲取所述第二SQL語句塊和所述第一SQL語句塊的差異的內容,并對該差異的內容進行風險分析。
2.根據權利要求1所述的方法,其特征在于,所述關鍵詞為多個,根據每個關鍵詞在所述SQL語句中進行搜索,在搜索到的情況下,分別從所述SQL語句塊提取搜索到的每個關鍵詞所在的SQL語句,并對提取出的每條SQL語句進行分析。
3.根據權利要求2所述的方法,其特征在于,還包括:
獲取對每條SQL語句進行分析后的結果;
將每條SQL語句對應的結果匯總為對所述SQL語句分析的結果集。
4.權利要求1所述的方法,其特征在于,根據所述關鍵詞從所述語句塊中獲取所述關鍵詞所在的SQL語句包括:
根據所述關鍵詞對應的SQL語法特征從所述語句塊中獲取所述關鍵詞所在的SQL語句。
5.權利要求1至4中任一項所述的方法,其特征在于,對提取得到的SQL語句進行分析包括:
對提取得到的SQL語句按照預先配置的規則進行分析。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京安華金和科技有限公司,未經北京安華金和科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111310323.7/1.html,轉載請聲明來源鉆瓜專利網。





