[發明專利]一種數據權限的實現方法在審
| 申請號: | 201310642062.8 | 申請日: | 2013-12-03 |
| 公開(公告)號: | CN104679792A | 公開(公告)日: | 2015-06-03 |
| 發明(設計)人: | 瞿建軍;周正 | 申請(專利權)人: | 航天信息軟件技術有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京科龍寰宇知識產權代理有限責任公司 11139 | 代理人: | 孫皓晨 |
| 地址: | 100097 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據 權限 實現 方法 | ||
技術領域
本發明涉及數據權限技術領域,特別涉及一種數據權限的實現方法,其應用于需要控制用戶數據訪問權限的系統,例如:信息系統,企業管理軟件系統等。
背景技術
在現有的ERP系統中,一般不能根據用戶的不同,顯示不同的業務數據或者每個模塊的業務權限控制都是業務開發人員分別編寫,效率很低。現有技術還存在下列問題:
用戶不能通過配置方式來設定數據權限,或者配置方式復雜不易操作,簡單的控制不能滿足高級用戶的需求;
每個模塊的業務開發人員都需要在開發過程中考慮數據權限,每個sql查詢,每個列表都要單獨處理。
因此,需要開發一套業務實現,針對不同的用戶,可以通過配置的方式使他們看到不同的數據集合;并且不影響業務功能的開發,即為本領域技術人員的研究方向所在。
發明內容
本發明的主要目的是提供一種數據權限的實現方法,解決了不同用戶擁有不同數據權限的問題;并且對業務邏輯開發人員是透明的,業務開發人員不需要考慮數據權限相關的問題。
為了達到上述目的,本發明提供一種數據權限的實現方法,其包括如下步驟:
進行數據權限配置;
根據數據權限配置進行sql解析;
對解析后的數據權限sql進行執行;
獲取數據權限過濾后的結果集。
其中:進行數據權限配置包括如下子步驟:
設置需要控制權限的項目;
將權限項綁定到用戶,使用戶只能看到關聯到自己的項目。
其中,進行數據權限配置還包括設置sql,對權限項進行高級查詢的子步驟。
其中,在設置需要控制權限的項目的步驟中,設置需要控制權限的項目,是設置數據庫表的一個字段。
其中,根據數據權限配置進行sql解析包括如下子步驟:
配置sql的時候加入注解@filter;
在執行sql語句的時候,調用sqlannotation.filter服務,根據數據權限配置,對sql語句進行處理。
其中,對sql語句進行處理的步驟是將@filter注解里的表名或者表達式替換為數據權限配置的值。
其中,@filter采用的定義方式為:單一權限項、關聯權限項或包含AND的關聯權限項。
其中,對解析后的數據權限sql在數據庫中執行。
與現有技術相比:
本發明通過統一的配置頁面,用戶可以簡單的實現數據權限的配置,針對高級用戶提供高級的配置方法。在頁面執行或者顯示的時候通過解析sql或者介入的方式控制數據權限,這樣不影響業務開發人員。
附圖說明
圖1為本發明一個實施例的一種數據權限的實現方法流程圖。
具體實施方式
以下結合附圖,對本發明上述的和另外的技術特征和優點作更詳細的說明。
如圖1所示,為本發明實施例所提供的一種數據權限的實現方法流程圖。
本發明提供的一種數據權限實現方法包括如下步驟:
步驟S1:進行數據權限配置;其包括如下子步驟:
步驟S11:設置需要控制權限的項目,一般是數據庫的某一個表;例如,需要控制人員對倉庫數據的訪問,只有指定的人員可以訪問這個倉庫,這時需要將倉庫表設置為權限項目。
步驟S12:將權限項綁定到用戶,使用戶只能看到關聯到自己的項目;權限項的綁定數據一般保存在數據庫關聯表中,關聯表必須包含兩個字段,權限項的主鍵和用戶的主鍵,一個綁定關系對應關聯表中的一條數據。例如,S11例子中,倉庫主鍵和用戶主鍵的對應關系是一個綁定關系;如果用戶張三可以訪問倉庫一,則對應關聯表中一條數據是:張三的id和倉庫一的id。
步驟S13:設置權限sql,分配給對應用戶;這是另一種設置數據權限的方式,可以對權限項配置一個sql語句,并將這個權限分配給某個用戶;sql執行的結果如果為“真”則代表有相應的訪問權限,如果為“假”,則代表不具備訪問權限。例如,張三可以訪問在北京的倉庫,這時配置sql(from?storeware?where?s.place=’Beijing’)并分配給張三,則張三具有訪問北京倉庫的權限。
步驟S2:根據數據權限配置進行sql解析,數據權限的實現采用sql解析的方式,其包括如下子步驟:
步驟S21:在配置sql的時候加入注解@filter;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于航天信息軟件技術有限公司;,未經航天信息軟件技術有限公司;許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310642062.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:數據儲存設備、數據儲存方法和數據儲存系統
- 下一篇:興趣信息的統計方法及裝置
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





