【摘 要】因?yàn)榫W(wǎng)絡(luò)系統(tǒng)的異構(gòu)性,以及個(gè)人對(duì)安全需求的不同,安全策略多樣性可能導(dǎo)致的不一致和沖突現(xiàn)象使用安全策略分析成為必要,本文從命題邏輯的理論框架和分析算法對(duì)策略的一致性和變化影響分析,沖突檢測(cè)。能夠?qū)崿F(xiàn)對(duì)安全策略自動(dòng)分析服務(wù)。
【關(guān)鍵詞】安全策略;算法;檢測(cè)
【中圖分類號(hào)】TP309.2 【文獻(xiàn)標(biāo)識(shí)碼】A
【文章編號(hào)】2095-3089(2018)33-0007-01
Abstract:Because of the heterogeneity of network systems and the differences in security needs of individuals, it is necessary to use security policy analysis for inconsistencies and conflicts that may result from the diversity of security policies. In this paper, the theoretical framework and analysis algorithm of propositional logic are used to analyze the consistency and variation of policy, and conflict detection. It can automatically analyze the security policy.
Key words:security strategy; algorithm; check
命題演算大概是在所有當(dāng)前使用的邏輯演算中最簡(jiǎn)單的一種,它是使用命題形式把世界抽象成符號(hào)的一套語(yǔ)言體系。它的特征是具有強(qiáng)大的表達(dá)能力同時(shí)非常的簡(jiǎn)單。
一、問(wèn)題描述
網(wǎng)絡(luò)中系統(tǒng)的互聯(lián)提高了網(wǎng)絡(luò)數(shù)據(jù)資源的共誤享性和協(xié)作能力,而資源的擁有者或管理者希望在資源上加上訪問(wèn)約束,來(lái)限制非法用戶的訪問(wèn),否則數(shù)據(jù)資將存在嚴(yán)重的安全威脅,這勢(shì)必造成同樣的資源上有各方的安全需求,因?yàn)槊總€(gè)角色對(duì)數(shù)據(jù)的安全需求并不相同,安全策略會(huì)把某些敏感重要的權(quán)限分配給了不可知用戶,而檢測(cè)這種情況是非常困難的。這可歸為一種潛在的安全威脅。
二、命題邏輯安全策略的分析
1.命題邏輯安全策略分析。
Wijesekera在命題邏輯層次上提出了一種安全策略復(fù)合的框架,命題邏輯層次指的是把安全策略看做一些抽象的符號(hào)以及把他們的語(yǔ)義看做為指派給主體的許可集的任意轉(zhuǎn)化器——>如果主體 s 由一個(gè)策略指派了許可集中一個(gè)集合 x,那么 x 中僅有一個(gè)許可集可以指派給 s,但是怎樣選擇那個(gè)許可集是隨意的。從這個(gè)角度將,此方法的語(yǔ)義跟安全策略中的標(biāo)準(zhǔn)概念有很大的不同,但它是安全訪問(wèn)策略或許可指派約束的元策略的一種典型,比如義務(wù)約束的分離。
一個(gè)許可可表示成{object, action},而許可集就是上述許可的集合。比如{(file1,+read),(file1,-write)}便是一個(gè)許可集。而{Alice,PermitSet}指許可集PermitSet 指 派 給 對(duì) 象 Alice , (Alice, {{(file1,+read), (file1,-write)},{(file1,-read),(file1,+write)}) 指 Alice 被 指 派 了 許 可 集 或 者 為{(file1,+read),(file1,-write)} , 或 者 為(file1,-write)},{(file1,-read),(file1,+write)},但兩者不可兼得。使用了 T:(s,PermSet) –>(s,PermSet)轉(zhuǎn)化,意為對(duì) s 的許可集指派從 PermSet 轉(zhuǎn)化為PermSet。注意 T 可能是不確定的,因?yàn)閷?duì)象 s 可能被指派兩個(gè)或更多的許可集。既然策略是一種指派,那么策略操作可以用關(guān)系或者幾何理論操作符來(lái)表達(dá)。它們被分為兩類:外部和內(nèi)部操作符。大部分操作符如合取和析取都有這兩類的擴(kuò)展。比如合并,內(nèi)部合并的結(jié)果為兩個(gè)策略許可集的許可合并形成的許可集,而外部合并的結(jié)果為兩個(gè)策略許可集合并成新的包含許可集的許可集集合。運(yùn)算符有:(外部析?。?, (外部合?。?, (外部差), (外部否定), (內(nèi)部析?。?(內(nèi)部合?。?(內(nèi)部差), (內(nèi)部否定),(失效符), (外部投影),(外部指配), (順序合并), (open 完全,指允許所有), (close 完全,指拒絕所有),min(選擇否定集),max(選擇肯定集),(閉包),(內(nèi)部指配)。
此方法提供的框架可以合并不一致,不完全,不確定的策略。這主要是通過(guò)上述操作符的分類來(lái)實(shí)現(xiàn)的,它提供四種對(duì)不確定策略的支持。策略是否是確定的是可以通過(guò)內(nèi)部操作符來(lái)分析的。同時(shí),本方法定義了主體,對(duì)象,狀態(tài),動(dòng)作,授權(quán),來(lái)完善命題邏輯復(fù)合框架的語(yǔ)義。完善了命題邏輯在安全控制描述方面的語(yǔ)義完整性,通過(guò)它可以驗(yàn)證策略的一致性和檢測(cè)策略的沖突。
D. Wijesekera 給出了一個(gè)表達(dá)和復(fù)合舉例,此例說(shuō)明了在基于角色的安全可控制中集合斷言的需要。
2.命題邏輯安全策略D—Algebra 復(fù)合分析。
由于 XACML 在產(chǎn)生決策時(shí)缺乏正常的語(yǔ)義,在復(fù)合領(lǐng)域 XACML 會(huì)產(chǎn)生預(yù)料之外的決策結(jié)果。那如何解決這個(gè)問(wèn)題呢?明顯的,我們需要找到一種合適的決策建模方法,來(lái)彌補(bǔ) XACML 的缺陷,于是產(chǎn)生了D—代數(shù),它是一種決策復(fù)合的方法。
在這里,需要提到一種跟 XACML 有著很深淵源的邏輯代數(shù),即 L∞-代數(shù),因?yàn)樗С侄嘀档奶匦詷O大的支持了 XACML,但是它有極大的缺陷,而不能直接轉(zhuǎn)化成 XACML,比如它的讓人無(wú)法忍受的計(jì)算高復(fù)雜性。于是 Qun Ni 等人提出了一種解決辦法,即 D-代數(shù)。它滿足了決策建模的需求,能支持 XACML 的合并算法以及其他問(wèn)題。比如將在第三節(jié)講到的投票問(wèn)題。
通常決策集合加上其上的運(yùn)算符就可組成 D-代數(shù)。它是一種代數(shù)的結(jié)構(gòu)
在D-代數(shù)中不支持 x⊕x=x,因?yàn)槎鄠€(gè)跟一個(gè)總是不相同的,因?yàn)檫@一點(diǎn)可以應(yīng)用于下文講到的投票問(wèn)題。從上述三個(gè)運(yùn)算符,可以衍生出其他常用的運(yùn)算符,比如⊙, ,其中前者可理解為合取,而后者表示集合的差集,他們都可以用前面的運(yùn)算符表示出來(lái)。比如
D-代數(shù)的代數(shù)依賴于應(yīng)用及其規(guī)則。比如 XACML,如果相關(guān)的屬性信息沒(méi)有錯(cuò)誤,給定一個(gè)請(qǐng)求,所有的策略規(guī)則將產(chǎn)生下面三個(gè)其中的一個(gè)決策,permit,deny 或者 notapplicable.它們都被稱為確定的決策。我們用{p},j5i0abt0b,{na}來(lái)表示。相對(duì)的,便有一種不確定的決策,用{p,na},{d,na}來(lái)表示。它們的意思為返回的決策結(jié)果是不確定的,或?yàn)榍罢?,或?yàn)楹笳摺?/p>
據(jù)此,針對(duì) XACML 的解釋,給定 P-解釋。
涵義與式 1 相同.
從從上述解釋來(lái)看,P-解釋是 8 值的(2^3)。Qun Ni 驗(yàn)證了 D-代數(shù)的計(jì)算上表達(dá)的有效性,即針對(duì)每個(gè)決策矩陣構(gòu)造相應(yīng)的 P-解釋的表達(dá)式。決策矩陣類似于真值表,維數(shù)可變。
其中,2 維決策矩陣就可表達(dá) XACML 的相應(yīng)合并算法,比如 permit-overides。維數(shù)越大,表達(dá)的策略就可越復(fù)雜。在語(yǔ)言的問(wèn)題描述中,本文提到由于 XACML 在一些合并算法中缺少規(guī)范的語(yǔ)義,導(dǎo)致了不明確的決策結(jié)果。XACML 定義了五種標(biāo)準(zhǔn)的規(guī)則合并算法,六種標(biāo)準(zhǔn)的策略合并算法。但是因?yàn)椤癷ndeterminate”的出現(xiàn),一些算法,比如 first-applicable 會(huì)產(chǎn)生不恰當(dāng)?shù)慕Y(jié)果。D-代數(shù)很好的解決了這個(gè)問(wèn)題,它將從每個(gè)算法的思想出發(fā),結(jié)合 XACML 原有算法,利用自己的解釋,給出更規(guī)范的語(yǔ)義定義。比如first-applicable表述如下:
三、結(jié)束語(yǔ)
當(dāng)然,因?yàn)槠浔磉_(dá)的有效性,所有的 XACML 算法,P-解釋都可以容易的表達(dá)出來(lái),上圖的First-Applicable 有點(diǎn)復(fù)雜。其他的算法表達(dá)比較容易。但是,鑒于其精確性和有效性,其在此處鍵入公式。有點(diǎn)已經(jīng)遠(yuǎn)遠(yuǎn)大于其表述形式上的表述。命題邏輯應(yīng)用的是許可集不確定指派的轉(zhuǎn)化思想來(lái)表達(dá)策略的效果。
參考文獻(xiàn)
[1]李程程,張永勝,劉廣鈺.一種安全的語(yǔ)義Web服務(wù)模型研究.計(jì)算機(jī)技術(shù)與發(fā)展,2010.
[2]Qun Ni,Elisa Bertino,Jorge Lobo.D-Algebra Composing Access Control Policy Decisions.ASIACCS09 March 10-12,2009.
[3]張松慧,陸標(biāo)光.基于XACML的Web服務(wù)安全訪問(wèn)控制.計(jì)算機(jī)應(yīng)用研究.
[4]徐金芳,張永勝,隆坤.XCAML中策略/規(guī)則組合算法優(yōu)化.微計(jì)算機(jī)信息,2009.
[5]D.Wijesekera and S.Jajodia.A propositonal policy algebra for access control .ACM Transactions on Information and System Security (TISS),6(2):286-325,2003.
作者簡(jiǎn)介:張達(dá)利(1983-),男,浙江溫嶺人,浙江工商職業(yè)技術(shù)學(xué)院教師 網(wǎng)絡(luò)工程師,主要從事計(jì)算機(jī)網(wǎng)絡(luò)方面研究。