本技術(shù)涉及權(quán)限認(rèn)證,尤其涉及身份鑒別與訪問控制領(lǐng)域,特別地涉及一種基于數(shù)據(jù)包的鑒權(quán)憑證識別方法、裝置及設(shè)備。
背景技術(shù):
1、在業(yè)務(wù)系統(tǒng)中,一般包括用戶設(shè)備、資源服務(wù)器和認(rèn)證服務(wù)器。當(dāng)用戶設(shè)備想要訪問資源服務(wù)器提供的資源時,需要先通過認(rèn)證服務(wù)器的身份認(rèn)證,認(rèn)證通過后,認(rèn)證服務(wù)器會生成鑒權(quán)憑證,并將生成的鑒權(quán)憑證頒發(fā)給用戶設(shè)備。這樣,用戶設(shè)備可以攜帶該鑒權(quán)憑證去訪問資源服務(wù)器的資源,資源服務(wù)器可以依據(jù)鑒權(quán)憑證確定該用戶設(shè)備是否有對相應(yīng)資源做相應(yīng)操作的權(quán)限。
2、相關(guān)技術(shù)中,不同的業(yè)務(wù)系統(tǒng)所使用的鑒權(quán)方式不同,因此每個業(yè)務(wù)系統(tǒng)所關(guān)聯(lián)的鑒權(quán)憑證不同。為了實(shí)現(xiàn)安全性訪問,避免水平越權(quán)等安全問題的發(fā)生,在各種資源訪問的權(quán)限治理的場景下,例如針對api訪問權(quán)限治理,必須先識別出鑒權(quán)憑證,而目前識別鑒權(quán)憑證通常通過人工測試的方式去識別,該識別方式效率較低。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本技術(shù)實(shí)施例提供一種基于數(shù)據(jù)包的鑒權(quán)憑證識別方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品,能夠?qū)I(yè)務(wù)系統(tǒng)對應(yīng)的鑒權(quán)憑證進(jìn)行自動有效識別,提升識別效率。
2、第一方面,本技術(shù)實(shí)施例提供一種基于數(shù)據(jù)包的鑒權(quán)憑證識別方法,該方法包括:從業(yè)務(wù)系統(tǒng)的關(guān)聯(lián)數(shù)據(jù)庫中獲取m個請求數(shù)據(jù)包及其關(guān)聯(lián)的m個響應(yīng)數(shù)據(jù)包;在m個請求數(shù)據(jù)包的第一請求數(shù)據(jù)包中查找到目標(biāo)登錄字段的情況下,從第一請求數(shù)據(jù)包關(guān)聯(lián)的第一響應(yīng)數(shù)據(jù)包的各個字段中,查找字段名滿足預(yù)設(shè)字段名條件的第一字段,以及字段值為目標(biāo)字符串的第二字段,其中,目標(biāo)登錄字段包括login字段、username字段、passwd字段中的至少一項(xiàng);組合第一字段和第二字段,得到n個備選鑒權(quán)字段;從m個請求數(shù)據(jù)包中篩選包含n個備選鑒權(quán)字段的第二請求數(shù)據(jù)包,并通過對第二請求數(shù)據(jù)包分別執(zhí)行n個備選鑒權(quán)字段的刪除操作,得到n個備選鑒權(quán)字段對應(yīng)的n個第三請求數(shù)據(jù)包,其中,每次刪除操作用于從第二請求數(shù)據(jù)包中刪除一個備選鑒權(quán)字段后得到第三請求數(shù)據(jù)包;接收業(yè)務(wù)系統(tǒng)的服務(wù)側(cè)基于n個第三請求數(shù)據(jù)包返回的n個響應(yīng)結(jié)果,并基于n個響應(yīng)結(jié)果識別n個備選鑒權(quán)字段中的目標(biāo)鑒權(quán)字段,得到業(yè)務(wù)系統(tǒng)關(guān)聯(lián)的鑒權(quán)憑證。
3、在第一方面的一些可實(shí)現(xiàn)方式中,在從業(yè)務(wù)系統(tǒng)的關(guān)聯(lián)數(shù)據(jù)庫中獲取m個請求數(shù)據(jù)包及其關(guān)聯(lián)的m個響應(yīng)數(shù)據(jù)包之后,還包括:在請求數(shù)據(jù)包的統(tǒng)一資源定位符中查找login字段;在請求數(shù)據(jù)包的請求體中查找username字段和passwd字段。
4、在第一方面的一些可實(shí)現(xiàn)方式中,預(yù)設(shè)字段條件包括以下至少一項(xiàng):字段名與token相關(guān)聯(lián)、字段名為session字段、字段名為cookie字段;目標(biāo)字符串包含32位字符串、64位字符串、jwt字符串中的至少一項(xiàng)。
5、在第一方面的一些可實(shí)現(xiàn)方式中,響應(yīng)結(jié)果為n個第三請求數(shù)據(jù)包關(guān)聯(lián)的n個目標(biāo)響應(yīng)數(shù)據(jù)包,基于n個響應(yīng)結(jié)果識別n個備選鑒權(quán)字段中的目標(biāo)鑒權(quán)字段,包括:通過遍歷n個目標(biāo)響應(yīng)數(shù)據(jù)包,在目標(biāo)響應(yīng)數(shù)據(jù)包中查找權(quán)限關(guān)鍵字;在目標(biāo)響應(yīng)數(shù)據(jù)包中的權(quán)限關(guān)鍵字用于表征權(quán)限失效或者認(rèn)證失敗的情況下,確定目標(biāo)響應(yīng)數(shù)據(jù)包對應(yīng)的備選鑒權(quán)字段為目標(biāo)鑒權(quán)字段;在目標(biāo)響應(yīng)數(shù)據(jù)包中的權(quán)限關(guān)鍵字用于表征權(quán)限有效或者認(rèn)證成功的情況下,確定目標(biāo)響應(yīng)數(shù)據(jù)包對應(yīng)的備選鑒權(quán)字段不是目標(biāo)鑒權(quán)字段。
6、在第一方面的一些可實(shí)現(xiàn)方式中,響應(yīng)結(jié)果為n個第三請求數(shù)據(jù)包關(guān)聯(lián)的n個目標(biāo)響應(yīng)數(shù)據(jù)包,基于n個響應(yīng)結(jié)果識別n個備選鑒權(quán)字段中的目標(biāo)鑒權(quán)字段,包括:從m個響應(yīng)數(shù)據(jù)包中,獲取第二請求數(shù)據(jù)包關(guān)聯(lián)的第二響應(yīng)數(shù)據(jù)包;將每個目標(biāo)響應(yīng)數(shù)據(jù)包與第二響應(yīng)數(shù)據(jù)包進(jìn)行比對;在目標(biāo)響應(yīng)數(shù)據(jù)包與第二響應(yīng)數(shù)據(jù)包不一致的情況下,確定目標(biāo)響應(yīng)數(shù)據(jù)包對應(yīng)的備選鑒權(quán)字段為目標(biāo)鑒權(quán)字段。
7、在第一方面的一些可實(shí)現(xiàn)方式中,組合第一字段和第二字段,得到n個備選鑒權(quán)字段,包括:組合第一字段和第二字段,得到p個備選鑒權(quán)字段,p≥n;從m個請求數(shù)據(jù)包及其關(guān)聯(lián)的m個響應(yīng)數(shù)據(jù)包中,隨機(jī)選取預(yù)設(shè)數(shù)量的數(shù)據(jù)包;獲取每個備選鑒權(quán)字段在預(yù)設(shè)數(shù)量的數(shù)據(jù)包中出現(xiàn)的頻率,得到p個頻率值;刪除頻率值小于預(yù)設(shè)頻率閾值的p-n個備選鑒權(quán)字段,得到n個備選頻率字段。
8、在第一方面的一些可實(shí)現(xiàn)方式中,從m個請求數(shù)據(jù)包及其關(guān)聯(lián)的m個響應(yīng)數(shù)據(jù)包中,隨機(jī)選取預(yù)設(shè)數(shù)量的數(shù)據(jù)包,包括:獲取m個響應(yīng)數(shù)據(jù)包的各個字段中目標(biāo)字段的字段值;從m個響應(yīng)數(shù)據(jù)包中,篩選目標(biāo)字段的字段值滿足預(yù)設(shè)篩選條件的多個響應(yīng)數(shù)據(jù)包;從m個請求數(shù)據(jù)包和多個響應(yīng)數(shù)據(jù)包中,隨機(jī)選取預(yù)設(shè)數(shù)量的數(shù)據(jù)包;其中,目標(biāo)字段包括狀態(tài)碼status、數(shù)據(jù)包的數(shù)據(jù)長度length、返回類型mimetype,預(yù)設(shè)篩選條件包括status的字段值為200、mimetype的字段值為json、length的字段值大于預(yù)設(shè)長度閾值中的至少一項(xiàng)。
9、在第一方面的一些可實(shí)現(xiàn)方式中,在從業(yè)務(wù)系統(tǒng)的關(guān)聯(lián)數(shù)據(jù)庫中獲取m個請求數(shù)據(jù)包及其關(guān)聯(lián)的m個響應(yīng)數(shù)據(jù)包之后,還包括:在m個請求數(shù)據(jù)包中均未查找到目標(biāo)登錄字段的情況下,從每個請求數(shù)據(jù)包的各個字段中查找字段名滿足預(yù)設(shè)字段名條件的第一字段,以及字段值為目標(biāo)字符串的第二字段。
10、第二方面,本技術(shù)實(shí)施例提供一種基于數(shù)據(jù)包的鑒權(quán)憑證識別裝置,該裝置包括:獲取模塊,用于從業(yè)務(wù)系統(tǒng)的關(guān)聯(lián)數(shù)據(jù)庫中獲取m個請求數(shù)據(jù)包及其關(guān)聯(lián)的m個響應(yīng)數(shù)據(jù)包;查找模塊,用于在m個請求數(shù)據(jù)包的第一請求數(shù)據(jù)包中查找到目標(biāo)登錄字段的情況下,從第一請求數(shù)據(jù)包關(guān)聯(lián)的第一響應(yīng)數(shù)據(jù)包的各個字段中,查找字段名滿足預(yù)設(shè)字段名條件的第一字段,以及字段值為目標(biāo)字符串的第二字段,其中,目標(biāo)登錄字段包括login字段、username字段、passwd字段中的至少一項(xiàng);組合模塊,用于組合第一字段和第二字段,得到n個備選鑒權(quán)字段;篩選模塊,用于從m個請求數(shù)據(jù)包中篩選包含n個備選鑒權(quán)字段的第二請求數(shù)據(jù)包,并通過對第二請求數(shù)據(jù)包分別執(zhí)行n個備選鑒權(quán)字段的刪除操作,得到n個備選鑒權(quán)字段對應(yīng)的n個第三請求數(shù)據(jù)包,其中,每次刪除操作用于從第二請求數(shù)據(jù)包中刪除一個備選鑒權(quán)字段后得到第三請求數(shù)據(jù)包;識別模塊,用于接收業(yè)務(wù)系統(tǒng)的服務(wù)側(cè)基于n個第三請求數(shù)據(jù)包返回的n個響應(yīng)結(jié)果,并基于n個響應(yīng)結(jié)果識別n個備選鑒權(quán)字段中的目標(biāo)鑒權(quán)字段,得到業(yè)務(wù)系統(tǒng)關(guān)聯(lián)的鑒權(quán)憑證。
11、在第二方面的一些可實(shí)現(xiàn)方式中,查找模塊,還用于在從業(yè)務(wù)系統(tǒng)的關(guān)聯(lián)數(shù)據(jù)庫中獲取m個請求數(shù)據(jù)包及其關(guān)聯(lián)的m個響應(yīng)數(shù)據(jù)包之后,在請求數(shù)據(jù)包的統(tǒng)一資源定位符中查找login字段;在請求數(shù)據(jù)包的請求體中查找username字段和passwd字段。
12、在第二方面的一些可實(shí)現(xiàn)方式中,預(yù)設(shè)字段條件包括以下至少一項(xiàng):字段名與token相關(guān)聯(lián)、字段名為session字段、字段名為cookie字段;目標(biāo)字符串包含32位字符串、64位字符串、jwt字符串中的至少一項(xiàng)。
13、在第二方面的一些可實(shí)現(xiàn)方式中,響應(yīng)結(jié)果為n個第三請求數(shù)據(jù)包關(guān)聯(lián)的n個目標(biāo)響應(yīng)數(shù)據(jù)包,識別模塊包括:遍歷單元,用于通過遍歷n個目標(biāo)響應(yīng)數(shù)據(jù)包,在目標(biāo)響應(yīng)數(shù)據(jù)包中查找權(quán)限關(guān)鍵字;確定單元,用于在目標(biāo)響應(yīng)數(shù)據(jù)包中的權(quán)限關(guān)鍵字用于表征權(quán)限失效或者認(rèn)證失敗的情況下,確定目標(biāo)響應(yīng)數(shù)據(jù)包對應(yīng)的備選鑒權(quán)字段為目標(biāo)鑒權(quán)字段;確定單元,還用于在目標(biāo)響應(yīng)數(shù)據(jù)包中的權(quán)限關(guān)鍵字用于表征權(quán)限有效或者認(rèn)證成功的情況下,確定目標(biāo)響應(yīng)數(shù)據(jù)包對應(yīng)的備選鑒權(quán)字段不是目標(biāo)鑒權(quán)字段。
14、在第二方面的一些可實(shí)現(xiàn)方式中,響應(yīng)結(jié)果為n個第三請求數(shù)據(jù)包關(guān)聯(lián)的n個目標(biāo)響應(yīng)數(shù)據(jù)包,識別模塊包括:獲取單元,用于從m個響應(yīng)數(shù)據(jù)包中,獲取第二請求數(shù)據(jù)包關(guān)聯(lián)的第二響應(yīng)數(shù)據(jù)包;比對單元,用于將每個目標(biāo)響應(yīng)數(shù)據(jù)包與第二響應(yīng)數(shù)據(jù)包進(jìn)行比對;確定單元,用于在目標(biāo)響應(yīng)數(shù)據(jù)包與第二響應(yīng)數(shù)據(jù)包不一致的情況下,確定目標(biāo)響應(yīng)數(shù)據(jù)包對應(yīng)的備選鑒權(quán)字段為目標(biāo)鑒權(quán)字段。
15、在第二方面的一些可實(shí)現(xiàn)方式中,組合模塊具體用于:組合第一字段和第二字段,得到p個備選鑒權(quán)字段,p≥n;從m個請求數(shù)據(jù)包及其關(guān)聯(lián)的m個響應(yīng)數(shù)據(jù)包中,隨機(jī)選取預(yù)設(shè)數(shù)量的數(shù)據(jù)包;獲取每個備選鑒權(quán)字段在預(yù)設(shè)數(shù)量的數(shù)據(jù)包中出現(xiàn)的頻率,得到p個頻率值;刪除頻率值小于預(yù)設(shè)頻率閾值的p-n個備選鑒權(quán)字段,得到n個備選頻率字段。
16、在第二方面的一些可實(shí)現(xiàn)方式中,篩選模塊具體用于:獲取m個響應(yīng)數(shù)據(jù)包的各個字段中目標(biāo)字段的字段值;從m個響應(yīng)數(shù)據(jù)包中,篩選目標(biāo)字段的字段值滿足預(yù)設(shè)篩選條件的多個響應(yīng)數(shù)據(jù)包;從m個請求數(shù)據(jù)包和多個響應(yīng)數(shù)據(jù)包,隨機(jī)選取預(yù)設(shè)數(shù)量的數(shù)據(jù)包;其中,目標(biāo)字段包括狀態(tài)碼status、數(shù)據(jù)包的數(shù)據(jù)長度length、返回類型mimetype,預(yù)設(shè)篩選條件包括status的字段值為200、mimetype的字段值為json、length的字段值大于預(yù)設(shè)長度閾值中的至少一項(xiàng)。
17、在第二方面的一些可實(shí)現(xiàn)方式中,查找模塊,還用于在從業(yè)務(wù)系統(tǒng)的關(guān)聯(lián)數(shù)據(jù)庫中獲取m個請求數(shù)據(jù)包及其關(guān)聯(lián)的m個響應(yīng)數(shù)據(jù)包之后,在m個請求數(shù)據(jù)包中均未查找到目標(biāo)登錄字段的情況下,從每個請求數(shù)據(jù)包的各個字段中查找字段名滿足預(yù)設(shè)字段名條件的第一字段,以及字段值為目標(biāo)字符串的第二字段。
18、第三方面,本技術(shù)實(shí)施例提供一種電子設(shè)備,包括:處理器以及存儲有計(jì)算機(jī)程序指令的存儲器;處理器執(zhí)行計(jì)算機(jī)程序指令時實(shí)現(xiàn)如第一方面的基于數(shù)據(jù)包的鑒權(quán)憑證識別方法的步驟。
19、第四方面,本技術(shù)實(shí)施例提供一種計(jì)算機(jī)可讀存儲介質(zhì),計(jì)算機(jī)可讀存儲介質(zhì)上存儲有計(jì)算機(jī)程序指令,計(jì)算機(jī)程序指令被處理器執(zhí)行時實(shí)現(xiàn)如第一方面的基于數(shù)據(jù)包的鑒權(quán)憑證識別方法的步驟。
20、第五方面,本技術(shù)實(shí)施例提供了一種計(jì)算機(jī)程序產(chǎn)品,計(jì)算機(jī)程序產(chǎn)品被存儲在非易失的存儲介質(zhì)中,計(jì)算機(jī)程序產(chǎn)品被處理器執(zhí)行時實(shí)現(xiàn)如第一方面的基于數(shù)據(jù)包的鑒權(quán)憑證識別方法的步驟。
21、第六方面,本技術(shù)實(shí)施例提供了一種芯片,該芯片包括處理器和通信接口,通信接口和處理器耦合,處理器用于運(yùn)行程序或指令,實(shí)現(xiàn)如第一方面的基于數(shù)據(jù)包的鑒權(quán)憑證識別方法的步驟。
22、本技術(shù)提供一種基于數(shù)據(jù)包的鑒權(quán)憑證識別方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品,從業(yè)務(wù)系統(tǒng)的關(guān)聯(lián)數(shù)據(jù)庫中獲取m個請求數(shù)據(jù)包及其關(guān)聯(lián)的m個響應(yīng)數(shù)據(jù)包;目標(biāo)登錄字段包括login字段、username字段、passwd字段中的至少一項(xiàng),在m個請求數(shù)據(jù)包的第一請求數(shù)據(jù)包中查找到目標(biāo)登錄字段的情況下,表明第一請求數(shù)據(jù)包為登錄接口對應(yīng)的數(shù)據(jù)包,從第一請求數(shù)據(jù)包關(guān)聯(lián)的第一響應(yīng)數(shù)據(jù)包的各個字段中,查找字段名滿足預(yù)設(shè)字段名條件的第一字段,以及字段值為目標(biāo)字符串的第二字段,組合得到n個備選鑒權(quán)字段,從而從登錄接口的返回?cái)?shù)據(jù)中篩選出可能的鑒權(quán)字段?;诖耍瑥膍個請求數(shù)據(jù)包中篩選包含n個備選鑒權(quán)字段的第二請求數(shù)據(jù)包,并對每個第二請求數(shù)據(jù)包分別執(zhí)行n個備選鑒權(quán)字段的刪除操作,每次刪除操作用于從第二請求數(shù)據(jù)包中刪除一個備選鑒權(quán)字段,最終得到n個備選鑒權(quán)字段對應(yīng)的n個第三請求數(shù)據(jù)包,也即,每個第三請求數(shù)據(jù)包中缺失一個備選鑒權(quán)字段。接收業(yè)務(wù)系統(tǒng)的服務(wù)側(cè)基于n個第三請求數(shù)據(jù)包返回的n個響應(yīng)結(jié)果,該響應(yīng)結(jié)果能夠表征響應(yīng)成功或者響應(yīng)失敗,由于響應(yīng)成功的第三請求數(shù)據(jù)包中不會缺失真正的鑒權(quán)字段,因而基于n個響應(yīng)結(jié)果,即可從多個備選鑒權(quán)字段中識別出真正的目標(biāo)鑒權(quán)字段,識別準(zhǔn)確度較高,且相比于人工逐一測試的識別效率較高,能夠快速得到業(yè)務(wù)系統(tǒng)關(guān)聯(lián)的鑒權(quán)憑證。