曹 忠
(山西廣播電視臺(tái)節(jié)目播送中心,山西 太原 030001)
考慮到傳統(tǒng)訪問(wèn)控制策略的局限性,且在當(dāng)前數(shù)據(jù)共享環(huán)境下面臨著信息安全問(wèn)題,目前基于區(qū)塊鏈技術(shù)進(jìn)行訪問(wèn)控制已經(jīng)成為熱點(diǎn)研究方向[1]。區(qū)塊鏈技術(shù)具有去中心化、不可篡改等優(yōu)勢(shì),可以通過(guò)構(gòu)建智能合約,實(shí)現(xiàn)訪問(wèn)控制與身份管理的結(jié)合,有效避免傳統(tǒng)訪問(wèn)控制策略中的單點(diǎn)故障問(wèn)題[2]。然而,這種訪問(wèn)控制策略同樣面臨著單次驗(yàn)證信任問(wèn)題,因此仍然無(wú)法完全適用零信任網(wǎng)絡(luò)[3]??紤]到零信任網(wǎng)絡(luò)的特性,部分學(xué)者提出需要在分布式屬性訪問(wèn)控制的基礎(chǔ)上,進(jìn)一步對(duì)訪問(wèn)行為的風(fēng)險(xiǎn)等級(jí)進(jìn)行評(píng)估與劃分,從而進(jìn)一步優(yōu)化訪問(wèn)控制的靈活性,提高基于區(qū)塊鏈技術(shù)的訪問(wèn)控制手段在零信任網(wǎng)絡(luò)中的應(yīng)用可行性[4]。鑒于此,本研究著重探討了零信任網(wǎng)絡(luò)中基于區(qū)塊鏈的訪問(wèn)風(fēng)險(xiǎn)評(píng)估模型,以準(zhǔn)確評(píng)估訪問(wèn)控制風(fēng)險(xiǎn),從而有效提高訪問(wèn)行為的安全性。
零信任網(wǎng)絡(luò)的特征為對(duì)每個(gè)環(huán)節(jié)的訪問(wèn)控制均需要驗(yàn)證,通過(guò)該用戶的歷史訪問(wèn)行為準(zhǔn)確評(píng)估此次訪問(wèn)風(fēng)險(xiǎn),從而完全杜絕惡意用戶的非法訪問(wèn)行為。根據(jù)這一特征,可考慮構(gòu)建的訪問(wèn)風(fēng)險(xiǎn)特征體系為“主體特征+資源特征+環(huán)境特征”,并對(duì)上述大類別進(jìn)行詳細(xì)分類,最終確定8個(gè)訪問(wèn)風(fēng)險(xiǎn)特征,分別為用戶賬號(hào)信息(account)、用戶所屬組(group)、請(qǐng)求資源地址(url)、請(qǐng)求終端ip(ip)、請(qǐng)求終端端口號(hào)(port)、請(qǐng)求終端所在虛擬網(wǎng)域編號(hào)(vlan)、請(qǐng)求終端連接交換機(jī)ip(ip_s)、訪問(wèn)時(shí)間(time)[5-6]。
數(shù)據(jù)預(yù)處理流程如下:(1)數(shù)據(jù)清洗。通過(guò)數(shù)據(jù)清洗清理掉原始數(shù)據(jù)中的重復(fù)數(shù)據(jù)與不完整數(shù)據(jù),避免此類數(shù)據(jù)對(duì)最終模型訓(xùn)練結(jié)果的影響;(2)數(shù)據(jù)轉(zhuǎn)換。將清洗后的原始數(shù)據(jù)按照標(biāo)簽編碼轉(zhuǎn)換為0~(n-1)的數(shù)值型特征。其中,n為該特征對(duì)應(yīng)取值的數(shù)量。
用戶訪問(wèn)風(fēng)險(xiǎn)評(píng)估的實(shí)質(zhì)為回歸任務(wù),因此可采用的機(jī)器學(xué)習(xí)算法有LightGBM算法、隨機(jī)森林算法、決策樹(shù)算法等,其中LightGBM算法具有訓(xùn)練精度高、尋優(yōu)時(shí)間短、占用內(nèi)存少的優(yōu)勢(shì)。因此本研究選擇該算法進(jìn)行模型構(gòu)建,并通過(guò)與其他3種算法的評(píng)估結(jié)果對(duì)比來(lái)驗(yàn)證模型效果[7-8]。
為了提高模型性能,模型采用貝葉斯優(yōu)化算法進(jìn)行參數(shù)調(diào)節(jié)。該算法可以用指定的參數(shù)優(yōu)化空間,快速確定最優(yōu)參數(shù)組合,并且在參數(shù)調(diào)節(jié)過(guò)程中參考之前的參數(shù)優(yōu)化信息,從而有效地降低迭代次數(shù),更快速地鎖定目標(biāo)函數(shù)最優(yōu)值。貝葉斯優(yōu)化算法的應(yīng)用流程如圖1所示。
圖1 貝葉斯優(yōu)化算法的應(yīng)用流程
本研究采用的概率代理模型為高斯過(guò)程,并采用采集函數(shù)實(shí)現(xiàn)均值越大的點(diǎn)與方差越大的點(diǎn)之間的平衡,從而確定最佳的優(yōu)化搜索方向,避免出現(xiàn)局部最優(yōu)問(wèn)題。在上述流程下,本文對(duì)LightGBM模型進(jìn)行優(yōu)化,提高用戶訪問(wèn)風(fēng)險(xiǎn)評(píng)估的精準(zhǔn)度,縮短模型響應(yīng)時(shí)間,具體構(gòu)建流程如下:
(1)明確模型的重要參數(shù),對(duì)應(yīng)設(shè)置好尋優(yōu)空間,隨機(jī)生成初始化樣本點(diǎn)。在高斯過(guò)程中輸入初始化樣本點(diǎn),對(duì)構(gòu)建的LightGBM模型進(jìn)行訓(xùn)練??紤]到模型精度問(wèn)題,在目標(biāo)函數(shù)設(shè)定值時(shí),取均方根誤差的相反值,原因如下:貝葉斯優(yōu)化算法在迭代時(shí),其參數(shù)最優(yōu)取決于目標(biāo)函數(shù)值,該值越大說(shuō)明參數(shù)結(jié)果越優(yōu),而均方根誤差值越低,說(shuō)明最終確定的評(píng)估結(jié)果越準(zhǔn)確。同時(shí),利用均方根誤差的相反值進(jìn)行高斯代理模型修正,以達(dá)到不斷提升模型算法精度的目的。
(2)在高斯代理模型中,利用采集函數(shù)確定下一組參數(shù),獲取相應(yīng)的均方根誤差值,若此次獲取到的目標(biāo)函數(shù)值優(yōu)于上一輪,則更新對(duì)應(yīng)的數(shù)據(jù)集,再次對(duì)高斯代理模型進(jìn)行修正。
(3)當(dāng)某一組參數(shù)滿足了目標(biāo)函數(shù)值設(shè)定要求,或者貝葉斯優(yōu)化算法達(dá)到最大迭代次數(shù),執(zhí)行終止,輸出對(duì)應(yīng)的參數(shù)組合,確定最終目標(biāo)函數(shù)值。
(4)將貝葉斯優(yōu)化算法得到的最優(yōu)參數(shù)組合輸入LightGBM模型,從而完成基于區(qū)塊鏈的訪問(wèn)風(fēng)險(xiǎn)評(píng)估模型構(gòu)建。
為對(duì)比分析不同算法模型的實(shí)際效果,選擇使用決定系數(shù)、均方根誤差指標(biāo)進(jìn)行效果評(píng)估。決定系數(shù)和均方根誤差的計(jì)算方法如下所示:
(1)
(2)
結(jié)合用戶訪問(wèn)風(fēng)險(xiǎn)評(píng)估要求,確定了最終的綜合評(píng)分函數(shù),計(jì)算方式如下:
(3)
式中,RMSE越小且R2越接近1,該評(píng)分結(jié)果越大,表明模型評(píng)估性能越好。
本研究采用五折交叉驗(yàn)證法對(duì)模型性能進(jìn)行驗(yàn)證,驗(yàn)證流程如圖2所示。將所有訓(xùn)練數(shù)據(jù)劃分為5份,選擇4份進(jìn)行模型訓(xùn)練,另一份則作為驗(yàn)證集,采用循環(huán)驗(yàn)證的方式進(jìn)行5次驗(yàn)證,計(jì)算得到5次結(jié)果的平均值,用于評(píng)估該模型性能。
圖2 五折交叉驗(yàn)證流程
本文在區(qū)塊鏈訪問(wèn)風(fēng)險(xiǎn)評(píng)估模型構(gòu)建中,按照0~1的訪問(wèn)風(fēng)險(xiǎn)值進(jìn)行等級(jí)劃分,根據(jù)區(qū)塊鏈訪問(wèn)風(fēng)險(xiǎn)情況,將用戶風(fēng)險(xiǎn)值劃分為4個(gè)等級(jí),分別為:一級(jí)風(fēng)險(xiǎn),風(fēng)險(xiǎn)值為0~0.4,此時(shí)的訪問(wèn)內(nèi)容包含系統(tǒng)讀寫(xiě)、查詢、上傳和下載;二級(jí)風(fēng)險(xiǎn),風(fēng)險(xiǎn)值為0.4~0.6,用戶訪問(wèn)可進(jìn)行讀寫(xiě)、查詢;三級(jí)風(fēng)險(xiǎn),風(fēng)險(xiǎn)值為0.6~0.8,用戶訪問(wèn)可進(jìn)行讀和查詢;四級(jí)風(fēng)險(xiǎn),風(fēng)險(xiǎn)值為0.8~1,此時(shí)系統(tǒng)拒絕用戶訪問(wèn),限制用戶訪問(wèn)權(quán)限。
本次模型測(cè)試數(shù)據(jù)均來(lái)自防泄露產(chǎn)品日志庫(kù),其中包含用戶訪問(wèn)行為管理日志、用戶訪問(wèn)審計(jì)日志,所有用于測(cè)試的數(shù)據(jù)均進(jìn)行了安全篩選操作,可進(jìn)行公開(kāi)使用。按照安全和隱私保護(hù)要求,經(jīng)過(guò)篩選預(yù)處理后的數(shù)據(jù)共計(jì)有514 850條,本次測(cè)試將所有數(shù)據(jù)劃分為訓(xùn)練集和測(cè)試集,數(shù)據(jù)的劃分比例為4∶1。
在模型參數(shù)設(shè)置中結(jié)合模擬分析要求進(jìn)行了關(guān)鍵參數(shù)處理,具體設(shè)置情況如表1所示。
本文提出的基于貝葉斯優(yōu)化的LightGBM模型參數(shù)設(shè)置內(nèi)容如表2所示。
表2 基于貝葉斯優(yōu)化的LightGBM模型參數(shù)取值范圍
參數(shù)設(shè)置中將以上參數(shù)和相應(yīng)的取值范圍直接帶入模型,對(duì)LightGBM模型進(jìn)行優(yōu)化處理,選取RMSE值作為目標(biāo)函數(shù)值,優(yōu)化中迭代次數(shù)為30次,算法優(yōu)化執(zhí)行中,每一次迭代處理會(huì)得到一個(gè)目標(biāo)函數(shù)值,當(dāng)下一輪迭代輸出目標(biāo)函數(shù)值明顯優(yōu)于之前迭代輸出值后,輸出的迭代結(jié)果會(huì)被進(jìn)行加粗標(biāo)記。本次模型參數(shù)設(shè)置中,在第16次迭代中獲取了最優(yōu)值,各項(xiàng)參數(shù)為:參數(shù)1為889,參數(shù)2為12,參數(shù)3為11.24,參數(shù)4為16,參數(shù)5為0.23,參數(shù)6為0.45,參數(shù)7為0.17,參數(shù)8為488。
本次模型測(cè)試中選擇使用五折交叉驗(yàn)證法獲取不同模型的平均指標(biāo)。經(jīng)過(guò)測(cè)算分析獲得決策樹(shù)模型、隨機(jī)森林模型、XGBoost模型、LightGBM模型和基于貝葉斯優(yōu)化的LightGBM模型score值分別為:3.04、3.41、3.45、4.18、5.22。該項(xiàng)數(shù)值表明基于貝葉斯優(yōu)化的LightGBM模型具有較好的擬合性,其整體準(zhǔn)確率更高。
經(jīng)過(guò)測(cè)算分析獲得決策樹(shù)模型、隨機(jī)森林模型、XGBoost模型、LightGBM模型和基于貝葉斯優(yōu)化的LightGBM模型的訓(xùn)練時(shí)間分別為:8.38 s、2 245 s、193 s、5.56 s、30.26 s。結(jié)果表明決策樹(shù)模型、LightGBM模型和基于貝葉斯優(yōu)化的LightGBM模型能夠滿足實(shí)際應(yīng)用需求,實(shí)際訓(xùn)練時(shí)間較短,另外兩種模型的訓(xùn)練時(shí)間過(guò)長(zhǎng),訓(xùn)練成本較高。該結(jié)果同樣證明了優(yōu)化后的模型能夠滿足樣本訓(xùn)練要求,整體訓(xùn)練時(shí)間較低。
綜合不同模型的訓(xùn)練測(cè)試結(jié)果,可發(fā)現(xiàn)基于貝葉斯優(yōu)化的LightGBM模型相對(duì)于其他模型更加優(yōu)秀,模型的擬合度、準(zhǔn)確度與訓(xùn)練速度都能夠滿足應(yīng)用要求,因此,運(yùn)用該模型可實(shí)現(xiàn)對(duì)用戶訪問(wèn)風(fēng)險(xiǎn)的持續(xù)評(píng)估與分析,根據(jù)系統(tǒng)訪問(wèn)控制要求可有效預(yù)防零信任網(wǎng)絡(luò)對(duì)系統(tǒng)的威脅,提高整體的風(fēng)險(xiǎn)預(yù)測(cè)防范能力,保障系統(tǒng)資源安全。
考慮到基于區(qū)塊鏈技術(shù)的訪問(wèn)控制仍然存在一定風(fēng)險(xiǎn),不適合應(yīng)用在零信任網(wǎng)絡(luò)中,需要構(gòu)建一種有效的訪問(wèn)風(fēng)險(xiǎn)評(píng)估機(jī)制用于完善這種訪問(wèn)控制手段。研究提出了基于區(qū)塊鏈的訪問(wèn)風(fēng)險(xiǎn)評(píng)估模型,模型采用精準(zhǔn)度較高、評(píng)估速度較快的LightGBM模型,并采用貝葉斯優(yōu)化算法對(duì)LightGBM模型進(jìn)行優(yōu)化,通過(guò)高斯過(guò)程控制尋優(yōu)方向,實(shí)驗(yàn)證明了該模型的有效性,適用于基于區(qū)塊鏈技術(shù)的訪問(wèn)控制,可以提升訪問(wèn)控制的安全性。