本申請涉及軟件開發(fā)領(lǐng)域,尤其涉及一種前端代碼發(fā)布、資源訪問方法、裝置、設(shè)備及應(yīng)用系統(tǒng)。
背景技術(shù):
1、應(yīng)用系統(tǒng),指的是一種能夠滿足特定業(yè)務(wù)需求和用戶需求的軟件系統(tǒng),它通過與硬件設(shè)備交互,完成預(yù)先定義的任務(wù)。
2、應(yīng)用系統(tǒng)的前端代碼指的是運(yùn)行在用戶設(shè)備(如,應(yīng)用系統(tǒng)客戶端)上的代碼,用于創(chuàng)建或渲染應(yīng)用系統(tǒng)前端的展示頁面,以及實(shí)現(xiàn)用戶交互。
3、現(xiàn)有技術(shù)中,對于同時(shí)支持內(nèi)網(wǎng)客戶端和外網(wǎng)客戶端訪問的同一應(yīng)用系統(tǒng),其兩類客戶端使用的是同一套前端代碼——即,該同一套前端代碼中,既包含了用于渲染和呈現(xiàn)外網(wǎng)客戶端各展示頁面的實(shí)現(xiàn)代碼,又包含了用于渲染和呈現(xiàn)內(nèi)網(wǎng)客戶端各展示頁面的實(shí)現(xiàn)代碼。
4、為了提高應(yīng)用系統(tǒng)前端展示頁面的加載效率,通常將前端代碼存儲到客戶端緩存中,但這會使得獲取到前端代碼變得容易:比如,可以很容易從客戶端緩存中獲取到前端代碼。
5、在容易獲得前端代碼的前提下,一旦再通過某些攻擊或監(jiān)聽等非法手段獲取到高級別權(quán)限(如,獲取到了內(nèi)網(wǎng)客戶端用戶的用戶名和登錄口令),則通過在外網(wǎng)客戶端上運(yùn)行前端代碼就可以顯示內(nèi)網(wǎng)客戶端的展示頁面;進(jìn)一步地,外網(wǎng)客戶端可以獲取前端代碼中包含的路由項(xiàng)信息,并根據(jù)該路由項(xiàng)信息中指定的頁面組件(如某按鈕)與url(uniformresource?locator,統(tǒng)一資源定位符)的對應(yīng)關(guān)系,訪問頁面組件對應(yīng)的url處的資源,導(dǎo)致該資源中的只有內(nèi)網(wǎng)客戶端用戶才有權(quán)限獲知的重要/敏感數(shù)據(jù)發(fā)生泄露。
技術(shù)實(shí)現(xiàn)思路
1、本申請實(shí)施例提供一種前端代碼發(fā)布、資源訪問方法、裝置、設(shè)備及應(yīng)用系統(tǒng),用以解決現(xiàn)有技術(shù)中存在的如何避免應(yīng)用系統(tǒng)數(shù)據(jù)泄露的問題。
2、本申請實(shí)施例采用下述技術(shù)方案:
3、一種前端代碼發(fā)布方法,包括:
4、獲取用于指明第一資源的訪問路徑的第一路由項(xiàng);所述第一資源,為應(yīng)用系統(tǒng)中能夠開放給外網(wǎng)客戶端訪問的資源;
5、獲取用于實(shí)現(xiàn)所述第一路由項(xiàng)的第一前端代碼;
6、將所述第一前端代碼部署至隔離區(qū),以使得所述外網(wǎng)客戶端從所述隔離區(qū)獲取所述第一前端代碼;所述隔離區(qū),為位于內(nèi)部網(wǎng)絡(luò)和外部網(wǎng)絡(luò)之間的網(wǎng)絡(luò)區(qū)域;所述內(nèi)部網(wǎng)絡(luò),為所述應(yīng)用系統(tǒng)的服務(wù)器和后端數(shù)據(jù)庫所在的局域網(wǎng);所述外部網(wǎng)絡(luò),為除所述局域網(wǎng)以外的其它網(wǎng)絡(luò)。
7、一種基于上述前端代碼發(fā)布方法的資源訪問方法,所述資源訪問方法包括:
8、向應(yīng)用系統(tǒng)發(fā)送資源訪問請求,所述資源訪問請求包括接口調(diào)用請求和靜態(tài)資源請求;使得所述應(yīng)用系統(tǒng)執(zhí)行:
9、向所述接口資源請求中增加請求來源標(biāo)識,將增加了請求來源標(biāo)識的接口調(diào)用請求轉(zhuǎn)發(fā)給網(wǎng)關(guān)設(shè)備;將靜態(tài)資源請求轉(zhuǎn)發(fā)給前端服務(wù)器;其中接口調(diào)用請求中包含請求調(diào)用的目標(biāo)接口信息;網(wǎng)關(guān)設(shè)備從增加了請求來源標(biāo)識的接口調(diào)用請求中獲取請求來源標(biāo)識;生成包含所述請求來源標(biāo)識的鑒權(quán)請求;將鑒權(quán)請求和網(wǎng)關(guān)設(shè)備接收的接口調(diào)用請求發(fā)送給用戶中心設(shè)備;用戶中心設(shè)備根據(jù)網(wǎng)關(guān)設(shè)備發(fā)送來的接口調(diào)用請求中包含的所述目標(biāo)接口的信息,以及網(wǎng)關(guān)設(shè)備發(fā)送來的鑒權(quán)請求中包含的請求來源標(biāo)識,判斷所述客戶端是否具備調(diào)用所述目標(biāo)接口的權(quán)限;若判斷結(jié)果為否,則拒絕所述客戶端調(diào)用所述目標(biāo)接口;
10、顯示所述資源訪問請求的返回結(jié)果。
11、一種應(yīng)用系統(tǒng),包括反向代理服務(wù)器、網(wǎng)關(guān)設(shè)備、用戶中心設(shè)備:
12、反向代理服務(wù)器,用于接收所述應(yīng)用系統(tǒng)的客戶端發(fā)送來的接口調(diào)用請求和靜態(tài)資源請求;向接口調(diào)用請求中增加請求來源標(biāo)識,將增加了請求來源標(biāo)識的接口調(diào)用請求轉(zhuǎn)發(fā)給網(wǎng)關(guān)設(shè)備;將靜態(tài)資源請求轉(zhuǎn)發(fā)給前端服務(wù)器;其中,接口調(diào)用請求中包含請求調(diào)用的目標(biāo)接口的信息;
13、網(wǎng)關(guān)設(shè)備,用于從增加了請求來源標(biāo)識的接口調(diào)用請求中獲取請求來源標(biāo)識;生成包含所述請求來源標(biāo)識的鑒權(quán)請求;將鑒權(quán)請求和網(wǎng)關(guān)設(shè)備接收的接口調(diào)用請求發(fā)送給用戶中心設(shè)備;
14、用戶中心設(shè)備,用于根據(jù)網(wǎng)關(guān)設(shè)備發(fā)送來的接口調(diào)用請求中包含的所述目標(biāo)接口的信息,以及網(wǎng)關(guān)設(shè)備發(fā)送來的鑒權(quán)請求中包含的請求來源標(biāo)識,判斷所述客戶端是否具備調(diào)用所述目標(biāo)接口的權(quán)限;若判斷結(jié)果為否,則拒絕所述客戶端調(diào)用所述目標(biāo)接口。
15、一種前端代碼發(fā)布裝置,包括:
16、第一路由項(xiàng)信息獲取單元,用于獲取用于指明第一資源的訪問路徑的第一路由項(xiàng);所述第一資源,為應(yīng)用系統(tǒng)中能夠開放給外網(wǎng)客戶端訪問的資源;
17、第一前端代碼獲取單元,用于獲取用于實(shí)現(xiàn)所述第一路由項(xiàng)的第一前端代碼;
18、部署單元,用于將所述第一前端代碼部署至隔離區(qū),以使得所述外網(wǎng)客戶端從所述隔離區(qū)獲取所述第一前端代碼;所述隔離區(qū),為位于內(nèi)部網(wǎng)絡(luò)和外部網(wǎng)絡(luò)之間的網(wǎng)絡(luò)區(qū)域;所述內(nèi)部網(wǎng)絡(luò),為所述應(yīng)用系統(tǒng)的服務(wù)器和后端數(shù)據(jù)庫所在的局域網(wǎng);所述外部網(wǎng)絡(luò),為除所述局域網(wǎng)以外的其它網(wǎng)絡(luò)。
19、一種基于上述前端代碼發(fā)布方法的資源訪問裝置,包括:
20、請求發(fā)送單元,用于向應(yīng)用系統(tǒng)發(fā)送接口調(diào)用請求和靜態(tài)資源請求;使得所述應(yīng)用系統(tǒng)執(zhí)行:
21、向所述接口資源請求中增加請求來源標(biāo)識,將增加了請求來源標(biāo)識的接口調(diào)用請求轉(zhuǎn)發(fā)給網(wǎng)關(guān)設(shè)備;將靜態(tài)資源請求轉(zhuǎn)發(fā)給前端服務(wù)器;其中接口調(diào)用請求中包含請求調(diào)用的目標(biāo)接口信息;網(wǎng)關(guān)設(shè)備從增加了請求來源標(biāo)識的接口調(diào)用請求中獲取請求來源標(biāo)識;生成包含所述請求來源標(biāo)識的鑒權(quán)請求;將鑒權(quán)請求和網(wǎng)關(guān)設(shè)備接收的接口調(diào)用請求發(fā)送給用戶中心設(shè)備;用戶中心設(shè)備根據(jù)網(wǎng)關(guān)設(shè)備發(fā)送來的接口調(diào)用請求中包含的所述目標(biāo)接口的信息,以及網(wǎng)關(guān)設(shè)備發(fā)送來的鑒權(quán)請求中包含的請求來源標(biāo)識,判斷所述客戶端是否具備調(diào)用所述目標(biāo)接口的權(quán)限;若判斷結(jié)果為否,則拒絕所述客戶端調(diào)用所述目標(biāo)接口;
22、結(jié)果顯示單元,用于顯示調(diào)用請求和靜態(tài)資源請求的返回結(jié)果。
23、一種計(jì)算設(shè)備,包括:存儲器及處理器,其中,
24、所述存儲器,用于存儲計(jì)算機(jī)程序;
25、所述處理器,與所述存儲器耦合,用于執(zhí)行所述存儲器中存儲的所述計(jì)算機(jī)程序,以用于執(zhí)行上述的方法。
26、一種存儲有計(jì)算機(jī)程序的計(jì)算機(jī)可讀存儲介質(zhì),所述計(jì)算機(jī)程序被計(jì)算機(jī)執(zhí)行時(shí)能夠?qū)崿F(xiàn)上述的方法。
27、一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述的方法。
28、本申請實(shí)施例采用的上述至少一個技術(shù)方案能夠達(dá)到以下有益效果:
29、本申請將實(shí)現(xiàn)第一路由項(xiàng)的第一前端代碼拆分出來,且將第一前端代碼部署在隔離區(qū)。由于第一路由項(xiàng)對應(yīng)為外網(wǎng)客戶端訪問資源的訪問路徑,對應(yīng)的,第一前端代碼僅為實(shí)現(xiàn)外網(wǎng)客戶端資源訪問的實(shí)現(xiàn)代碼,因此,從外網(wǎng)客戶端僅能獲取到自身資源訪問所需的前端代碼,避免了僅內(nèi)網(wǎng)客戶端用戶能夠獲知的數(shù)據(jù)的泄露,提高了應(yīng)用系統(tǒng)數(shù)據(jù)的安全性。
1.一種前端代碼發(fā)布方法,其特征在于,包括:
2.如權(quán)利要求1所述的方法,其特征在于,將所述第一前端代碼部署至隔離區(qū),包括:
3.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
4.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
5.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
6.一種基于權(quán)利要求1所述的前端代碼發(fā)布方法的資源訪問方法,其特征在于,所述資源訪問方法包括:
7.一種應(yīng)用系統(tǒng),其特征在于,包括客戶端、反向代理服務(wù)器、網(wǎng)關(guān)設(shè)備、用戶中心設(shè)備:
8.一種前端代碼發(fā)布裝置,其特征在于,包括:
9.一種基于權(quán)利要求1所述的前端代碼發(fā)布方法的資源訪問裝置,其特征在于,包括:
10.一種計(jì)算設(shè)備,其特征在于,包括:存儲器及處理器,其中,
11.一種存儲有計(jì)算機(jī)程序的計(jì)算機(jī)可讀存儲介質(zhì),其特征在于,所述計(jì)算機(jī)程序被計(jì)算機(jī)執(zhí)行時(shí)能夠?qū)崿F(xiàn)權(quán)利要求1~6任一權(quán)項(xiàng)所述的方法。
12.一種計(jì)算機(jī)程序產(chǎn)品,其特征在于,包括計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1~6任一項(xiàng)所述的方法。