本申請涉及軟件領域,特別是涉及一種業(yè)務管理方法、業(yè)務網關、服務器、業(yè)務管理系統及介質。
背景技術:
1、目前,在業(yè)務管理中主要是將令牌(token)保存到數據庫中,例如保存至分布式redis里,業(yè)務服務器收到業(yè)務網關發(fā)送的token之后,使用的時候通過token去redis系統拿到當前用戶信息,然后根據拿到的用戶信息獲取對應的數據并將數據返回至客戶端。這種方式存在的缺點主要包括把token暴露給內部所有服務,容易導致token泄露。
技術實現思路
1、本申請至少提供一種業(yè)務管理方法、業(yè)務網關、服務器、業(yè)務管理系統及介質。
2、本申請?zhí)峁┝艘环N業(yè)務管理方法,包括:業(yè)務網關接收由客戶端發(fā)送的數據獲取請求,數據獲取請求中包括用于指示用戶身份的令牌;獲取令牌對應的用戶身份信息并利用用戶身份信息對數據獲取請求中的令牌進行替換,得到替換后的數據獲取請求;將替換后的數據獲取請求發(fā)送至數據獲取請求對應的服務器;將從服務器處接收到的業(yè)務數據轉發(fā)至客戶端,業(yè)務數據是服務器響應替換后的數據獲取請求得到的。
3、在上述方案中,業(yè)務網關通過利用接收到的數據獲取請求中的令牌獲取對應的用戶身份信息,然后使用用戶身份信息對數據獲取請求中的令牌進行替換,使得替換后的數據獲取請求中包括用戶身份信息,將數據獲取請求發(fā)送至服務器,然后服務器就能夠響應該數據獲取請求返回對應的業(yè)務數據,無需將令牌發(fā)送至服務器,減少了令牌暴露的風險,另外,服務器無需再使用令牌去數據庫拿取用戶身份信息,簡化了流程。
4、在一些實施例中,方法還包括:對令牌進行鑒權處理;響應于鑒權處理的結果滿足預設條件,執(zhí)行獲取令牌對應的用戶身份信息并利用用戶身份信息對數據獲取請求中的令牌進行替換,得到替換后的數據獲取請求的步驟。
5、在上述方案中,通過先對令牌進行鑒權處理,在鑒權處理的結果滿足條件的情況下,才獲取對應的用戶身份信息并得到對應的替換后的數據獲取請求,相對于在接收到客戶端發(fā)送的數據獲取請求之后,直接獲取用戶身份信息并得到替換后的數據獲取請求而言,前者能夠減少用戶身份信息暴露的風險。
6、在一些實施例中,對令牌進行鑒權處理,包括:判斷令牌所屬用戶的賬號處于登錄狀態(tài);響應于用戶的賬號處于登錄狀態(tài),確定令牌滿足預設條件。
7、在上述方案中,通過判斷令牌所屬用戶的賬號處于登錄狀態(tài),若用戶不處于登錄狀態(tài)很可能該數據獲取請求并非是由用戶作出,此時如果繼續(xù)響應很可能導致用戶身份信息、業(yè)務數據等數據泄露,故只有在判斷出用戶的賬號處于登錄狀態(tài)的情況下,才確定令牌滿足預設條件,能夠降低用戶身份信息以及業(yè)務數據泄露的風險。
8、在一些實施例中,用戶身份信息包括用戶賬號、用戶昵稱、用戶名稱、用戶角色以及用戶聯系方式中的一者或多者,利用用戶身份信息對數據獲取請求中的令牌進行替換,得到替換后的數據獲取請求,包括:將用戶身份信息利用預設連接符進行組合,得到合成數據;利用合成數據對數據獲取請求中的令牌進行替換,得到替換后的數據獲取請求,其中,合成數據記載在替換后的數據獲取請求的請求頭中。
9、在上述方案中,通過將用戶身份信息利用連接符進行組合,得到合成數據,然后利用合成數據替換對應的令牌能夠節(jié)省空間和流量。
10、在一些實施例中,方法還包括:接收用戶登錄客戶端的登錄請求,登錄請求中包括用戶登錄信息;將登錄請求轉發(fā)至用戶賬號服務器,以便用戶賬號服務器對登錄請求進行驗證,響應于用戶登錄信息為有效信息,生成令牌并將令牌發(fā)送至客戶端。
11、在上述方案中,通過將登錄請求轉發(fā)至用戶賬號服務器,然后在判斷用戶登錄信息為有效信息的情況下,才生成令牌,能夠減少非法攻擊行為的干擾。
12、本申請?zhí)峁┝艘环N業(yè)務管理方法,包括:服務器接收由業(yè)務網關發(fā)送的數據獲取請求,數據獲取請求中包含用戶身份信息;將數據獲取請求中的用戶身份信息寫入線程上下文;從線程上下文中讀取用戶身份信息,并基于用戶身份信息獲取業(yè)務數據;將業(yè)務數據發(fā)送至業(yè)務網關,以便業(yè)務網關將業(yè)務數據轉發(fā)至客戶端。
13、在上述方案中,通過從業(yè)務網關處獲取包含用戶身份信息的數據獲取請求,然后將用戶身份信息寫入線程上下文,方便服務器在需要使用用戶身份信息時,直接從線程上下文處獲取即可,無需使用令牌從數據庫等位置獲取用戶身份信息,減少了令牌暴露的風險,也簡化了流程。
14、在一些實施例中,方法還包括:響應于服務器執(zhí)行業(yè)務需調用其他服務器,將用戶身份信息寫入數據調用請求,并發(fā)送至其他服務器以便其他服務器從數據調用請求中獲取用戶身份信息。
15、在上述方案中,通過將用戶身份信息寫入數據調用請求,無需將令牌寫入數據調用請求,減少了令牌暴露的風險,也簡化了流程。
16、本申請?zhí)峁┝艘环N業(yè)務網關,包括:第一存儲器和第一處理器,第一處理器用于執(zhí)行第一存儲器上的程序指令以實現上述任意一項業(yè)務管理方法。
17、本申請?zhí)峁┝艘环N服務器,包括:第二存儲器和第二處理器,第二處理器用于執(zhí)行第二存儲器上存儲的程序指令以實現上述業(yè)務管理方法。
18、本申請?zhí)峁┝艘环N業(yè)務管理系統,包括如上述的業(yè)務網關以及至少一個上述的服務器。
19、本申請?zhí)峁┝艘环N計算機可讀存儲介質,其上存儲有程序指令,程序指令被處理器執(zhí)行時實現上述任意的業(yè)務管理方法。
20、在上述方案中,業(yè)務網關通過利用接收到的數據獲取請求中的令牌獲取對應的用戶身份信息,然后使用用戶身份信息對數據獲取請求中的令牌進行替換,使得替換后的數據獲取請求中包括用戶身份信息,將數據獲取請求發(fā)送至服務器,然后服務器就能夠響應該數據獲取請求返回對應的業(yè)務數據,無需將令牌發(fā)送至服務器,減少了令牌暴露的風險,另外,服務器無需再使用令牌去數據庫拿取用戶身份信息,簡化了流程。
21、應當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性和解釋性的,而非限制本申請。
1.一種業(yè)務管理方法,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,所述方法還包括:
3.根據權利要求2所述的方法,其特征在于,所述對所述令牌進行鑒權處理,包括:
4.根據權利要求1-3任意一項所述的方法,其特征在于,所述用戶身份信息包括用戶賬號、用戶昵稱、用戶名稱、用戶角色以及用戶聯系方式中的一者或多者,所述利用所述用戶身份信息對所述數據獲取請求中的令牌進行替換,得到替換后的數據獲取請求,包括:
5.根據權利要求1-4任意一項所述的方法,其特征在于,所述方法還包括:
6.一種業(yè)務管理方法,其特征在于,包括:
7.根據權利要求6所述的方法,其特征在于,所述方法還包括:
8.一種業(yè)務網關,其特征在于,包括第一存儲器和第一處理器,所述第一處理器用于執(zhí)行所述第一存儲器上的程序指令以實現上述權利要求1-5中任意一項所述的業(yè)務管理方法。
9.一種服務器,其特征在于,包括第二存儲器和第二處理器,所述第二處理器用于執(zhí)行所述第二存儲器上存儲的程序指令以實現上述權利要求6或7所述的業(yè)務管理方法。
10.一種業(yè)務管理系統,其特征在于,包括如權利要求8所述的業(yè)務網關以及至少一個如權利要求9所述的服務器。
11.一種計算機可讀存儲介質,其上存儲有程序指令,其特征在于,所述程序指令被處理器執(zhí)行時實現權利要求1至5中任一項所述的業(yè)務管理方法和/或實現如權利要求6或7所述的業(yè)務管理方法。