[發(fā)明專利]語法解析器生成方法、SQL訪問控制方法、裝置及設備在審
| 申請?zhí)枺?/td> | 202210299557.4 | 申請日: | 2022-03-25 |
| 公開(公告)號: | CN114675832A | 公開(公告)日: | 2022-06-28 |
| 發(fā)明(設計)人: | 劉小強 | 申請(專利權)人: | 中國建設銀行股份有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06F16/242;G06F16/27 |
| 代理公司: | 北京三友知識產(chǎn)權代理有限公司 11127 | 代理人: | 賈磊;李輝 |
| 地址: | 100033 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 語法 解析 生成 方法 sql 訪問 控制 裝置 設備 | ||
1.一種SQL訪問控制方法,其特征在于,包括:
在應用程序執(zhí)行SQL語句前,基于集成于所述應用程序中的過濾器鏈攔截所述SQL語句;
調(diào)用所述過濾器鏈中的過濾器對所述SQL語句執(zhí)行對應的過濾處理;其中一個所述過濾器為配置有自定義的訪問控制規(guī)則的語法分析器;
當所述SQL語句未通過所述語法分析器的審核時,禁止所述應用程序執(zhí)行所述SQL語句。
2.如權利要求1所述的SQL訪問控制方法,其特征在于,所述過濾器鏈配置于所述應用程序的數(shù)據(jù)庫連接池中。
3.如權利要求1所述的SQL訪問控制方法,其特征在于,還包括:
在所述應用程序啟動時,遍歷過濾器接口集合中各過濾器的開關是否處于打開狀態(tài);
將所述過濾器接口集合中其開關處于打開狀態(tài)的所有過濾器記載至過濾器鏈中。
4.如權利要求1所述的SQL訪問控制方法,其特征在于,所述禁止所述應用程序執(zhí)行所述SQL語句,包括:
終止所述應用程序的執(zhí)行。
5.如權利要求4所述的SQL訪問控制方法,其特征在于,在終止所述應用程序的執(zhí)行之后,還包括:
輸出提示日志。
6.一種語法解析器生成方法,其特征在于,包括:
獲取SQL語法規(guī)則文件;
對所述SQL語法規(guī)則文件進行詞法分析,以從中提取符號集;
對所述符號集進行語法解析,以生成解析樹;
在所述解析樹中加入自定義的訪問控制規(guī)則,生成具有訪問控制功能的語法分析器。
7.如權利要求6所述的語法解析器生成方法,其特征在于,所述SQL語法規(guī)則文件包括多種關系型數(shù)據(jù)庫的SQL語法規(guī)則文件。
8.如權利要求6所述的語法解析器生成方法,其特征在于,所述對所述SQL語法規(guī)則文件進行詞法分析,以從中提取符號集,包括:
基于語法分析器生成工具的詞法分析模塊對所述SQL語法規(guī)則文件進行詞法分析,獲得對應的符號集。
9.如權利要求6所述的語法解析器生成方法,其特征在于,所述對所述符號集進行語法解析,以生成解析樹,包括:
基于語法分析器生成工具的語法分析模塊對所述符號集進行語法分析,獲得對應的解析樹。
10.如權利要求6所述的語法解析器生成方法,其特征在于,所述在所述解析樹中加入自定義的訪問控制規(guī)則,生成具有訪問控制功能的語法分析器,包括:
在所述解析樹中規(guī)則對應的子節(jié)點的屬性中,加入自定義的訪問控制規(guī)則。
11.一種SQL訪問控制裝置,其特征在于,包括:
SQL攔截模塊,用于在應用程序執(zhí)行SQL語句前,基于集成于所述應用程序中的過濾器鏈攔截所述SQL語句;
過濾器調(diào)用模塊,用于調(diào)用所述過濾器鏈中的過濾器對所述SQL語句執(zhí)行對應的過濾處理;其中一個所述過濾器為配置有自定義的訪問控制規(guī)則的語法分析器;
執(zhí)行控制模塊,用于當所述SQL語句未通過所述語法分析器的審核時,禁止所述應用程序執(zhí)行所述SQL語句。
12.一種計算機設備,包括存儲器、處理器、以及存儲在所述存儲器上的計算機程序,其特征在于,所述計算機程序被所述處理器運行時,執(zhí)行根據(jù)權利要求1-5任意一項所述方法的指令。
13.一種計算機存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被計算機設備的處理器運行時,執(zhí)行根據(jù)權利要求1-5任意一項所述方法的指令。
14.一種計算機程序產(chǎn)品,所述計算機程序產(chǎn)品包括指令,其特征在于,所述計算機程序產(chǎn)品上的指令被計算機設備的處理器運行時,執(zhí)行根據(jù)權利要求1-5任意一項所述方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國建設銀行股份有限公司,未經(jīng)中國建設銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210299557.4/1.html,轉載請聲明來源鉆瓜專利網(wǎng)。





