• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      遺留系統(tǒng)的角色工程方法研究*

      2017-12-13 05:44:32寒,鄭尚,陳
      計算機與生活 2017年12期
      關(guān)鍵詞:指派遺留控制策略

      李 寒,鄭 尚,陳 峰

      1.北方工業(yè)大學(xué) 計算機學(xué)院,北京 100144

      2.大規(guī)模流數(shù)據(jù)集成與分析技術(shù)北京市重點實驗室,北京 100144

      3.江蘇科技大學(xué) 計算機科學(xué)與工程學(xué)院,江蘇 鎮(zhèn)江 212003

      4.德蒙特福德大學(xué) 計算機與信息工程學(xué)院,英國 萊斯特 LE1 9BH

      遺留系統(tǒng)的角色工程方法研究*

      李 寒1,2+,鄭 尚3,陳 峰4

      1.北方工業(yè)大學(xué) 計算機學(xué)院,北京 100144

      2.大規(guī)模流數(shù)據(jù)集成與分析技術(shù)北京市重點實驗室,北京 100144

      3.江蘇科技大學(xué) 計算機科學(xué)與工程學(xué)院,江蘇 鎮(zhèn)江 212003

      4.德蒙特福德大學(xué) 計算機與信息工程學(xué)院,英國 萊斯特 LE1 9BH

      針對角色工程方法欠缺關(guān)注遺留系統(tǒng)的外部行為不變性和易演化性的問題,基于FermaT轉(zhuǎn)換理論和集合理論,提出一種遺留系統(tǒng)的角色工程方法。該方法給出訪問控制策略的轉(zhuǎn)換規(guī)則,分析轉(zhuǎn)換規(guī)則的管理成本,討論遺留系統(tǒng)角色工程的設(shè)計準(zhǔn)則,并給出符合設(shè)計準(zhǔn)則的角色工程方法。案例分析表明,該方法能夠在生成角色的同時構(gòu)造角色層次,與主要的角色挖掘方法相比,角色的粒度更加細(xì)化,角色層次完整且不冗余,在產(chǎn)生必要角色的前提下管理開銷最低。

      遺留系統(tǒng);角色工程;訪問控制策略;轉(zhuǎn)換規(guī)則;角色層次

      1 引言

      隨著技術(shù)的革新和業(yè)務(wù)需求的不斷變更,越來越多的軟件系統(tǒng)成為遺留系統(tǒng)[1]。鑒于修改和替換遺留系統(tǒng)的成本過高,它們在軟件系統(tǒng)中始終占據(jù)很高比例[2]。訪問控制的主要作用是保護(hù)未授權(quán)信息的非法訪問。隨著安全技術(shù)和業(yè)務(wù)需求的革新,不適應(yīng)技術(shù)和業(yè)務(wù)需求的問題在遺留訪問控制策略中逐漸突顯。

      角色工程為定義軟件系統(tǒng)角色及相關(guān)信息的過程,分為自底向上、自頂向下和混合模式的角色工程[3]。自底向上的角色工程又稱角色挖掘,其獲取角色等信息的依據(jù)是已有的用戶和權(quán)限。由業(yè)務(wù)驅(qū)動是自頂向下的角色工程的主要特點。混合模式的角色工程則融合了上述兩種方法。為了使遺留系統(tǒng)正常運行,遺留訪問控制策略要滿足外部行為不變的必要條件。同時,由于系統(tǒng)的用戶和業(yè)務(wù)需求具有變化性,良好的演化性也是遺留系統(tǒng)角色工程方法要考慮的因素。演化性指角色及相關(guān)信息能夠隨用戶和業(yè)務(wù)需求而進(jìn)化的特性。目前,角色工程方法缺乏考慮遺留系統(tǒng)的以上需求,并存在僅研究角色挖掘或角色層次挖掘單一問題的情況。綜上所述,本文以遺留系統(tǒng)的需求為依據(jù),探討遺留系統(tǒng)的角色工程方法,研究轉(zhuǎn)換遺留訪問控制策略的方法,目標(biāo)是在不改變遺留訪問控制策略外部行為的條件下,構(gòu)造必要的角色和角色層次,并使其易于演化。

      2 相關(guān)工作

      角色工程依據(jù)系統(tǒng)和用戶的需求或?qū)嶋H的用戶權(quán)限構(gòu)造角色及角色層次。由于遺留系統(tǒng)的訪問控制策略已部署,更適合采用自底向上的角色工程方法。

      近年來,在角色挖掘方面已取得一些成果。Kuhlmann等人提出基于聚類和關(guān)聯(lián)規(guī)則的角色挖掘方法[4]。該方法研究了簡化的ERBAC(enterprise rolebased access control)模型,以關(guān)聯(lián)規(guī)則技術(shù)為依據(jù)為系統(tǒng)構(gòu)建扁平化的功能角色集,生成組織的候選角色。Vaidya等人提出的角色挖掘方法RoleMiner基于子集枚舉方法[5-6]。與文獻(xiàn)[4]相比,RoleMiner構(gòu)建的角色存在重疊權(quán)限,與實際情況更相符,但候選角色集仍具有扁平性的特點。采用關(guān)聯(lián)規(guī)則技術(shù),Ma等人提出角色挖掘方法WRM(weighted role mining)[7],該方法有效地挖掘用戶數(shù)較少的必要角色,但對角色的層次關(guān)系挖掘不足。Vaidya[8-10]和Lu[11]等人利用矩陣分解的思想將用戶和權(quán)限之間的映射關(guān)系變換成二進(jìn)制矩陣,并通過矩陣分解挖掘角色,給出多種角色挖掘方法,但上述方法都未探討角色之間的層次關(guān)系。借鑒圖論的思想,Zhang等人在圖優(yōu)化的基礎(chǔ)上形式化地定義了角色工程,提出了基于圖優(yōu)化的角色挖掘方法[12]。方法的優(yōu)化準(zhǔn)則是權(quán)限指派數(shù)、用戶指派數(shù)和角色數(shù)之和,挖掘的角色和角色層次的管理成本是優(yōu)化的。針對復(fù)合角色,Li等人提出一種基于權(quán)限屬性的角色工程方法FMiner[13]。相比其他角色挖掘方法,通過整合RBAC狀態(tài)與角色的功能特性,該方法能有效減少復(fù)合角色的比例,對RBAC進(jìn)行優(yōu)化。

      角色挖掘的另一個研究內(nèi)容是角色層次關(guān)系的挖掘。Guo等人形式化定義了角色層次挖掘問題,提出解決角色層次構(gòu)建問題的RH-Builder方法以及RH-Miner方法[14]?;诖嬖诘慕巧?,RH-Builder啟發(fā)式地生成并優(yōu)化角色層次。RH-Miner則在已有角色挖掘方法構(gòu)建的角色的基礎(chǔ)上,采用RH-Builder方法挖掘角色層次。針對已部署RBAC的系統(tǒng),Takabi和Joshi通過引入相似度,提出了一種挖掘優(yōu)化的角色層次的方法[15]。

      綜上所述,現(xiàn)有的角色挖掘方法欠缺關(guān)注遺留系統(tǒng)外部行為不變性和易演化性,并且存在探討角色或角色層次單一問題的情況。因此,本文充分考慮遺留系統(tǒng)的上述需求,研究遺留系統(tǒng)的角色工程方法。

      3 遺留系統(tǒng)的角色工程方法框架

      遺留系統(tǒng)角色工程方法的總體框架包含過程模型以及相關(guān)模塊,如圖1所示,具體描述如下。

      Fig.1 Framework of proposed approach圖1 方法框架

      轉(zhuǎn)換負(fù)責(zé)依據(jù)遺留訪問控制策略生成角色和角色層次,輸入是遺留訪問控制策略,輸出是采用RBAC模型組織的訪問控制策略。遺留訪問控制策略的提取方法已在文獻(xiàn)[16]中闡述。

      評估負(fù)責(zé)依據(jù)FermaT維護(hù)環(huán)境的軟件度量衡量轉(zhuǎn)換的訪問控制策略,作用是判斷經(jīng)轉(zhuǎn)換的訪問控制策略是否符合RBAC的必要條件,并對轉(zhuǎn)換結(jié)果進(jìn)行評價,輸出是目標(biāo)訪問控制策略。

      領(lǐng)域知識庫是遺留系統(tǒng)再工程相關(guān)知識的集合,是設(shè)計和實現(xiàn)轉(zhuǎn)換規(guī)則和算法的依據(jù),包括遺留系統(tǒng)需求和訪問控制的相關(guān)知識。前者包括遺留系統(tǒng)在外部行為不變性、易演化性、成本等方面的需求。后者主要包含訪問控制策略的描述模型以及基于角色的訪問控制模型的特征。

      策略的轉(zhuǎn)換負(fù)責(zé)定義基于FermaT轉(zhuǎn)換理論的轉(zhuǎn)換規(guī)則,并在轉(zhuǎn)換規(guī)則的基礎(chǔ)上從遺留訪問控制策略中挖掘角色與角色層次。FermaT維護(hù)環(huán)境(FermaT maintenance environment)是一種在工業(yè)界應(yīng)用得較為成熟的軟件再工程工具,提供多類(如抽象、重寫和切片等)支持遺留系統(tǒng)反向工程、重構(gòu)的轉(zhuǎn)換規(guī)則[17]。除轉(zhuǎn)換規(guī)則外,具有良好擴(kuò)展性的廣譜語言(wide spectrum language,WSL)也是FermaT維護(hù)環(huán)境的基礎(chǔ)。

      WSL不僅能夠從多個層次描述軟件,包括可執(zhí)行語言和程序規(guī)約,還支持各個層次之間以及層次內(nèi)部的轉(zhuǎn)換[18]。轉(zhuǎn)換依據(jù)的轉(zhuǎn)換理論指在保證程序的外部行為不變的前提下,將程序結(jié)構(gòu)在層次間和層次內(nèi)進(jìn)行轉(zhuǎn)換[19]。以支撐轉(zhuǎn)換訪問控制策略為目標(biāo),基于WSL的4個基本層次,設(shè)計了面向訪問控制策略的結(jié)構(gòu)和支持訪問控制策略轉(zhuǎn)換的函數(shù)[16]。擴(kuò)展的WSL不僅用于描述遺留訪問控制策略,提供的函數(shù)還支持轉(zhuǎn)換規(guī)則的執(zhí)行和對轉(zhuǎn)換結(jié)果的評估。其中,評估轉(zhuǎn)換結(jié)果的函數(shù)構(gòu)成軟件度量,包括計算角色數(shù)、用戶數(shù)、權(quán)限指派數(shù)和用戶指派數(shù)。文獻(xiàn)[16]論述了面向訪問控制的FermaT廣譜語言WSL及基于擴(kuò)展的WSL的轉(zhuǎn)換系統(tǒng)。

      4 訪問控制策略的轉(zhuǎn)換

      4.1 轉(zhuǎn)換規(guī)則

      由于權(quán)限的集合體現(xiàn)為角色,方法融合集合理論和轉(zhuǎn)換理論[16],設(shè)計支持遺留系統(tǒng)角色挖掘的訪問控制策略轉(zhuǎn)換規(guī)則。轉(zhuǎn)換規(guī)則的定義及對其管理成本的分析分別在4.1節(jié)和4.2節(jié)闡述。以區(qū)別角色擁有的權(quán)限的來源為目標(biāo),直接權(quán)限和間接權(quán)限分別被定義為被直接指派給角色和通過角色層次繼承的權(quán)限。令rolei和useri表示角色和用戶,rolei.P表示rolei的權(quán)限集合,則轉(zhuǎn)換規(guī)則的描述如下。

      生成規(guī)則:為每一個用戶useri生成唯一的角色rolei,并令角色rolei的權(quán)限與用戶useri的權(quán)限完全相同。

      歸并規(guī)則:當(dāng)兩個角色rolei和rolej的權(quán)限完全相同時,認(rèn)為rolei和rolej為同一角色。歸并rolei與rolej,刪除rolej,i<j,并用rolei替換擁有角色rolej的用戶。

      分解規(guī)則:當(dāng)兩個角色rolej和rolei的權(quán)限具有真子集關(guān)系時,將rolei的權(quán)限分解為rolei.P-rolej.P和rolej.P,并令rolei的直接權(quán)限為rolei.P-rolej.P,rj是ri的低級角色。

      劃分規(guī)則:當(dāng)角色rolei和rolej的權(quán)限不相同且存在交集時,其權(quán)限的并集被劃為3個子集,分別是(rolei.P∪rolej.P)-rolei.P、(rolei.P∪rolej.P)-rolej.P和rolei.P∩rolej.P。前兩個權(quán)限子集被分別指派給rolej和rolei,權(quán)限子集rolei.P∩rolej.P被指派給新角色rolek,并令rolek是rolei和rolej的低級角色。

      4.2 轉(zhuǎn)換規(guī)則的管理成本分析

      角色工程的主要目的是控制管理成本[5]。在遺留系統(tǒng)的角色工程中,由于用戶數(shù)|U|和權(quán)限數(shù)|P|均保持不變,管理成本被定義為對于角色、角色層次、權(quán)限以及用戶的操作數(shù),即訪問控制的操作開銷[15]。若上述各類操作具有相同的開銷,用|R|、|RH|、|UA|和|PA|分別表示角色數(shù)、角色層次數(shù)、用戶指派數(shù)和權(quán)限指派數(shù),則訪問控制的管理成本C表現(xiàn)為C=|UA|+|PA|+|R|+|RH|。下面分析應(yīng)用各轉(zhuǎn)換規(guī)則的管理成本。

      (1)生成規(guī)則產(chǎn)生|U|個角色,增加|U|次用戶指派,并將用戶的直接權(quán)限指派給相應(yīng)的角色,且不構(gòu)建角色層次(|RH|=0)。發(fā)現(xiàn)角色是遺留系統(tǒng)角色挖掘的目標(biāo),由生成角色而產(chǎn)生的管理成本是必要的[19]。在不考慮角色層次的前提下,用戶的直接權(quán)限可能互不相同,因此需要增加至少|(zhì)U|個角色。用戶和權(quán)限至少被指派給一個角色是RBAC的必要條件,即|UA|≥|U|和|PA|≥|P|。生成規(guī)則保持權(quán)限指派數(shù)不變,用戶指派數(shù)和角色數(shù)均從0個增加|U|個,角色層次數(shù)為0,因此生成規(guī)則產(chǎn)生的管理成本是必要并且最少的。

      (2)歸并規(guī)則將具有相同權(quán)限的角色role1和role2合并,不構(gòu)建角色層次。假設(shè)C1和C2分別為應(yīng)用規(guī)則前后的管理成本,UA1、UA2、PA1和PA2分別為角色role1和role2的用戶指派和權(quán)限指派,PA1=PA2。應(yīng)用歸并規(guī)則前,C1=|UA1|+|UA2|+|PA1|+|PA2|+|R|。應(yīng)用歸并規(guī)則后,角色由role1和role2減少為角色role1,即|R|由2減少為1,role1的用戶指派數(shù)增加至|UA1∪UA2|,權(quán)限指派數(shù)保持|PA1|不變,即C2=|UA1∪UA2|+|PA1|+|R|=|UA1∪UA2|+|PA1|+1。已知UA1∩UA2=?,C1=|UA1|+|UA2|+|PA1|+|PA2|+|Role|=|UA1∪UA2|+2|PA1|+2>|UA1∪UA2|+|PA1|+1=C2,因此應(yīng)用歸并規(guī)則會降低管理成本。

      (3)分解規(guī)則拆分權(quán)限集含有真子集關(guān)系的角色role1和role2,并構(gòu)建角色層次。假設(shè)PA2?PA1,分解規(guī)則不改變角色數(shù)與用戶指派數(shù),通過生成新的角色層次將權(quán)限指派數(shù)減少|(zhì)PA2|次。應(yīng)用分解規(guī)則前,C1=|UA1|+|UA2|+|PA1|+|PA2|+|R|+|RH|。應(yīng)用分解規(guī)則后,C2=|UA1|+|UA2|+|PA1-PA2|+|PA2|+|R|+|RH|+1=|UA1|+|UA2|+|PA1|-|PA2|+|PA2|+|R|+|RH|+1=|UA1|+|UA2|+|PA1|+|R|+|RH|+1。由于|PA2|≥1,C1=|UA1|+|UA2|+|PA1|+|PA2|+|R|+|RH|≥|UA1|+|UA2|+|PA1|+|R|+|RH|+1=C2,因此應(yīng)用分解規(guī)則不會提高管理成本。

      (4)劃分規(guī)則拆分權(quán)限集存在交集的角色對,構(gòu)建角色和角色層次。假設(shè)PA1∩PA2≠?,劃分規(guī)則的用戶指派數(shù)不改變,生成1個新角色以及2個相關(guān)的角色層次,權(quán)限指派數(shù)降低|PA1∩PA2|次。應(yīng)用劃分規(guī)則前,C1=|UA1|+|UA2|+|PA1|+|PA2|+|R|+|RH|。應(yīng)用劃分后,C2=|UA1|+|UA2|+|PA1|+|PA2|-|PA1∩PA2|+(|R|+1)+(|RH|+2)=|UA1|+|UA2|+|PA1|+|PA2|+|R|+|RH|+3-|PA1∩PA2|。令C1=|UA1|+|UA2|+|PA1|+|PA2|+|RH|≥|UA1|+|UA2|+|PA1|+|PA2|+|RH|+3-|PA1∩PA2|=C2,則|PA1∩PA2|>2。若角色權(quán)限交集的基大于2,不增加管理成本,且交集的基越大,管理成本的下降幅度越大。當(dāng)權(quán)限交集的基為1或2時,管理成本增加2或1。因此,角色間權(quán)限交集的基越大,應(yīng)用劃分規(guī)則的管理成本降低越顯著。當(dāng)權(quán)限交集的基小于等于2時,管理成本至多提高2。

      4.3 轉(zhuǎn)換算法

      4.3.1 轉(zhuǎn)換算法的設(shè)計準(zhǔn)則

      遺留系統(tǒng)角色工程的標(biāo)準(zhǔn)各不相同,如用戶指派數(shù)最少,角色層次最少,授權(quán)和角色最少等[8-9,12]。在挖掘遺留系統(tǒng)的角色及角色層次的過程中,發(fā)現(xiàn)和構(gòu)造新角色的需求并存。針對角色的發(fā)現(xiàn),管理成本是重要準(zhǔn)則[6]。針對新角色的構(gòu)造,不僅要控制管理成本,還要兼顧角色層次的細(xì)化程度,以適應(yīng)可能的角色構(gòu)造。因此,除了控制角色數(shù)、授權(quán)數(shù)等管理成本外,要考慮的因素還包括易于演化以及構(gòu)建必要的角色層次。易于演化指構(gòu)造盡可能細(xì)化的角色以提高構(gòu)造新角色的靈活性,構(gòu)建必要的角色層次指生成的角色層次要完全覆蓋角色間的層次關(guān)系,并不具有冗余信息。下面詳細(xì)分析遺留系統(tǒng)的角色工程需求,定義設(shè)計準(zhǔn)則。

      (1)研究對象:已指派給用戶的角色是遺留系統(tǒng)角色工程的研究范疇,具有存在可能性但尚未被指派的角色則不予考慮。因此,遺留系統(tǒng)中已部署的訪問控制策略是方法的研究對象。

      (2)角色的粒度:原子角色為被直接指派給角色的權(quán)限。若將用戶之間的最小公共權(quán)限集構(gòu)建成原子角色,在構(gòu)建新角色時,可以通過組合原子角色的替代定義新角色,即通過控制角色的粒度,使訪問控制策略易于演化。運用劃分規(guī)則能夠發(fā)現(xiàn)原子角色,因此劃分規(guī)則是必要的。由于遺留系統(tǒng)的角色最直接的體現(xiàn)為被指派的權(quán)限集,應(yīng)優(yōu)先運用不改變已部署權(quán)限集的轉(zhuǎn)換規(guī)則[19],再通過劃分規(guī)則改變角色的粒度。

      (3)成本控制:生成規(guī)則的管理成本必要且最少;歸并規(guī)則和分解規(guī)則的管理成本不提高;劃分規(guī)則構(gòu)建角色和角色層次的過程存在使管理成本上升的情況。因此,生成規(guī)則、歸并規(guī)則和分解規(guī)則應(yīng)優(yōu)先于劃分規(guī)則使用,且需要控制劃分規(guī)則的使用。

      (4)完整性:指當(dāng)兩個角色被指派的權(quán)限集具有真子集關(guān)系時,該角色對之間必定存在層次關(guān)系。

      (5)不冗余性:指兩個角色之間的直接角色層次和間接角色層次不同時存在。但基于完整性的要求,允許間接層次關(guān)系共存。

      4.3.2 轉(zhuǎn)換算法的流程

      依據(jù)4.3.1小節(jié)定義的設(shè)計準(zhǔn)則,提出遺留訪問控制策略的轉(zhuǎn)換算法,由兩部分構(gòu)成,分別負(fù)責(zé)挖掘初始角色以及角色和角色層次[19]。

      初始角色被定義為通過聚集已部署的訪問控制策略而發(fā)現(xiàn)的角色,是轉(zhuǎn)換算法的基礎(chǔ)。圖2所示為初始角色的挖掘流程,僅運用了生成規(guī)則和歸并規(guī)則,文獻(xiàn)[16]定義了出現(xiàn)的符號。

      Fig.2 Process of initial role mining圖2 初始角色的挖掘流程

      Fig.3 Process of role hierarchy mining圖3 角色及其層次關(guān)系的挖掘流程

      圖3所示為依據(jù)初始角色挖掘角色和角色層次的流程,包含挖掘初始角色的層次和運用分解規(guī)則和劃分規(guī)則挖掘角色和角色層次兩個環(huán)節(jié)。在第一環(huán)節(jié)(步驟1~10),因為權(quán)限指派最多的角色不會成為低級角色,選擇其作為基礎(chǔ)角色,對比非相同層次路徑的角色,構(gòu)建新層次關(guān)系,并剔除冗余的層次關(guān)系。在第二環(huán)節(jié)(步驟11~13),劃分規(guī)則用于發(fā)現(xiàn)原子角色,能夠使權(quán)限指派不重疊。分解規(guī)則用于維護(hù)由新角色產(chǎn)生的角色層次關(guān)系。由于新角色不以高級角色的形式存在,與其相關(guān)的層次關(guān)系中無冗余信息。

      算法的第一部分是基礎(chǔ),管理成本必要且最低。因此,性能分析將從角色層次和成本控制兩方面展開。

      (1)角色層次

      在完整性方面,角色的層次關(guān)系是通過4個階段構(gòu)造的,如圖3所示。第一階段是步驟7,基于分解規(guī)則對比任意一組角色發(fā)現(xiàn)層次關(guān)系。由于歸并規(guī)則產(chǎn)生的低級角色的直接權(quán)限是其高級角色的直接權(quán)限的真子集,同級的低級角色間無重疊權(quán)限,不存在角色層次關(guān)系。第二階段是步驟10,通過對比同級的任意一組角色維護(hù)層次關(guān)系。第三階段是步驟11,基于劃分規(guī)則對比任意一組角色構(gòu)建角色的層次關(guān)系。第四階段是步驟12,基于分解規(guī)則對比新角色和其他角色維護(hù)層次關(guān)系。由于4個階段的對比均基于窮舉法,若角色對的權(quán)限指派有真子集關(guān)系,則角色對之間存在直接或間接角色層次,即角色的層次關(guān)系具有完整性。

      在不冗余性方面,分為3個階段。第一階段是步驟7,由于同級的低級角色間無重疊權(quán)限,無直接和間接層次關(guān)系并存的情況。第二階段是步驟10,由于角色層次的變更會造成冗余,該步驟在確保完整性的前提下,通過刪除冗余的直接層次關(guān)系維持角色層次的不冗余性。第三階段是步驟11和12,由于構(gòu)造的新角色不作為高級角色,與其他角色之間的層次關(guān)系不存在直接和間接層次關(guān)系并存的情況。因此,構(gòu)建的角色層次關(guān)系具有不冗余性。

      (2)成本控制

      在用戶指派方面,已存在的用戶指派不會由于方法的執(zhí)行發(fā)生變化,每個用戶都具有唯一的用戶指派,新角色的權(quán)限指派通過角色之間的層次關(guān)系繼承而來。對于遺留系統(tǒng)來說,直接的用戶指派是唯一的,體現(xiàn)為企業(yè)層次的角色,間接的用戶指派可能有多個,體現(xiàn)為業(yè)務(wù)層次的角色。每個用戶至少存在一次用戶指派是基于角色的訪問控制的必要條件(|UA|≥|U|)。本文方法生成的角色具有|U|次用戶指派,不僅滿足RBAC的必要條件,而且用戶指派數(shù)最少。

      在權(quán)限指派方面,方法應(yīng)用歸并規(guī)則和劃分規(guī)則產(chǎn)生的直接權(quán)限指派不重疊,且直接權(quán)限指派是唯一的。每個權(quán)限至少存在一次權(quán)限指派是基于角色的訪問控制的必要條件(|PA|≥|P|)。本文方法生成的權(quán)限指派數(shù)為|P|,不僅滿足RBAC的必要條件,且權(quán)限指派數(shù)最少。

      在角色方面,以控制角色的粒度為依據(jù),由劃分規(guī)則產(chǎn)生的角色是必要的。

      在角色層次方面,令RH和RH′分別為方法生成的以及與其擁有相同傳遞閉包的角色層次關(guān)系[19],rolei≥rolej表示rolej是rolei的低級角色,且RH中存在rolei≥rolej,但RH′中不存在rolei≥rolej。在RH與RH′的傳遞閉包相同的前提下,RH′中有至少一個角色的間接層次關(guān)系rolei≥role1≥role2≥…≥rolek-1≥rolek≥rolej不在RH中。假設(shè)rolei≥role1≥role2≥…≥rolek-1≥rolek≥rolej中存在的不屬于RH的層次關(guān)系為roles≥rolet,則層次關(guān)系roles≥role1′≥role2′≥…≥rolek-1′≥rolek′≥rolet屬于RH。依據(jù)傳遞閉包的性質(zhì),層次關(guān)系rolei≥role1≥role2≥…≥roles≥role1′≥role2′≥ … ≥rolek-1′≥rolek′≥rolet≥ … ≥rolek-1≥rolek≥rolej屬于RH。鑒于角色層次關(guān)系的不冗余性,該角色層次與rolei≥rolej不同時存在,則RH和RH′均包含rolei≥rolej。若RH和RH′相同,RH是層次關(guān)系中最優(yōu)的。若RH和RH′不相同,由于存在|RH|<|RH′|,則RH是優(yōu)化的。因此,方法構(gòu)建的層次關(guān)系具有最少的管理開銷。

      由于遺留系統(tǒng)的訪問控制策略已部署,用戶和權(quán)限數(shù)已確定,權(quán)限指派、用戶指派、角色和角色層次成為影響管理成本的要素。由上述分析可知,方法構(gòu)建的角色是必要的,且采用了最少的用戶指派、權(quán)限指派和最優(yōu)的角色層次。

      5 案例分析

      本文選擇某物流管理系統(tǒng)(logistics management system,LMS)[20]的早期版本為案例,對提出的遺留系統(tǒng)的角色工程方法進(jìn)行可行性和有效性驗證。

      5.1 角色工程方法

      在由LMS提取的遺留訪問控制策略集(含30個用戶對象和6個數(shù)據(jù)對象)[16]上應(yīng)用遺留訪問控制策略的轉(zhuǎn)換算法,表1所示為構(gòu)造的初始角色的信息。

      Table 1 Information of initial roles表1 初始角色的信息

      以初始角色為依據(jù),遺留訪問控制策略的轉(zhuǎn)換算法應(yīng)用分解規(guī)則構(gòu)建初始角色之間的層次關(guān)系,如圖4(a)所示。括號中的數(shù)據(jù)是角色的直接權(quán)限指派數(shù)和角色的權(quán)限指派總數(shù)的比值,角色的權(quán)限指派總數(shù)是角色的直接權(quán)限指派數(shù)和間接權(quán)限指派數(shù)之和。

      不位于同一角色層次路徑的角色的權(quán)限集不具有真子集關(guān)系,無需維護(hù)初始角色之間的層次關(guān)系。在圖4(a)所示的角色及層次關(guān)系上應(yīng)用劃分規(guī)則和分解規(guī)則。由于role1和role2的相交權(quán)限集的基為5,應(yīng)用劃分規(guī)則生成角色role31,其直接權(quán)限指派數(shù)為5,產(chǎn)生的角色和角色層次如圖4(b)所示。若角色集{role1,role2,role3,role6,role16,role31}仍存在具有權(quán)限交集的角色對,繼續(xù)應(yīng)用劃分規(guī)則和分解規(guī)則。圖4(c)所示為構(gòu)造的最終角色和角色層次,表2為構(gòu)造的最終角色的信息。

      5.2 結(jié)果分析

      本文方法從遺留訪問控制策略中挖掘7個角色,初始角色數(shù)和新角色數(shù)分別為5和2。各角色通過直接權(quán)限指派和間接權(quán)限指派獲取權(quán)限,且允許直接權(quán)限指派數(shù)為0。此時,角色的權(quán)限是由間接權(quán)限指派產(chǎn)生的,即高級角色的權(quán)限是由低級角色繼承而來的。

      Fig.4 Constructed roles and role hierarchy圖4 構(gòu)造的角色及角色層次

      表2所示為最終角色的信息,經(jīng)統(tǒng)計權(quán)限指派數(shù)和用戶指派數(shù)分別為29和30。由此可知,方法通過直接指派的方式建立起29個權(quán)限與最終角色之間不重疊的直接映射關(guān)系,且用戶指派也具有不重疊性。即權(quán)限與角色、用戶與角色之間的直接映射關(guān)系都是唯一的,權(quán)限指派數(shù)和用戶指派數(shù)均必要且最少,產(chǎn)生最低的管理成本。

      Table 2 Information of final roles表2 最終角色的信息

      方法構(gòu)建的新角色role31和role32不與用戶存在直接映射關(guān)系,用戶由高級角色的直接用戶指派間接繼承產(chǎn)生。兩個新角色的直接權(quán)限集在系統(tǒng)中具有一定的通用性。所有用戶均能訪問直接指派給role32的權(quán)限集,即role32為公共角色。在實施訪問控制時,為了控制管理成本,無須限制用戶對公共角色的權(quán)限集的訪問。

      將評估函數(shù)[16]應(yīng)用于轉(zhuǎn)換后的訪問控制策略。由統(tǒng)計結(jié)果可知,用戶數(shù)不發(fā)生改變,角色由無到有,角色數(shù)為7。方法達(dá)到了使用角色重組遺留系統(tǒng)訪問控制策略的目標(biāo),通過降低授權(quán)主體的數(shù)量,控制管理開銷。所有用戶和權(quán)限均具有唯一的直接指派,符合基于角色的訪問控制的必要條件。

      將基于集合理論的角色工程方法RoleMiner[5]和RH-Builder[14]相結(jié)合同樣能夠挖掘角色及角色層次(簡稱組合方法)。由于組合方法的挖掘結(jié)果還具有全局角色和相關(guān)的角色層次,其構(gòu)造的角色集更大,角色層次更多,存在權(quán)限重復(fù)指派的情況。

      在RoleMiner的案例上應(yīng)用組合方法和本文方法,pi為權(quán)限,初始角色的角色集為{(p1,p2,p4),(p2,p3,p4),(p2,p3),(p4)},組合方法和本文方法的結(jié)果如圖5(a)和圖5(b)所示。組合方法生成7個角色和8個角色層次,包含1個全局角色和2個與全局角色相關(guān)的角色層次。本文方法產(chǎn)生角色數(shù)和角色層次數(shù)更少,均為5,具有更低的管理開銷。

      Fig.5 Comparison of results of combined approach and proposed approach圖5 組合方法和本文方法的結(jié)果對比

      表3所示為主要的角色挖掘方法和本文方法的特點。

      Table 3 Characteristics of primary related approaches表3 主要的角色挖掘方法的特點

      分析表3可知,本文方法的特點包括:第一,能夠同時生成角色及其層次關(guān)系,且角色層次具有完整性和不冗余性。第二,產(chǎn)生的直接權(quán)限指派和直接用戶指派均不重疊,在權(quán)限指派和用戶指派方面的管理開銷最低。第三,將多用戶的公共權(quán)限集作為角色,并以細(xì)化角色的粒度作為算法的設(shè)計準(zhǔn)則,構(gòu)建的角色符合實際且具有演化靈活性。第四,在細(xì)化角色粒度的前提下,方法挖掘的角色是必要的,且具有最低的管理成本。

      6 結(jié)束語

      針對目前角色工程方法欠缺考慮遺留系統(tǒng)外部行為不變性和易演化性等需求的問題,提出了一種遺留系統(tǒng)的角色工程方法。方法融合FermaT轉(zhuǎn)換理論和集合理論,提出轉(zhuǎn)換訪問控制策略的規(guī)則,分析規(guī)則的管理成本,給出轉(zhuǎn)換算法的設(shè)計準(zhǔn)則,提出轉(zhuǎn)換算法,并分析算法性能。案例分析驗證了方法的可行性和有效性,其能夠由遺留訪問控制策略挖掘角色及角色層次,角色的挖掘過程中訪問控制策略的外部行為保持不變,通過細(xì)化角色的粒度產(chǎn)生必要的角色,角色層次具有完整性、不冗余性,且在挖掘必要角色的前提下管理開銷最低。

      [1]Miguel A L,Yania C.A systematic mapping study on software product line evolution:from legacy system reengineering to product line refactoring[J].Science of Computer Programming,2013,78(8):1010-1034.

      [2]Richard W,Lindsey S,John H,et al.A methodology and heuristics for re-architecting a legacy system[C]//Proceedings of the 9th Annual IEEE International Systems Conference,Vancouver,Canada,Apr 13-16,2015.Piscataway,USA:IEEE,2015:382-389.

      [3]Frank M,Buhmann J M,Basin D.On the definition of role mining[C]//Proceedings of the 15th ACM Symposium on Access Control Models and Technologies,Pittsburgh,USA,Jun 9-11,2010.New York:ACM,2010:35-44.

      [4]Kuhlmann M,Shohat D,Schimpf G.Role mining-revealing business roles for security administration using data mining technology[C]//Proceedings of the 8th ACM Symposium on Access Control Models and Technologies,Villa Gallia,Italy,Jun 2-3,2003.New York:ACM,2003:179-186.

      [5]Vaidya J,Atluri V,Warner J,et al.Role engineering via prioritized subset enumeration[J].IEEE Transactions on Dependable and Security Computing,2010,7(3):300-314.

      [6]Vaidya J,Atluri V,Warner J.RoleMiner:mining roles using subset enumeration[C]//Proceedings of the 13th Conference on Computer and Communication Security,Alexandria,USA,Oct 30-Nov 3,2006.New York:ACM,2006:144-153.

      [7]Ma Xiaopu,Li Ruixuan,Lu Zhengding.Role mining based on weights[C]//Proceedings of the 15th ACM Symposium on Access Control Models and Technologies,Pittsburgh,USA,Jun 9-11,2010.New York:ACM,2010:65-74.

      [8]Vaidya J,Atluri V,Guo Qi.The role mining problem:finding a minimal descriptive set of roles[C]//Proceedings of the 12th ACM Symposium on Access Control Models and Technologies,Antipolis,France,Jun 20-22,2007.New York:ACM,2007:175-184.

      [9]Vaidya J,Atluri V,Guo Q,et al.Edge-RMP:minimizing administrative assignments for role-based access control[J].Journal of Computer Security,2009,17(2):211-235.

      [10]Lu Haibing,Vaidya J,Atluri V.An optimization framework for role mining[J].Journal of Computer Security,2014,22(1):1-31.

      [11]Lu Haibing,Jaideep V,Atluri V.Optimal boolean matrix decomposition:application to role engineering[C]//Proceedings of the 24th International Conference on Data Engineering,Cancun,Maxico,Apr 7-12,2008.Washington:IEEE Computer Society,2008:297-306.

      [12]Zhang Dana,Ramamohanarao K,Versteeg S,et al.Graph based strategies to role engineering[C]//Proceedings of the 6th Annual Cyber Security and Information Intelligence Research Workshop:Cyber Security and Information Intelligence Challenges and Strategies,Oak Ridge,USA,Apr 21-23,2010.New York:ACM,2010:25.

      [13]Li Ruixuan,Wang Wei,Ma Xiaopu,et al.Mining roles using attributes of permissions[J].International Journal of Innovative Computing,Information and Control,2012,8(11):7909-7924.

      [14]Guo Qi,Vaidya J,Atluri V.The role hierarchy mining problem:discovery of optimal role hierarchies[C]//Proceedings of the 24th Annual Computer Security Applications Conference,Anaheim,USA,Dec 8-12,2008.Washington:IEEE Computer Society,2008:237-246.

      [15]Takabi H,Joshi J B D.An efficient similarity-based approach for optimal mining of role hierarchy[C]//Proceedings of the 15th ACM Symposium on Access Control Models and Technologies,Pittsburgh,USA,Jun 9-11,2010.New York:ACM,2010:55-64.

      [16]Li Han,Yang Hongji,Chen Feng,et al.Feasibility study of software reengineering towards role-based access control[J].International Journal of Computer Applications in Technology,2011,42(2/3):239-251.

      [17]Chen Feng,Ladkau M,Li S,et al.FermaT integrated platform(FIP)development strategy[R].Leicester:De Montfort University,2005.

      [18]Ward M.WSL programmer's reference manual[R].Leicester:De Montfort University,2002.

      [19]Li Han.Research on several issues of legacy system reengineering[D].Dalian:Dalian University of Technology,2013.

      [20]Deng Huifang,Deng Wen,Li Han,et al.Authentication and access control in a RFID based logistics-customs clearance service platform[J].International Journal of Automation and Computing,2010,7(2):180-189.

      附中文參考文獻(xiàn):

      [19]李寒.遺留系統(tǒng)再工程的若干問題研究[D].大連:大連理工大學(xué),2013.

      Research on Role Engineering of Legacy System*

      LI Han1,2+,ZHENG Shang3,CHEN Feng4

      1.College of Computer Science,North China University of Technology,Beijing 100144,China
      2.Beijing Key Laboratory on Integration andAnalysis of Large-Scale Stream Data,Beijing 100144,China
      3.School of Computer Science and Engineering,Jiangsu University of Science and Technology,Zhenjiang,Jiangsu 212003,China
      4.School of Computer Science and Informatics,De Montfort University,Leicester LE1 9BH,UK

      2016-09,Accepted 2016-11.

      To solve the problem of lack of consideration of remaining the external behavior of legacy system and making legacy access control policies easy to be evolved,this paper proposes a role engineering approach for legacy system based on FermaT transformation theory and set theory.The approach defines a set of transformation rules for access control policies,analyzes the management cost of transformation rules,gives the design criteria of role engineering of legacy system,and presents a transformation method based on the design criteria.A case study demon-strates that the proposed approach is feasible.Compared with other primary role mining approaches,the constructed roles are ease to be evolved.The role hierarchy is complete and irredundant.The approach is with the lowest cost in the condition of constructing necessary roles.

      legacy system;role engineering;access control policy;transformation rules;role hierarchy

      +Corresponding author:E-mail:lihan@ncut.edu.cn

      10.3778/j.issn.1673-9418.1609027

      *The General Program of Science and Technology Development Project of Beijing Municipal Education Commission under Grant No.KM2015_10009007(北京市教委科技計劃面上項目);the Scientific Research Foundation of North China University of Technology(北方工業(yè)大學(xué)科研啟動基金);the Scientific Research Foundation for the Talent Introduction of Jiangsu University of Science and Technology under Grant No.1132921504(江蘇科技大學(xué)引進(jìn)人才科研啟動基金).

      CNKI網(wǎng)絡(luò)優(yōu)先出版:2016-11-25,http://www.cnki.net/kcms/detail/11.5602.TP.20161125.1530.004.html

      LI Han,ZHENG Shang,CHEN Feng.Research on role engineering of legacy system.Journal of Frontiers of Computer Science and Technology,2017,11(12):1931-1940.

      A

      TP311.5

      LI Han was born in 1981.She received the Ph.D.degree in computer software and theory from Dalian University of Technology in 2013.Now she is a lecturer at North China University of Technology,and the member of CCF.Her research interests include software evolution and cloud computing,etc.

      李寒(1981—),女,遼寧沈陽人,2013年于大連理工大學(xué)獲得工學(xué)博士學(xué)位,現(xiàn)為北方工業(yè)大學(xué)講師,CCF會員,主要研究領(lǐng)域為軟件演化,云計算等。

      ZHENG Shang was born in 1983.He received the Ph.D.degree in software engineering from De Montfort University in 2013.Now he is a lecturer at Jiangsu University of Science and Technology,and the member of CCF.His research interests include software evolution,Internet computing and big data,etc.

      鄭尚(1983—),男,吉林大安人,2013年于英國德蒙特福德大學(xué)獲得工學(xué)博士學(xué)位,現(xiàn)為江蘇科技大學(xué)講師,CCF會員,主要研究領(lǐng)域為軟件演化,網(wǎng)絡(luò)計算,大數(shù)據(jù)等。

      CHEN Feng was born in 1969.He received the Ph.D.degree in software engineering from De Montfort University in 2007.Now he is a research fellow and Ph.D.supervisor at De Montfort University,UK.His research interests include software evolution and software architecture,etc.

      陳峰(1969—),男,遼寧大連人,2007年于英國德蒙特福德大學(xué)獲得工學(xué)博士學(xué)位,現(xiàn)為英國德蒙特福德大學(xué)研究員,主要研究領(lǐng)域為軟件演化,軟件體系結(jié)構(gòu)等。

      猜你喜歡
      指派遺留控制策略
      許林濤作品
      考慮虛擬慣性的VSC-MTDC改進(jìn)下垂控制策略
      能源工程(2020年6期)2021-01-26 00:55:22
      工程造價控制策略
      山東冶金(2019年3期)2019-07-10 00:54:04
      現(xiàn)代企業(yè)會計的內(nèi)部控制策略探討
      基于單片機控制的小孩遺留小汽車內(nèi)智能安全裝置
      電子制作(2018年11期)2018-08-04 03:25:46
      靜寂的故宮博物館
      歲月(2016年5期)2016-08-13 00:32:59
      天龍,遺留六百年的傳奇
      容錯逆變器直接轉(zhuǎn)矩控制策略
      零元素行擴(kuò)展路徑算法求解線性指派問題
      具有直覺模糊信息的任務(wù)指派問題研究
      浠水县| 沁源县| 临澧县| 定兴县| 乐山市| 鄯善县| 墨玉县| 晋江市| 松溪县| 大冶市| 遂宁市| 抚顺市| 余姚市| 龙岩市| 红桥区| 平遥县| 襄汾县| 务川| 盈江县| 重庆市| 武隆县| 德化县| 宣武区| 长武县| 同心县| 新宾| 淳化县| 宁国市| 鹿泉市| 贵州省| 上犹县| 东乡| 佛山市| 太仆寺旗| 韩城市| 互助| 常德市| 观塘区| 邵武市| 扎鲁特旗| 策勒县|