本發(fā)明涉及物聯(lián)網(wǎng),尤其涉及一種saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、在saas平臺(tái)為企業(yè)提供數(shù)字化服務(wù)的過程中,可能涉及到需要saas服務(wù)主動(dòng)調(diào)用企業(yè)本地系統(tǒng)的情況,例如,業(yè)務(wù)處理完成,回調(diào)企業(yè)的財(cái)務(wù)系統(tǒng)生成財(cái)務(wù)憑證等。
2、一般來說,如果企業(yè)本地系統(tǒng)屬于維護(hù)良好且開放的狀態(tài),是可以基于https傳輸協(xié)議和oauth2或者其它請(qǐng)求鑒權(quán)協(xié)議體系,給saas服務(wù)提供互聯(lián)網(wǎng)可訪問的接口。在這種情況下,通過開通saas服務(wù)側(cè)和企業(yè)側(cè)的網(wǎng)絡(luò)防火墻,saas服務(wù)是可以正常地直接訪問企業(yè)服務(wù)。但是,目前企業(yè)數(shù)字化服務(wù)的現(xiàn)狀是,大量在企業(yè)本地部署的數(shù)字化服務(wù)是缺少持續(xù)維護(hù)和升級(jí)的,它們可能基于過時(shí)的不安全的框架開發(fā),存在大量的安全漏洞,將其暴露到互聯(lián)網(wǎng)是極其不安全的;亦或者完全是本地化單體部署架構(gòu),不具備對(duì)外開放接口的條件。在這種情況下,saas服務(wù)便無法正常的直接取方案這些企業(yè)服務(wù)接口。開通saas服務(wù)和企業(yè)側(cè)網(wǎng)絡(luò)專線是一種解決方法,但是這種方法一般成本比較大。
3、因此,亟需一種saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)方法,不僅能夠有效提高企業(yè)數(shù)字化服務(wù)的安全性,還能有效降低開發(fā)成本。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的主要目的在于提供了一種saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)方法、裝置、設(shè)備及存儲(chǔ)介質(zhì),旨在解決現(xiàn)有技術(shù)中企業(yè)數(shù)字化服務(wù)的安全性不高,且成本較高的技術(shù)問題。
2、為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)方法,所述方法包括以下步驟:
3、將saas服務(wù)對(duì)應(yīng)的目標(biāo)請(qǐng)求報(bào)文存儲(chǔ)至企業(yè)服務(wù)請(qǐng)求代理服務(wù)的服務(wù)端的請(qǐng)求中間庫,所述服務(wù)端部署在saas服務(wù)側(cè);
4、在企業(yè)服務(wù)請(qǐng)求代理服務(wù)的客戶端獲取待處理請(qǐng)求時(shí),根據(jù)所述待處理請(qǐng)求的請(qǐng)求參數(shù)從所述請(qǐng)求中間庫中提取對(duì)應(yīng)的目標(biāo)請(qǐng)求并返回至所述客戶端,所述客戶端部署在企業(yè)側(cè);
5、通過企業(yè)內(nèi)網(wǎng)轉(zhuǎn)發(fā)所述目標(biāo)請(qǐng)求,獲取所述企業(yè)內(nèi)網(wǎng)服務(wù)的響應(yīng)報(bào)文,并將所述響應(yīng)報(bào)文寫入所述服務(wù)端的響應(yīng)中間庫;
6、從所述響應(yīng)中間庫中查詢所述目標(biāo)請(qǐng)求報(bào)文對(duì)應(yīng)的響應(yīng)數(shù)據(jù)。
7、可選地,所述將saas服務(wù)對(duì)應(yīng)的目標(biāo)請(qǐng)求報(bào)文存儲(chǔ)至企業(yè)服務(wù)請(qǐng)求代理服務(wù)的服務(wù)端的請(qǐng)求中間庫的步驟之前,還包括:
8、通過企業(yè)服務(wù)請(qǐng)求代理服務(wù)的客戶端從企業(yè)服務(wù)請(qǐng)求代理服務(wù)的服務(wù)端下載服務(wù)證書,所述服務(wù)證書包括saas服務(wù)的應(yīng)用標(biāo)識(shí)和/或服務(wù)端公鑰;
9、基于所述服務(wù)證書對(duì)所述客戶端進(jìn)行初始化配置并生成客戶端密鑰對(duì);
10、使用所述服務(wù)端公鑰對(duì)注冊(cè)請(qǐng)求進(jìn)行加密,并將加密后的注冊(cè)請(qǐng)求傳輸至所述服務(wù)端,所述注冊(cè)請(qǐng)求包括所述應(yīng)用標(biāo)識(shí)、時(shí)間戳和所述客戶端密鑰對(duì)對(duì)應(yīng)的公鑰;
11、在所述服務(wù)端接收到所述加密后的注冊(cè)請(qǐng)求后,使用服務(wù)端私鑰進(jìn)行解密,并對(duì)解密結(jié)果進(jìn)行驗(yàn)證,獲得驗(yàn)證結(jié)果;
12、若所述驗(yàn)證結(jié)果表示驗(yàn)證通過,則根據(jù)所述應(yīng)用標(biāo)識(shí)緩存所述客戶端密鑰對(duì)對(duì)應(yīng)的公鑰。
13、可選地,所述在所述服務(wù)端接收到所述加密后的注冊(cè)請(qǐng)求后,使用服務(wù)端私鑰進(jìn)行解密,并對(duì)解密結(jié)果進(jìn)行驗(yàn)證,獲得驗(yàn)證結(jié)果的步驟,包括:
14、在所述服務(wù)端接收到所述加密后的注冊(cè)請(qǐng)求后,使用服務(wù)端私鑰對(duì)所述加密后的注冊(cè)請(qǐng)求進(jìn)行解密,獲得解密結(jié)果;
15、基于所述解密結(jié)果提取所述時(shí)間戳,并判斷所述時(shí)間戳是否超期,將判斷結(jié)果作為驗(yàn)證結(jié)果。
16、可選地,所述將saas服務(wù)對(duì)應(yīng)的目標(biāo)請(qǐng)求報(bào)文存儲(chǔ)至企業(yè)服務(wù)請(qǐng)求代理服務(wù)的服務(wù)端的請(qǐng)求中間庫的步驟,包括:
17、當(dāng)saas服務(wù)需要請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)時(shí),基于目標(biāo)應(yīng)用標(biāo)識(shí)和原始請(qǐng)求報(bào)文進(jìn)行報(bào)文組裝,生成目標(biāo)請(qǐng)求報(bào)文;
18、調(diào)用企業(yè)服務(wù)請(qǐng)求代理服務(wù)的服務(wù)端的請(qǐng)求提交接口將所述目標(biāo)請(qǐng)求報(bào)文發(fā)送至所述服務(wù)端后,獲取服務(wù)端私鑰和所述目標(biāo)應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的客戶端公鑰;
19、利用所述目標(biāo)應(yīng)用標(biāo)識(shí)對(duì)應(yīng)的客戶端公鑰對(duì)所述目標(biāo)請(qǐng)求報(bào)文進(jìn)行加密,通過所述服務(wù)端私鑰對(duì)加密后的目標(biāo)請(qǐng)求報(bào)文進(jìn)行加簽,獲得加密加簽后的目標(biāo)請(qǐng)求報(bào)文;
20、將所述加密加簽后的目標(biāo)請(qǐng)求報(bào)文存儲(chǔ)至所述服務(wù)端的請(qǐng)求中間庫。
21、可選地,所述在企業(yè)服務(wù)請(qǐng)求代理服務(wù)的客戶端獲取待處理請(qǐng)求時(shí),根據(jù)所述待處理請(qǐng)求的請(qǐng)求參數(shù)從所述請(qǐng)求中間庫中提取對(duì)應(yīng)的目標(biāo)請(qǐng)求并返回至所述客戶端的步驟,包括:
22、在企業(yè)服務(wù)請(qǐng)求代理服務(wù)的客戶端通過定時(shí)輪詢獲取待處理請(qǐng)求時(shí),利用服務(wù)端公鑰對(duì)所述待處理請(qǐng)求進(jìn)行加密,通過客戶端私鑰對(duì)加密后的待處理請(qǐng)求進(jìn)行加簽,獲得加密加簽后的待處理請(qǐng)求;
23、將所述加密加簽后的待處理請(qǐng)求傳輸至所述服務(wù)端;
24、在所述服務(wù)端接收到所述加密加簽后的待處理請(qǐng)求后,使用客戶端公鑰對(duì)所述加密加簽后的待處理請(qǐng)求進(jìn)行驗(yàn)簽;
25、在驗(yàn)簽通過后,使用服務(wù)端私鑰對(duì)所述加密加簽后的待處理請(qǐng)求進(jìn)行解密,獲得原始的待處理請(qǐng)求;
26、根據(jù)所述原始的待處理請(qǐng)求的請(qǐng)求參數(shù)從所述請(qǐng)求中間庫中提取對(duì)應(yīng)的目標(biāo)請(qǐng)求并返回至所述客戶端。
27、可選地,所述通過企業(yè)內(nèi)網(wǎng)轉(zhuǎn)發(fā)所述目標(biāo)請(qǐng)求,獲取所述企業(yè)內(nèi)網(wǎng)服務(wù)的響應(yīng)報(bào)文,并將所述響應(yīng)報(bào)文寫入所述服務(wù)端的響應(yīng)中間庫的步驟,包括:
28、在所述客戶端接收到所述目標(biāo)請(qǐng)求后,利用服務(wù)端公鑰進(jìn)行驗(yàn)簽;
29、在驗(yàn)簽通過后,利用客戶端私鑰對(duì)所述目標(biāo)請(qǐng)求進(jìn)行解密,獲得原始的目標(biāo)請(qǐng)求;
30、通過企業(yè)內(nèi)網(wǎng)轉(zhuǎn)發(fā)所述原始的目標(biāo)請(qǐng)求,獲取所述企業(yè)內(nèi)網(wǎng)服務(wù)的響應(yīng)報(bào)文;
31、將所述響應(yīng)報(bào)文寫入所述服務(wù)端的響應(yīng)中間庫。
32、8.可選地,所述通過企業(yè)內(nèi)網(wǎng)轉(zhuǎn)發(fā)所述原始的目標(biāo)請(qǐng)求,獲取所述企業(yè)內(nèi)網(wǎng)服務(wù)的響應(yīng)報(bào)文的步驟之后,還包括:
33、利用服務(wù)端公鑰對(duì)所述響應(yīng)報(bào)文進(jìn)行加密,通過客戶端私鑰對(duì)加密后的響應(yīng)報(bào)文進(jìn)行加簽,獲得加密加簽后的響應(yīng)報(bào)文;
34、將所述加密加簽后的響應(yīng)報(bào)文提交至所述服務(wù)端,并使用客戶端公鑰和服務(wù)端私鑰對(duì)所述加密加簽后的響應(yīng)報(bào)文依次進(jìn)行驗(yàn)簽和解密,獲得原始響應(yīng)報(bào)文;
35、相應(yīng)地,所述將所述響應(yīng)報(bào)文寫入所述服務(wù)端的響應(yīng)中間庫的步驟,包括:
36、將所述原始響應(yīng)報(bào)文寫入所述服務(wù)端的響應(yīng)中間庫。
37、此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提出一種saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)裝置,所述裝置包括:
38、請(qǐng)求存儲(chǔ)模塊,用于將saas服務(wù)對(duì)應(yīng)的目標(biāo)請(qǐng)求報(bào)文存儲(chǔ)至企業(yè)服務(wù)請(qǐng)求代理服務(wù)的服務(wù)端的請(qǐng)求中間庫,所述服務(wù)端部署在saas服務(wù)側(cè);
39、請(qǐng)求提取模塊,用于在企業(yè)服務(wù)請(qǐng)求代理服務(wù)的客戶端獲取待處理請(qǐng)求時(shí),根據(jù)所述待處理請(qǐng)求的請(qǐng)求參數(shù)從所述請(qǐng)求中間庫中提取對(duì)應(yīng)的目標(biāo)請(qǐng)求并返回至所述客戶端,所述客戶端部署在企業(yè)側(cè);
40、響應(yīng)存儲(chǔ)模塊,用于通過企業(yè)內(nèi)網(wǎng)轉(zhuǎn)發(fā)所述目標(biāo)請(qǐng)求,獲取所述企業(yè)內(nèi)網(wǎng)服務(wù)的響應(yīng)報(bào)文,并將所述響應(yīng)報(bào)文寫入所述服務(wù)端的響應(yīng)中間庫;
41、響應(yīng)查詢模塊,用于從所述響應(yīng)中間庫中查詢所述目標(biāo)請(qǐng)求報(bào)文對(duì)應(yīng)的響應(yīng)數(shù)據(jù)。
42、此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提出一種saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)設(shè)備,所述設(shè)備包括:存儲(chǔ)器、處理器及存儲(chǔ)在所述存儲(chǔ)器上并可在所述處理器上運(yùn)行的saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)程序,所述saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)程序配置為實(shí)現(xiàn)如上文所述的saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)方法的步驟。
43、此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提出一種存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)上存儲(chǔ)有saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)程序,所述saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上文所述的saas平臺(tái)請(qǐng)求企業(yè)內(nèi)網(wǎng)服務(wù)方法的步驟。
44、本發(fā)明公開了將saas服務(wù)對(duì)應(yīng)的目標(biāo)請(qǐng)求報(bào)文存儲(chǔ)至企業(yè)服務(wù)請(qǐng)求代理服務(wù)的服務(wù)端的請(qǐng)求中間庫,所述服務(wù)端部署在saas服務(wù)側(cè);在企業(yè)服務(wù)請(qǐng)求代理服務(wù)的客戶端獲取待處理請(qǐng)求時(shí),根據(jù)所述待處理請(qǐng)求的請(qǐng)求參數(shù)從所述請(qǐng)求中間庫中提取對(duì)應(yīng)的目標(biāo)請(qǐng)求并返回至所述客戶端,所述客戶端部署在企業(yè)側(cè);通過企業(yè)內(nèi)網(wǎng)轉(zhuǎn)發(fā)所述目標(biāo)請(qǐng)求,獲取所述企業(yè)內(nèi)網(wǎng)服務(wù)的響應(yīng)報(bào)文,并將所述響應(yīng)報(bào)文寫入所述服務(wù)端的響應(yīng)中間庫;從所述響應(yīng)中間庫中查詢所述目標(biāo)請(qǐng)求報(bào)文對(duì)應(yīng)的響應(yīng)數(shù)據(jù)。由于本發(fā)明在saas服務(wù)側(cè)部署企業(yè)服務(wù)請(qǐng)求代理服務(wù)的服務(wù)端,在企業(yè)側(cè)部署企業(yè)服務(wù)請(qǐng)求代理服務(wù)的客戶端,利用服務(wù)端暫存saas服務(wù)請(qǐng)求,客戶端拉取請(qǐng)求,企業(yè)內(nèi)網(wǎng)轉(zhuǎn)發(fā)獲取響應(yīng)并回傳到服務(wù)端,saas服務(wù)請(qǐng)求響應(yīng)的過程,相比于現(xiàn)有技術(shù),本發(fā)明實(shí)現(xiàn)了在只有企業(yè)側(cè)服務(wù)主動(dòng)請(qǐng)求saas側(cè)服務(wù)的前提下,達(dá)到saas服務(wù)主動(dòng)請(qǐng)求了企業(yè)側(cè)服務(wù)的效果,不僅提高了企業(yè)數(shù)字化服務(wù)的安全性,還降低了開發(fā)成本。