【技術實現步驟摘要】
本專利技術涉及數據處理,尤其是一種基于表達式的數據權限配置方法。
技術介紹
1、隨著信息化技術的不斷發展,水利行業正逐步向智慧化、信息化轉型。在水利行業業務高速增長的背景下,隨著信息化建設的不斷深入,各類水利數據呈現出爆炸式增長的趨勢。這些數據不僅涵蓋了水文監測、水資源管理、防洪抗旱、水利工程建設等多個方面,還涉及到龐大的用戶群體和復雜的業務流程。面對如此龐大且多樣化的數據資源,如何有效管理數據訪問權限,確保數據的安全性與合規性,成為了水利行業信息化建設中的一個重要挑戰。目前的痛點主要體現在以下方面:
2、1.業務復雜性提升:隨著水利行業業務的不斷拓展和深化,數據訪問需求日益復雜。不同用戶、不同部門、不同項目、不同業務場景對數據的需求各不相同,且經常需要根據實際情況進行調整。傳統的代碼硬編碼方式已難以滿足這種動態變化的需求,且十分不易于管理,權限代碼寫在各個業務場景中,無法進行全局統籌,沒有統一的權限管理頁面。
3、2.業務對實時性要求:在水利行業中,環境和業務條件可能迅速變化,如洪水預警或干旱情況。權限配置的實時性確保了在這些情況下,相關數據能夠被及時授權給需要的個人或團隊,授權之后能立即生效。
4、3.業務對靈活性的要求:業務需求可能會隨時變化。靈活的權限配置能夠快速適應這些變化,無需進行復雜的系統修改。且用戶可以根據特定的業務需求自定義權限規則,如基于用戶的角色、地理位置或訪問時間來設置數據訪問權限
5、4.數據安全性問題:在現有的數據管理系統中,數據權限的控制往往不夠精細,
技術實現思路
1、為了解決上述問題,本專利技術提供一種基于表達式的數據權限配置方法,能夠提高業務接入的兼容性、靈活性、擴展性,提高運維人員運維效率降低運維門檻,能夠適應未來的業務增長。
2、為了實現上述目的,本專利技術采用的技術方案為:
3、一種基于表達式的數據權限配置方法,包括下述步驟:
4、s1.根據業務場景的需求,在權限配置平臺側中配置對應的場景編碼,所述場景編碼用于標識業務服務的數據查詢的service;對各個業務場景的權限規則、動態條件、動態數據權限進行配置,且將所述業務場景的配置數據寫入至記錄數據庫;
5、s2.在業務服務側進行寫入請求時,根據默認鑒權信息注入寫入請求對應的鑒權屬性,且所述鑒權屬性寫入至所述記錄數據庫內;
6、s3.在業務服務側進行查詢請求時,根據所述權限規則生成aviator表達式,且進行數據權限的過濾,以獲得所述數據的權限范圍集合;
7、s4.當所述限范圍集合存在自定義的數據權限范圍時,根據自定義的權限規則且通過反射進行rpc接口、http接口或本地接口的調用獲得對應的結果集,以獲得最終權限查詢范圍;當所述權限范圍集合不存在自定義的數據權限范圍時,所述權限范圍集合為最終權限查詢范圍;
8、s5.通過允許優先或拒絕優先對所述最終權限查詢范圍進行過濾,根據所述查詢請求的條件及過濾的所述最終權限查詢范圍,獲得查詢數據結果。
9、進一步地,在步驟s1中,所述權限規則包括在不同的業務場景,各個機構中各個崗位查詢機構中人員信息的權限規則及查詢值班人員信息的權限規則;所述動態條件通過rpc接口或通過標準規范配置的http接口請求路徑,在不同業務場景下對人員的權限規則進行動態條件配置;所述動態數據權限通過rpc接口或通過標準規范配置的http接口請求路徑,在不同業務場景下對人員的權限規則進行動態數據配置;
10、進一步地,在步驟s2中,當注入為默認鑒權相關內容時,根據所述寫入請求內容將鑒權屬性寫入至所述記錄數據庫內;當注入非默認鑒權相關內容時,將所述寫入請求寫入至所述記錄數據庫內。
11、進一步地,在步驟s3中,在業務服務側進行查詢請求時,根據所述查詢請求生成業務自身對本次查詢范圍所需的查詢參數,對所述查詢參數注入數據權限對應的內容,且調用所述權限配置平臺側rpc接口,以獲得所述業務場景的權限規則。
12、進一步地,根據所述權限規則判斷是否需要實時動態業務參數,當不需要實時動態業務參數時,根據所述權限規則生成aviator表達式;當需要實時動態業務參數時,根據所述配置數據調用rpc接口、http接口或本地接口,通過接口返回生成aviator表達式;根據aviator表達式、用戶信息及調用參數生成權限過濾參數。
13、進一步地,通過所述aviator表達式計算入參為一個map進行解析,以獲得解析結果,所述解析結果按照規則參數名,將所述參數名及所述解析結果分別作為key和value寫入map中,以用于所述數據權限過濾校驗。
14、進一步地,在步驟s4中,當所述限范圍集合存在自定義的數據權限范圍時,每一個所述配置數據的權限范圍結果集合為配置,且將集合的配置到所述結果集的最終權限范圍結果的map,以獲得最終權限查詢范圍,其中map的key為配置編號,map的value為對應的結果范圍。
15、進一步地,在步驟s5中,將所述查詢請求的條件與過濾的所述最終權限查詢范圍進行拼接,生成獲得最終查詢的sql,通過所述sql進行數據庫調用,以將查詢數據結果返回至用戶。
16、本專利技術的有益效果是:
17、通過權限配置平臺側進行統一的權限配置,化了權限管理流程,使得權限變更和審計更加高效。并且設計直觀、易于導航的用戶界面,使得即使是非技術背景的用戶也能輕松管理和配置數據權限,實現了配置的統一化,同時權限配置平臺側提供直觀的管理界面,使得非技術背景的用戶也能輕松管理和配置數據權限,提高了用戶體驗。同時所有權限配置都在一個平臺上進行,簡化了權限管理流程,使得權限變更和審計更加高效。場景編碼、權限規則、動態條件、動態數據權限的配置采用詳細的接入標準,并提供預定義的配置模板,業務系統可以根據這些模板快速接入配置權限,實現了接入配置標準化。使用配置化的權限配置,可以進行可視化配置權限過濾和權限范圍一目了然,確保數據的安全。通過使用表達式求值引擎,實現了一個高效、靈活且易于擴展的數據權限過濾系統,表達式引入aviator表達式,該表達式支持復雜的邏輯自定義,允許用戶根據實際業務需求定義個性化的數據訪問規則,同時aviator提供了簡單的api,使得該系統可以輕松地集成到現有的java應用程序中,無論是單體應用還是微服務架構,都能夠無縫集成。并且通過提供一套統一的數據權限控制系統,減少了多個系統獨立開發和維護數據權限控制邏輯的成本,業務系統可以通過標準化的接入流程快速接入數據權限控制系統,縮短了開發周期,加快了業務上線速度;在業務服務側進行查詢請求中,權限判斷條件和結果的動態實時計算,能夠在應急場景下自動修改權限,確保值班人員能夠將應急事件通知上層領導,支持了動態數據權限增刪的能力,能保證復雜場景的快速接入和高效實現,克服了硬編碼不能靈活接入并快速響應的弊端。本文檔來自技高網...
【技術保護點】
1.一種基于表達式的數據權限配置方法,其特征在于,包括下述步驟:
2.根據權利要求1所述的一種基于表達式的數據權限配置方法,其特征在于:在步驟S1中,所述權限規則包括在不同的業務場景,各個機構中各個崗位查詢機構中人員信息的權限規則及查詢值班人員信息的權限規則;所述動態條件通過RPC接口或通過標準規范配置的HTTP接口請求路徑,在不同業務場景下對人員的權限規則進行動態條件配置;所述動態數據權限通過RPC接口或通過標準規范配置的HTTP接口請求路徑,在不同業務場景下對人員的權限規則進行動態數據配置。
3.根據權利要求1所述的一種基于表達式的數據權限配置方法,其特征在于:在步驟S2中,當注入為默認鑒權相關內容時,根據所述寫入請求內容將鑒權屬性寫入至所述記錄數據庫內;當注入非默認鑒權相關內容時,將所述寫入請求寫入至所述記錄數據庫內。
4.根據權利要求2所述的一種基于表達式的數據權限配置方法,其特征在于:在步驟S3中,在業務服務側進行查詢請求時,根據所述查詢請求生成業務自身對本次查詢范圍所需的查詢參數,對所述查詢參數注入數據權限對應的內容,且調用所述權限
5.根據權利要求4所述的一種基于表達式的數據權限配置方法,其特征在于:根據所述權限規則判斷是否需要實時動態業務參數,當不需要實時動態業務參數時,根據所述權限規則生成Aviator表達式;當需要實時動態業務參數時,根據所述配置數據調用RPC接口、HTTP接口或本地接口,通過接口返回生成Aviator表達式;根據Aviator表達式、用戶信息及調用參數生成權限過濾參數。
6.根據權利要求5所述的一種基于表達式的數據權限配置方法,其特征在于:通過所述Aviator表達式計算入參為一個Map進行解析,以獲得解析結果,所述解析結果按照規則參數名,將所述參數名及所述解析結果分別作為key和value寫入Map中,以用于所述數據權限過濾校驗。
7.根據權利要求1所述的一種基于表達式的數據權限配置方法,其特征在于:在步驟S4中,當所述限范圍集合存在自定義的數據權限范圍時,每一個所述配置數據的權限范圍結果集合為配置,且將集合的配置到所述結果集的最終權限范圍結果的Map,以獲得最終權限查詢范圍,其中Map的key為配置編號,Map的value為對應的結果范圍。
8.根據權利要求1所述的一種基于表達式的數據權限配置方法,其特征在于:在步驟S5中,將所述查詢請求的條件與過濾的所述最終權限查詢范圍進行拼接,生成獲得最終查詢的SQL,通過所述SQL進行數據庫調用,以將查詢數據結果返回至用戶。
...【技術特征摘要】
1.一種基于表達式的數據權限配置方法,其特征在于,包括下述步驟:
2.根據權利要求1所述的一種基于表達式的數據權限配置方法,其特征在于:在步驟s1中,所述權限規則包括在不同的業務場景,各個機構中各個崗位查詢機構中人員信息的權限規則及查詢值班人員信息的權限規則;所述動態條件通過rpc接口或通過標準規范配置的http接口請求路徑,在不同業務場景下對人員的權限規則進行動態條件配置;所述動態數據權限通過rpc接口或通過標準規范配置的http接口請求路徑,在不同業務場景下對人員的權限規則進行動態數據配置。
3.根據權利要求1所述的一種基于表達式的數據權限配置方法,其特征在于:在步驟s2中,當注入為默認鑒權相關內容時,根據所述寫入請求內容將鑒權屬性寫入至所述記錄數據庫內;當注入非默認鑒權相關內容時,將所述寫入請求寫入至所述記錄數據庫內。
4.根據權利要求2所述的一種基于表達式的數據權限配置方法,其特征在于:在步驟s3中,在業務服務側進行查詢請求時,根據所述查詢請求生成業務自身對本次查詢范圍所需的查詢參數,對所述查詢參數注入數據權限對應的內容,且調用所述權限配置平臺側rpc接口,以獲得所述業務場景的權限規則。
5.根據權利要求4所述的一種基于表達式的數據權限配置方法,其特征在于:根據所述權...
【專利技術屬性】
技術研發人員:林小淞,李傳科,黃志剛,龍榮平,陸彬,龔召忠,李坤浪,
申請(專利權)人:廣西壯族自治區水利電力勘測設計研究院有限責任公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。