梁寬宏
(武漢光谷職業(yè)學(xué)院,湖北 武漢 430000)
訪問控制有很多種類型,常見的為自主訪問控制、強(qiáng)制訪問控制和基于角色的訪問控制模型。自主訪問控制指主體有權(quán)訪問由自身創(chuàng)建的對象,還可以將訪問的權(quán)限進(jìn)行轉(zhuǎn)移,使其他用戶能夠得到授權(quán)。強(qiáng)制訪問控制就是系統(tǒng)管理者對訪問的對象進(jìn)行統(tǒng)一管理,強(qiáng)制授予主體訪問客體的權(quán)限,權(quán)限的多少則根據(jù)主體和客體的安全級別來標(biāo)記。基于角色的訪問控制模型是通過分配角色來進(jìn)行訪問,授予不同的角色一定的權(quán)限,然后對用戶進(jìn)行分類,用戶屬于哪個角色就有該角色擁有的訪問權(quán)。訪問控制矩陣(ACM))中行代表主體,列代表客體,行和列交叉的地方會生成相應(yīng)的規(guī)則,即主體訪問客體時應(yīng)遵循的操作準(zhǔn)則。
授權(quán)策略實(shí)際上就是一種約束規(guī)則,用來約束主體訪問客體,它不僅界定了授權(quán)對象的范圍,也規(guī)范了授權(quán)過程的行為。在范圍上,授權(quán)策略對主體和客體的屬性、數(shù)量進(jìn)行了管理;在過程上,授權(quán)策略描述了具體的授權(quán)對應(yīng)關(guān)系時應(yīng)當(dāng)遵循的授權(quán)規(guī)則,主要包括誰是分配主體、如何分配權(quán)限、有哪些是可以分配的權(quán)限等相關(guān)內(nèi)容。在進(jìn)行授權(quán)管理時,需要對相關(guān)元素分類管理,也必須考慮實(shí)際環(huán)境。此外,在制定授權(quán)關(guān)系時需要遵循相對性的準(zhǔn)則,只有在規(guī)則的約束和協(xié)調(diào)下,系統(tǒng)的安全才能得到保障。
圖優(yōu)化算法是利用圖的邊和頂點(diǎn)來優(yōu)化解決問題,這也是視覺Slam中的最常用的優(yōu)化方法,機(jī)器人的位姿可以用一個頂點(diǎn)表示,任意頂點(diǎn)之間的關(guān)系形成了邊,頂點(diǎn)和邊形成圖,圖優(yōu)化的目的是改變頂點(diǎn)的位姿來達(dá)到邊之間的約束。
在主體-客體(SOA)關(guān)系抽象二部圖中,每一條邊連接兩個頂點(diǎn),分別代表主體(S)和客體(A),邊是主客體之間的權(quán)限關(guān)系。算法框架如圖1所示。

圖1 主體/范疇,范疇/客體關(guān)系圖
在SOA中加入一層范疇集(K),使得主體/權(quán)限分配關(guān)系轉(zhuǎn)化為主體/范疇與范疇/客體分配關(guān)系,并且范疇數(shù)最少,主體/范疇的邊數(shù)+范疇/客體之間的邊數(shù)最少。原始的范疇集有四種關(guān)系:相同;真包含;交集不為空;交集為空。
在用圖優(yōu)化算法進(jìn)行約簡時,必須遵循4點(diǎn)約簡規(guī)則。
約簡規(guī)則1:將兩個具有相同權(quán)限集的角色進(jìn)行合并,生成一個新的角色,將以前已經(jīng)分配角色的用戶或角色重新分配給這個新的合并角色,那么就能減少一個角色數(shù)量和若干邊的數(shù)量,優(yōu)化度量。
約簡規(guī)則2:若一個角色的權(quán)限集是另一個角色權(quán)限集的子集或超集,則創(chuàng)建從超集到子集的邊鏈接,并且超集角色中的指向鏈接將被更新,該種操作沒有改進(jìn)甚至減少優(yōu)化度量。
約簡規(guī)則3:該種約簡規(guī)則需要考慮兩種情況:
(1)若兩個角色中存在四個或四個以上重疊相同權(quán)限集,則為重疊的權(quán)限集,創(chuàng)建一個新的角色,將兩個邊鏈接添加到新角色中。新角色中包含原始兩個角色中相同的權(quán)限集,并將原始兩個角色中相同權(quán)限刪除,將減少優(yōu)化度量。
(2)若在兩個角色中存在重疊相同權(quán)限集在三個或三個以下,將不會優(yōu)化度量。
約簡規(guī)則4:若兩個角色中沒有相同權(quán)限集,對于這種情況將不做任何操作。
用圖優(yōu)化算法進(jìn)行范疇挖掘,首先將訪問控制矩陣轉(zhuǎn)化二維關(guān)系布爾矩陣,其次將布爾矩陣初始化,將初始化后的數(shù)據(jù)集輸入圖表。然后用圖優(yōu)化算法操作進(jìn)行約剪,最后得到最優(yōu)度量,并輸出挖掘最優(yōu)的范疇集。過程如圖2所示。

圖2 優(yōu)化算法流程圖
操作步驟一:產(chǎn)生原始范疇集
(1)初始化范疇集合,根據(jù)隨機(jī)生成的TXT配置文件,記錄配置文件中的主體和該主體的權(quán)限,將每一個主體生成一個原始范疇。(2)將每一個范疇集初始為候選范疇集合。
操作步驟二:計(jì)數(shù)操作
(1)遍歷統(tǒng)計(jì)候選范疇集合中主體與范疇關(guān)系數(shù)、范疇個數(shù)、范疇與客體關(guān)系數(shù)。(2)關(guān)系邊數(shù)=主體與范疇關(guān)系數(shù)+范疇與客體關(guān)系數(shù)。(3)計(jì)算原始度量=范疇個數(shù)+關(guān)系邊數(shù)。
操作步驟三:約簡原始度量
while循環(huán)(優(yōu)化后度量<原始度量);(1)按照約簡規(guī)則1,可以減少范疇個數(shù)和范疇與客體關(guān)系邊數(shù),并將優(yōu)化后度量進(jìn)行更新代替原始度量;(2)按照約簡規(guī)則2、3,可以減少范疇與客體關(guān)系邊數(shù)并將優(yōu)化后度量進(jìn)行更新代替原始度量;根據(jù)約簡規(guī)則,把輸入圖表中的數(shù)據(jù)進(jìn)行約簡優(yōu)化,最后輸入挖掘的最優(yōu)度量及范疇個數(shù),并利用評價函數(shù)評價驗(yàn)證。
(1)數(shù)據(jù)生成器生成的仿真數(shù)據(jù);在授權(quán)策略中,將訪問控制矩陣轉(zhuǎn)化成二維布爾矩陣表1,布爾矩陣行對應(yīng)主體,列對應(yīng)客體,表1中的“1”表示該主體擁有訪問客體權(quán)限,“0”表示該主體不擁有訪問客體權(quán)限。在表1中主體訪問客體權(quán)限,客體存在冗余和重復(fù)元素。根據(jù)圖優(yōu)化方法的約減規(guī)則:約減規(guī)則(1)將減少范疇數(shù)和邊數(shù),優(yōu)化度量;約減規(guī)則(2)、(3),將減少邊數(shù),優(yōu)化度量;約減規(guī)則(4),不改進(jìn)優(yōu)化度量。在圖3中,圖優(yōu)化方法的每一個范疇集中,客體存在繼承關(guān)系,客體是從上往下繼承。經(jīng)過圖優(yōu)化算法操作,將得到最優(yōu)度量,并輸出,挖掘最優(yōu)的范疇。不斷試驗(yàn)結(jié)果如表2。

表1 主客體關(guān)系表

圖3 范疇分層圖

表2 范疇優(yōu)化度量表
比較測試的結(jié)果可得出,經(jīng)過圖優(yōu)化算法優(yōu)化的數(shù)據(jù),可以更好的反映出主體與范疇,范疇與客體之間的分配關(guān)系。測試數(shù)據(jù)集1,輸入仿真較小的測試集,主體數(shù)10、客體數(shù)12和主體分配客體數(shù)76。將較小的測試集在圖中初始化,有32個節(jié)點(diǎn)和86條邊。32個節(jié)點(diǎn)中,主體數(shù)為10,對應(yīng)的范疇數(shù)為10和客體數(shù)12。主體和范疇之間關(guān)系邊數(shù)為10,以及范疇到客體分配邊數(shù)76。最初的起始度量值76+10=86。在圖形優(yōu)化過程中,進(jìn)行14個成功的合并操作。在圖優(yōu)化后,10個主體和12個客體之間生成8個范疇,總計(jì)30個節(jié)點(diǎn)圖中。在圖優(yōu)化操作,邊的數(shù)量減少了44。圖中最后的邊數(shù)是32,最終優(yōu)化度量結(jié)果為32+8=40。
測試數(shù)據(jù)集2、3、4,從初始值201優(yōu)化為165,優(yōu)化合并次數(shù)33,范疇個數(shù)為26;初始值462優(yōu)化為380,優(yōu)化合并次數(shù)73,范疇個數(shù)為38;初始值736優(yōu)化為572,優(yōu)化合并次數(shù)152,范疇個數(shù)69。
挖掘范疇時,圖優(yōu)化方法將自主訪問控制轉(zhuǎn)化為強(qiáng)制訪問控制,權(quán)限從上往下發(fā)生繼承關(guān)系,自頂向下的方式進(jìn)行分層范疇挖掘,底層的范疇集擁有權(quán)限個數(shù)最多,主體安全標(biāo)簽級別越高,能夠讀文件的權(quán)限越多。在進(jìn)行范疇挖掘時,我們必須考慮兩個因素:(1)范疇被劃分或者分配后要與最初訪問控制矩陣中的元素保持一致;(2)范疇數(shù)量與系統(tǒng)的管理和安全息息相關(guān),換言之,隨著范疇數(shù)量的增多,分配關(guān)系就會復(fù)雜化,系統(tǒng)的管理愈加困難,不安全性也隨之增加。
基于以上兩點(diǎn)的考慮,本文提出了一種線性組合的指標(biāo)。記為Q(C),其中,C代表范疇。
Q(C)的定義如下:

G(SO)為主體(S)對客體(O)的布爾型訪問控制矩陣,E(SK) ?F(KO)表示為主體和客體共同屬于某個范疇,F(xiàn)記為范疇集。KMT為范疇挖掘時間,在公式中,θ(θ>)記為調(diào)節(jié)因子,用來平衡二值在取值界限的差別。在公式中,Q(C)值越小,評價指標(biāo)就越高,得到范疇集越優(yōu)。
本文主要研究用自底向上的方法來挖掘范疇。即首先對已有的數(shù)據(jù)庫進(jìn)行挖掘,然后從原始的策略庫中發(fā)現(xiàn)合適的規(guī)則模式。其次利用該種規(guī)則模式,尋找最優(yōu)范疇集。最后利用這種范疇優(yōu)化方法實(shí)現(xiàn)策略自動轉(zhuǎn)化。在授權(quán)策略方面,本文研究了如何將自主訪問控制轉(zhuǎn)化為強(qiáng)制訪問控制,如何將手工分配轉(zhuǎn)變?yōu)橹悄芊峙洌瑥亩瓜到y(tǒng)達(dá)到智能遷移,這對我國開展多級安全的保護(hù)工作具有重大意義,但在范疇集挖掘上,還需進(jìn)一步研究與完善。
科學(xué)技術(shù)創(chuàng)新2021年26期