本公開(kāi)涉及數(shù)據(jù)處理,尤其涉及數(shù)據(jù)處理方法、裝置、設(shè)備和介質(zhì)。
背景技術(shù):
1、為了保障金融機(jī)構(gòu)的業(yè)務(wù)系統(tǒng)的安全性,幾乎每個(gè)業(yè)務(wù)系統(tǒng)都會(huì)存在各種各樣的驗(yàn)證功能,常見(jiàn)的幾種驗(yàn)證功能包括用戶輸入驗(yàn)證、操作邏輯驗(yàn)證、javascript(一種具有函數(shù)優(yōu)先的輕量級(jí)、解釋型或即時(shí)編譯型的編程語(yǔ)言)數(shù)據(jù)驗(yàn)證等前端(即客戶端)邏輯驗(yàn)證。在web(全球廣域網(wǎng),也稱為萬(wàn)維網(wǎng))前端開(kāi)發(fā)中,前端邏輯驗(yàn)證是常見(jiàn)的一種校驗(yàn)方式,利用前端語(yǔ)言限制用戶的非法輸入和操作。但是開(kāi)發(fā)人員在開(kāi)發(fā)校驗(yàn)方法時(shí)可能存在缺陷或遺漏而導(dǎo)致校驗(yàn)邏輯被繞過(guò),面對(duì)此類的校驗(yàn)方法可以通過(guò)修改前端語(yǔ)言或者在傳輸中對(duì)參數(shù)進(jìn)行篡改來(lái)繞過(guò)驗(yàn)證,一些用戶可能會(huì)嘗試?yán)@過(guò)這些前端驗(yàn)證,通過(guò)一些技術(shù)手段繞過(guò)一些限制來(lái)達(dá)到欺騙系統(tǒng)的目的。
2、相關(guān)技術(shù)中,可采用以下方法,來(lái)避免關(guān)鍵邏輯前端校驗(yàn)繞過(guò)的情況發(fā)生:禁用瀏覽器的f12開(kāi)發(fā)者工具,以避免攻擊者通過(guò)分析前端html(hyper?text?markup?language,超文本標(biāo)記語(yǔ)言)元素和javascript代碼,來(lái)攻擊系統(tǒng)。
3、然而該方法僅從前端角度進(jìn)行安全加固,如禁用f12開(kāi)發(fā)者工具,治標(biāo)不治本,攻擊者還可通過(guò)其他方式繞過(guò)校驗(yàn)邏輯。
技術(shù)實(shí)現(xiàn)思路
1、本公開(kāi)提供一種數(shù)據(jù)處理方法、裝置、設(shè)備和介質(zhì),以至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問(wèn)題之一。本公開(kāi)的技術(shù)方案如下:
2、根據(jù)本公開(kāi)實(shí)施例的第一方面,提供一種數(shù)據(jù)處理方法,應(yīng)用于服務(wù)端,包括:
3、接收客戶端發(fā)送的目標(biāo)請(qǐng)求報(bào)文;其中,所述目標(biāo)請(qǐng)求報(bào)文是通過(guò)查詢與所述客戶端關(guān)聯(lián)的目標(biāo)流程環(huán)節(jié)的環(huán)節(jié)配置,并根據(jù)所述環(huán)節(jié)配置進(jìn)行頁(yè)面渲染,得到并展示所述目標(biāo)流程環(huán)節(jié)的表單頁(yè)面,響應(yīng)于對(duì)所述表單頁(yè)面中指定頁(yè)面元素的觸發(fā)操作,對(duì)所述表單頁(yè)面中頁(yè)面元素的輸入值進(jìn)行合法性校驗(yàn),并在所述輸入值通過(guò)合法性校驗(yàn)的情況下發(fā)送的;
4、查詢所述目標(biāo)流程環(huán)節(jié)的參數(shù)約束配置和目標(biāo)接口的不可變參數(shù);其中,所述目標(biāo)接口是用于傳輸所述目標(biāo)請(qǐng)求報(bào)文的接口;
5、基于所述參數(shù)約束配置和所述不可變參數(shù),對(duì)所述目標(biāo)請(qǐng)求報(bào)文中的請(qǐng)求參數(shù)進(jìn)行合法性約束校驗(yàn);
6、響應(yīng)于所述請(qǐng)求參數(shù)通過(guò)合法性約束校驗(yàn),將所述請(qǐng)求參數(shù)保存至數(shù)據(jù)庫(kù)。
7、根據(jù)本公開(kāi)實(shí)施例的第二方面,提供另一種數(shù)據(jù)處理方法,應(yīng)用于客戶端,包括:
8、從服務(wù)端查詢與所述客戶端關(guān)聯(lián)的目標(biāo)流程環(huán)節(jié)的環(huán)節(jié)配置,并根據(jù)所述環(huán)節(jié)配置進(jìn)行頁(yè)面渲染,得到并展示所述目標(biāo)流程環(huán)節(jié)的表單頁(yè)面;
9、響應(yīng)于對(duì)所述表單頁(yè)面中指定頁(yè)面元素的觸發(fā)操作,對(duì)所述表單頁(yè)面中頁(yè)面元素的輸入值進(jìn)行合法性校驗(yàn);
10、響應(yīng)于所述輸入值通過(guò)合法性校驗(yàn),向服務(wù)端發(fā)送目標(biāo)請(qǐng)求報(bào)文;
11、其中,所述目標(biāo)請(qǐng)求報(bào)文,用于所述服務(wù)端查詢所述目標(biāo)流程環(huán)節(jié)的參數(shù)約束配置和目標(biāo)接口的不可變參數(shù),并基于所述參數(shù)約束配置和所述不可變參數(shù),對(duì)所述目標(biāo)請(qǐng)求報(bào)文中的請(qǐng)求參數(shù)進(jìn)行合法性約束校驗(yàn),響應(yīng)于所述請(qǐng)求參數(shù)通過(guò)合法性約束校驗(yàn),將所述請(qǐng)求參數(shù)保存至數(shù)據(jù)庫(kù);其中,所述目標(biāo)接口是用于傳輸所述目標(biāo)請(qǐng)求報(bào)文的接口。
12、根據(jù)本公開(kāi)實(shí)施例的第三方面,提供一種數(shù)據(jù)處理裝置,應(yīng)用于服務(wù)端,包括:
13、接收模塊,用于接收客戶端發(fā)送的目標(biāo)請(qǐng)求報(bào)文;其中,所述目標(biāo)請(qǐng)求報(bào)文是通過(guò)查詢與所述客戶端關(guān)聯(lián)的目標(biāo)流程環(huán)節(jié)的環(huán)節(jié)配置,并根據(jù)所述環(huán)節(jié)配置進(jìn)行頁(yè)面渲染,得到并展示所述目標(biāo)流程環(huán)節(jié)的表單頁(yè)面,響應(yīng)于對(duì)所述表單頁(yè)面中指定頁(yè)面元素的觸發(fā)操作,對(duì)所述表單頁(yè)面中頁(yè)面元素的輸入值進(jìn)行合法性校驗(yàn),并在所述輸入值通過(guò)合法性校驗(yàn)的情況下發(fā)送的;
14、查詢模塊,用于查詢所述目標(biāo)流程環(huán)節(jié)的參數(shù)約束配置和目標(biāo)接口的不可變參數(shù);其中,所述目標(biāo)接口是用于傳輸所述目標(biāo)請(qǐng)求報(bào)文的接口;
15、校驗(yàn)?zāi)K,用于基于所述參數(shù)約束配置和所述不可變參數(shù),對(duì)所述目標(biāo)請(qǐng)求報(bào)文中的請(qǐng)求參數(shù)進(jìn)行合法性約束校驗(yàn);
16、保存模塊,用于響應(yīng)于所述請(qǐng)求參數(shù)通過(guò)合法性約束校驗(yàn),將所述請(qǐng)求參數(shù)保存至數(shù)據(jù)庫(kù)。
17、根據(jù)本公開(kāi)實(shí)施例的第四方面,提供另一種數(shù)據(jù)處理裝置,應(yīng)用于客戶端,包括:
18、查詢模塊,用于從服務(wù)端查詢與所述客戶端關(guān)聯(lián)的目標(biāo)流程環(huán)節(jié)的環(huán)節(jié)配置;
19、展示模塊,用于根據(jù)所述環(huán)節(jié)配置進(jìn)行頁(yè)面渲染,得到并展示所述目標(biāo)流程環(huán)節(jié)的表單頁(yè)面;
20、校驗(yàn)?zāi)K,用于響應(yīng)于對(duì)所述表單頁(yè)面中指定頁(yè)面元素的觸發(fā)操作,對(duì)所述表單頁(yè)面中頁(yè)面元素的輸入值進(jìn)行合法性校驗(yàn);
21、發(fā)送模塊,用于響應(yīng)于所述輸入值通過(guò)合法性校驗(yàn),向服務(wù)端發(fā)送目標(biāo)請(qǐng)求報(bào)文;
22、其中,所述目標(biāo)請(qǐng)求報(bào)文,用于所述服務(wù)端查詢所述目標(biāo)流程環(huán)節(jié)的參數(shù)約束配置和目標(biāo)接口的不可變參數(shù),并基于所述參數(shù)約束配置和所述不可變參數(shù),對(duì)所述目標(biāo)請(qǐng)求報(bào)文中的請(qǐng)求參數(shù)進(jìn)行合法性約束校驗(yàn),響應(yīng)于所述請(qǐng)求參數(shù)通過(guò)合法性約束校驗(yàn),將所述請(qǐng)求參數(shù)保存至數(shù)據(jù)庫(kù);其中,所述目標(biāo)接口是用于傳輸所述目標(biāo)請(qǐng)求報(bào)文的接口。
23、根據(jù)本公開(kāi)實(shí)施例的第五方面,提供一種電子設(shè)備,包括:處理器;用于存儲(chǔ)所述處理器可執(zhí)行指令的存儲(chǔ)器;其中,所述處理器被配置為執(zhí)行所述指令,以實(shí)現(xiàn)如本公開(kāi)上述第一方面提出的數(shù)據(jù)處理方法,或者,實(shí)現(xiàn)如本公開(kāi)上述第二方面提出的數(shù)據(jù)處理方法。
24、根據(jù)本公開(kāi)實(shí)施例的第六方面,提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),當(dāng)所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的指令由電子設(shè)備的處理器執(zhí)行時(shí),使得電子設(shè)備能夠執(zhí)行如本公開(kāi)上述第一方面提出的數(shù)據(jù)處理方法,或者,執(zhí)行如本公開(kāi)上述第二方面提出的數(shù)據(jù)處理方法。
25、根據(jù)本公開(kāi)實(shí)施例的第七方面,提供一種計(jì)算機(jī)程序產(chǎn)品,包括:計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如本公開(kāi)上述實(shí)施例所述的數(shù)據(jù)處理方法,或者,實(shí)現(xiàn)如本公開(kāi)上述第二方面提出的數(shù)據(jù)處理方法。
26、本公開(kāi)的實(shí)施例提供的技術(shù)方案至少帶來(lái)以下有益效果:
27、采用客戶端和服務(wù)端同步校驗(yàn)機(jī)制,可以降低攻擊者繞過(guò)前端邏輯驗(yàn)證的概率,增加系統(tǒng)的安全性。并且,服務(wù)端采用參數(shù)化和配置化的校驗(yàn)策略,對(duì)請(qǐng)求參數(shù)進(jìn)行校驗(yàn),能夠靈活適配不斷變化的業(yè)務(wù)場(chǎng)景和業(yè)務(wù)流程,最大化減少開(kāi)發(fā)人員的工作量。此外,使用兩對(duì)非對(duì)稱秘鑰,對(duì)傳輸?shù)恼?qǐng)求報(bào)文進(jìn)行加密加簽、驗(yàn)簽解密,不僅可以防止攻擊者繞過(guò)前端(即客戶端)邏輯來(lái)篡改請(qǐng)求報(bào)文中的字段,還可以保證后端(即服務(wù)端)能夠準(zhǔn)確獲取請(qǐng)求報(bào)文中請(qǐng)求參數(shù),提升后端參數(shù)校驗(yàn)的有效性。
28、應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本公開(kāi)。
1.一種數(shù)據(jù)處理方法,其特征在于,應(yīng)用于服務(wù)端,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述目標(biāo)請(qǐng)求報(bào)文是采用所述客戶端的加密公鑰和簽名私鑰,對(duì)初始請(qǐng)求報(bào)文進(jìn)行加密和加簽處理得到的;
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述基于所述參數(shù)約束配置和所述不可變參數(shù),對(duì)所述目標(biāo)請(qǐng)求報(bào)文中的請(qǐng)求參數(shù)進(jìn)行合法性約束校驗(yàn),包括:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述基于所述服務(wù)端的簽名公鑰和解密私鑰,對(duì)所述目標(biāo)請(qǐng)求報(bào)文進(jìn)行驗(yàn)簽和解密處理,得到所述初始請(qǐng)求報(bào)文,包括:
5.根據(jù)權(quán)利要求1-4中任一項(xiàng)所述的方法,其特征在于,所述基于所述參數(shù)約束配置和所述不可變參數(shù),對(duì)所述目標(biāo)請(qǐng)求報(bào)文中的請(qǐng)求參數(shù)進(jìn)行合法性約束校驗(yàn),包括:
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述響應(yīng)于所述請(qǐng)求參數(shù)通過(guò)合法性約束校驗(yàn),將所述請(qǐng)求參數(shù)保存至數(shù)據(jù)庫(kù),包括:
7.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述注解用于指示以下至少一項(xiàng):
8.根據(jù)權(quán)利要求1-4中任一項(xiàng)所述的方法,其特征在于,所述不可變參數(shù)是響應(yīng)于監(jiān)聽(tīng)到對(duì)所述目標(biāo)接口觸發(fā)的接口配置操作生成的,用于指示所述目標(biāo)接口的接口參數(shù)的不可編輯項(xiàng);
9.根據(jù)權(quán)利要求1-4中任一項(xiàng)所述的方法,其特征在于,所述基于所述參數(shù)約束配置和所述不可變參數(shù),對(duì)所述目標(biāo)請(qǐng)求報(bào)文中的請(qǐng)求參數(shù)進(jìn)行合法性約束校驗(yàn)之后,所述方法還包括:
10.一種數(shù)據(jù)處理方法,其特征在于,應(yīng)用于客戶端,包括:
11.根據(jù)權(quán)利要求10所述的方法,其特征在于,所述響應(yīng)于所述輸入值通過(guò)合法性校驗(yàn),向服務(wù)端發(fā)送目標(biāo)請(qǐng)求報(bào)文,包括:
12.根據(jù)權(quán)利要求11所述的方法,其特征在于,所述采用所述客戶端的加密公鑰和簽名私鑰,對(duì)所述初始請(qǐng)求報(bào)文進(jìn)行加密和加簽處理,得到所述目標(biāo)請(qǐng)求報(bào)文,包括:
13.根據(jù)權(quán)利要求10所述的方法,其特征在于,所述對(duì)所述表單頁(yè)面中頁(yè)面元素的輸入值進(jìn)行合法性校驗(yàn)之后,所述方法還包括:
14.根據(jù)權(quán)利要求10所述的方法,其特征在于,所述響應(yīng)于所述輸入值通過(guò)合法性校驗(yàn),向服務(wù)端發(fā)送目標(biāo)請(qǐng)求報(bào)文之后,所述方法還包括:
15.根據(jù)權(quán)利要求10-14中任一項(xiàng)所述的方法,其特征在于,所述方法還包括:
16.一種數(shù)據(jù)處理裝置,其特征在于,應(yīng)用于服務(wù)端,包括:
17.一種數(shù)據(jù)處理裝置,其特征在于,應(yīng)用于客戶端,包括:
18.一種電子設(shè)備,其特征在于,包括:
19.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),當(dāng)所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的指令由電子設(shè)備的處理器執(zhí)行時(shí),使得電子設(shè)備能夠執(zhí)行如權(quán)利要求1至9中任一項(xiàng)所述的數(shù)據(jù)處理方法,或者,執(zhí)行如權(quán)利要求10至15中任一項(xiàng)所述的數(shù)據(jù)處理方法。
20.一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,其特征在于,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1至9中任一項(xiàng)所述的數(shù)據(jù)處理方法,或者,實(shí)現(xiàn)如權(quán)利要求10至15中任一項(xiàng)所述的數(shù)據(jù)處理方法。