<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-84  評(píng)論-56  文章-0  trackbacks-0

    訪問(wèn)控制策略一般有以下幾種方式:

    • 自主型訪問(wèn)控制(Discretionary Access Control-DAC):用戶/對(duì)象來(lái)決定訪問(wèn)權(quán)限。信息的所有者來(lái)設(shè)定誰(shuí)有權(quán)限來(lái)訪問(wèn)信息以及操作類型(讀、寫、執(zhí)行。。。)。是一種基于身份的訪問(wèn)控制。例如UNIX權(quán)限管理。

    • 強(qiáng)制性訪問(wèn)控制(Mandatory Access Control-MAC):系統(tǒng)來(lái)決定訪問(wèn)權(quán)限。安全屬性是強(qiáng)制型的規(guī)定,它由安全管理員或操作系統(tǒng)根據(jù)限定的規(guī)則確定的,是一種規(guī)則的訪問(wèn)控制。

    • 基于角色的訪問(wèn)控制(格/角色/任務(wù)):角色決定訪問(wèn)權(quán)限。用組織角色來(lái)同意或拒絕訪問(wèn)。比MAC、DAC更靈活,適合作為大多數(shù)公司的安全策略,但對(duì)一些機(jī)密性高的政府系統(tǒng)部適用。

    • 規(guī)則驅(qū)動(dòng)的基于角色的訪問(wèn)控制:提供了一種基于約束的訪問(wèn)控制,用一種靈活的規(guī)則描述語(yǔ)言和一種ixn的信任規(guī)則執(zhí)行機(jī)制來(lái)實(shí)現(xiàn)。

    • 基于屬性證書的訪問(wèn)控制:訪問(wèn)權(quán)限信息存放在用戶屬性證書的權(quán)限屬性中,每個(gè)權(quán)限屬性描述了一個(gè)或多個(gè)用戶的訪問(wèn)權(quán)限。但用戶對(duì)某一資源提出訪問(wèn)請(qǐng)求時(shí),系統(tǒng)根據(jù)用戶的屬性證書中的權(quán)限來(lái)判斷是否允許或句句

    模型的主要元素

    • 可視化授權(quán)策略生成器

    • 授權(quán)語(yǔ)言控制臺(tái)

    • 用戶、組、角色管理模塊

    • API接口

    • 授權(quán)決策引擎

    • 授權(quán)語(yǔ)言解釋器

    H.1. RBAC模型介紹

    RBAC(Role-Based Access Control - 基于角色的訪問(wèn)控制)模型是20世紀(jì)90年代研究出來(lái)的一種新模型,但從本質(zhì)上講,這種模型是對(duì)前面描述的訪問(wèn)矩陣模型的擴(kuò)展。這種模型的基本概念是把許可權(quán)(Permission)與角色(Role)聯(lián)系在一起,用戶通過(guò)充當(dāng)合適角色的成員而獲得該角色的許可權(quán)。

    這種思想世紀(jì)上早在20世紀(jì)70年代的多用戶計(jì)算時(shí)期就被提出來(lái)了,但直到20世紀(jì)90年代中后期,RBAC才在研究團(tuán)體中得到一些重視。本章將重點(diǎn)介紹美國(guó)George Mason大學(xué)的RBAC96模型。

    H.2. 有關(guān)概念

    在實(shí)際的組織中,為了完成組織的業(yè)務(wù)工作,需要在組織內(nèi)部設(shè)置不同的職位,職位既表示一種業(yè)務(wù)分工,又表示一種責(zé)任與權(quán)利。根據(jù)業(yè)務(wù)分工的需要,支援被劃分為不同群體,各個(gè)群體的人根據(jù)其工作任務(wù)的需要被賦予不同的職責(zé)和權(quán)利,每個(gè)人有權(quán)了解與使用與自己任務(wù)相關(guān)的信息與資源,對(duì)于那些不應(yīng)該被知道的信息則應(yīng)該限制他們?cè)L問(wèn)。這就產(chǎn)生了訪問(wèn)控制的需求。

    例如,在一個(gè)大學(xué)中,有校長(zhǎng)、副校長(zhǎng)、訓(xùn)練部長(zhǎng)、組織處長(zhǎng)、科研處長(zhǎng)、教保處長(zhǎng)等不同的職位,在通常情況下,職位所賦予的權(quán)利是不變的,但在某個(gè)職位上工作的人可以根據(jù)需要調(diào)整。RBAC模型對(duì)組織內(nèi)部的這些關(guān)系與訪問(wèn)控制要求給出了非常恰當(dāng)?shù)拿枋觥?/p>

    H.2.1. 什么是角色

    在RBAC模型中,工作職位被描述為“角色”,職位所具有的權(quán)利稱為許可權(quán)。角色是RBAC模型中的核心概念,圍繞這一概念實(shí)現(xiàn)了訪問(wèn)控制策略的形式化。特殊的用戶集合和許可權(quán)的集合通過(guò)角色這一媒介在某個(gè)特定的時(shí)間內(nèi)聯(lián)系在一起。而角色確實(shí)相對(duì)穩(wěn)定的,因?yàn)槿魏谓M織的分工、活動(dòng)或功能一般是很少經(jīng)常改變的。

    可以有不同的動(dòng)機(jī)去構(gòu)造一個(gè)角色。角色可以表示完成特殊任務(wù)的資格,例如,是一個(gè)醫(yī)師還是一個(gè)藥師;橘色也可以表示一種權(quán)利與責(zé)任,如工程監(jiān)理。權(quán)利與責(zé)任不同于資格,例如,Alice可能有資格領(lǐng)導(dǎo)幾個(gè)部門,但他只能被分配負(fù)責(zé)一個(gè)部門的領(lǐng)導(dǎo)。通過(guò)多個(gè)用戶的輪轉(zhuǎn),角色可以映射特殊責(zé)任的分配,例如,醫(yī)師可以轉(zhuǎn)換為管理者。RBAC的模式及其實(shí)現(xiàn)可以方便的適應(yīng)這種角色概念的多種表現(xiàn)。

    在實(shí)際的計(jì)算機(jī)信息系統(tǒng)中,角色由系統(tǒng)管理員定義,角色的增加與刪除、角色權(quán)利的增加與減少等uanli工作都是由系統(tǒng)管理員完成的。根據(jù)RBAC的要求,用戶被分配為某個(gè)特定角色后,就被賦予了該角色所擁有的權(quán)利和責(zé)任,這種授權(quán)方式是強(qiáng)制性的,用戶只能被動(dòng)的接受,不能自主的決定為角色增加或減少權(quán)力,也不能把自己角色的權(quán)利轉(zhuǎn)首給用戶,顯然,這是一種非自主型的訪問(wèn)控制模式。

    H.2.2. 角色與用戶組

    角色與用戶組有何區(qū)別?

    兩者的主要區(qū)別是:用戶組是用戶的集合,但不可許可權(quán)的集合;而角色卻同時(shí)具有用戶集合和許可權(quán)集合的概念,角色的作用是把這兩個(gè)集合聯(lián)系在一起的中間媒介。

    在一個(gè)系統(tǒng)中,如果用戶組的許可權(quán)和成員僅可以被系統(tǒng)安全員修改的話,在這種機(jī)制下,用戶組的機(jī)制是非常接近于角色的概念的。角色也可以在用戶組的基礎(chǔ)上實(shí)現(xiàn),這有利于保持原有系統(tǒng)中的控制關(guān)系。在這種情況下,角色相當(dāng)于一個(gè)策略不見(jiàn),與用戶組的授權(quán)及責(zé)任關(guān)系相聯(lián)系,而用戶組是實(shí)現(xiàn)角色的機(jī)制,因此,兩者之間是策略與實(shí)現(xiàn)機(jī)制之間的關(guān)系。

    雖然RBAC是一種無(wú)確定性質(zhì)策略的模型,但它支持公認(rèn)的安全原則:最小特權(quán)原則、責(zé)任分離原則和數(shù)據(jù)抽象原則。最小特權(quán)原則得到支持,是因?yàn)樵赗BAC模型中可以通過(guò)限制分配給角色權(quán)限的多少和大小來(lái)實(shí)現(xiàn),分配給與某用戶對(duì)應(yīng)的角色的權(quán)限只要不超過(guò)該用戶完成其任務(wù)的需要就可以了。

    責(zé)任分離原則的實(shí)現(xiàn),是因?yàn)樵赗BAC模型中可以通過(guò)在完成敏感任務(wù)過(guò)程中分配兩個(gè)責(zé)任上互相約束的兩個(gè)角色來(lái)實(shí)現(xiàn),例如在清查賬目時(shí),只需要設(shè)置財(cái)務(wù)管理員和會(huì)計(jì)連個(gè)角色參加就可以了。

    數(shù)據(jù)抽象是借助于抽象許可權(quán)這樣的概念實(shí)現(xiàn)的,如在賬目管理活動(dòng)中,可以使用信用,借方等抽象許可權(quán),而不是使用操作系統(tǒng)提供的讀、寫、執(zhí)行等具體的許可權(quán)。但RBAC并不強(qiáng)迫實(shí)現(xiàn)這些原則,安全管理員可以允許配置 RBAC模型使它不支持這些原則。因此,RBAC支持?jǐn)?shù)據(jù)抽象的程度與RBAC模型的實(shí)現(xiàn)細(xì)節(jié)有關(guān)。

    在20世紀(jì)90年代期間,大量的專家學(xué)者和專門研究單位對(duì)RBAC的概念進(jìn)行了深入研究,先后提出了許多類型的RBAC模型,其中以美國(guó)George Mason大學(xué)信息安全技術(shù)實(shí)驗(yàn)室(LIST)提出的RBAC96模型最具有系統(tǒng)性,得到普遍的公認(rèn)。

    RBAC96是一個(gè)模型族,其中包括RBAC0~RBAC3四個(gè)概念性模型。基本模型RBAC0定義了完全支持RBAC概念的任何系統(tǒng)的最低需求。RBAC1和RBAC2兩者都包含RBAC0,但各自都增加了獨(dú)立的特點(diǎn),它們被成為高級(jí)模型。在RBAC1中增加了角色分級(jí)的概念,一個(gè)角色可以從另一個(gè)角色繼承許可權(quán)。RBAC2增加了一些限制,強(qiáng)調(diào)在RBAC的不同組件中在配置方面的一些限制。

    RBAC1和RBAC2之間是不可比的。RBAC3被成為統(tǒng)一模型,它包含了RBAC1和RBAC2,利用傳遞性,也把RBAC0包括在內(nèi)。這些模型構(gòu)成了RBAC96模型族。圖ap08-01表示了族內(nèi)各模型間的關(guān)系,圖ap08-02是RBAC3模型的概念示意圖。

    RBAC96內(nèi)各模型間的關(guān)系

    圖 H.1. RBAC96內(nèi)各模型間的關(guān)系


    RBAC96模型族

    圖 H.2. RBAC96模型族


    H.3. 基本模型RBAC0

    RBAC0的模型結(jié)構(gòu)可以參看圖ap08-02,但需要把途中的限制和角色等級(jí)兩部分不包含在RBAC0模型中。該模型中包括用戶(U)、角色(R)和許可權(quán)(P)的那個(gè)三類實(shí)體集合,此外還有一個(gè)會(huì)話集合(S)。

    其中用戶代表一個(gè)組織的職員;角色表示該組織內(nèi)部的一項(xiàng)任務(wù)的功能或某個(gè)工作職務(wù),它也表示該角色成員所擁有的權(quán)利和職責(zé);許可權(quán)是用戶對(duì)系統(tǒng)中各課題訪問(wèn)或操作的權(quán)利,客體是指系統(tǒng)中的數(shù)據(jù)客體和資源客體,例如,目錄、文件、記錄、端口、設(shè)備、內(nèi)存或子網(wǎng)都是客體。

    許可權(quán)因客體不同而不同,例如,對(duì)于目錄、文件、設(shè)備、端口等類客體的操作權(quán)是讀、寫、執(zhí)行等;對(duì)應(yīng)數(shù)據(jù)庫(kù)管理系統(tǒng)的客體是關(guān)系、元素、屬性、記錄、庫(kù)文件、視圖等,相應(yīng)的操作權(quán)是Select、Update、Delete、Insert等;在會(huì)計(jì)應(yīng)用中,相應(yīng)的操作權(quán)是預(yù)算、信用、轉(zhuǎn)移、創(chuàng)建和刪除一個(gè)賬目等。

    圖ap08-02說(shuō)明了關(guān)系用戶指派UA(User Assignment)與許可權(quán)指派PA(Permission Assignment)的含義,兩者都是多對(duì)多的關(guān)系。RBAC的關(guān)鍵就在于這兩個(gè)關(guān)系,通過(guò)它們,一個(gè)用戶將最終獲得某些許可權(quán)并執(zhí)行的權(quán)力。從圖中角色的位置可以看粗,它是用戶能夠獲取許可權(quán)的中間媒介。

    會(huì)話集中的每個(gè)會(huì)話表示一個(gè)用戶可以對(duì)應(yīng)多個(gè)角色(指向角色有兩個(gè)箭頭)。在某個(gè)會(huì)話的持續(xù)期間,一個(gè)用戶可以同時(shí)激活多個(gè)角色,而該用戶所獲得的許可權(quán)是所有這些角色的所擁有許可權(quán)的并集。

    每個(gè)用戶可以同時(shí)打開多個(gè)回話,每個(gè)會(huì)話都可以在工作站屏幕上用一個(gè)窗口顯示。每個(gè)會(huì)話可以有不同活動(dòng)角色的組合。RBAC0的這一特點(diǎn)將受到最小特權(quán)原則的限制。如果一個(gè)用戶在一次會(huì)話中激活所有角色的權(quán)利超過(guò)該用戶被允許的權(quán)利,將受到最小權(quán)利原則的限制。

    H.3.1. RBAC0模型的形式定義如下

    定義1 RBAC0模型由以下描述確定:

    U、R、P、S分別表示用戶集合、角色集合、許可權(quán)集合和會(huì)話集合。

    PA P×R表示許可權(quán)與角色之間多對(duì)多的指派關(guān)系。

    UA U×R表示用戶與角色之間多對(duì)多的指派關(guān)系。

    用戶:S→U 每個(gè)會(huì)話si到單個(gè)用戶user(si)的映射函數(shù)(常量代表會(huì)話的聲明周期)。

    角色:S→2R 每個(gè)會(huì)話si到角色子集roles(si) {r|user(si, r')∈UA}(能隨時(shí)間改變)的映射函數(shù),會(huì)話si有許可權(quán)Ur∈roles(si){p|(p,r')∈PA}。

    在使用RBAC0模型時(shí),應(yīng)該要求每個(gè)許可權(quán)和每個(gè)用戶至少應(yīng)該被分配給一個(gè)角色。兩個(gè)角色被分配的許可權(quán)完全一樣是可能的,但仍是兩個(gè)完全獨(dú)立的角色,用戶也有類似情況。角色可以適當(dāng)?shù)谋豢醋鍪且环N語(yǔ)義結(jié)構(gòu),是訪問(wèn)控制策略形式化的基礎(chǔ)。

    RBAC0把許可權(quán)處理未非解釋符號(hào),因?yàn)槠渚_含義只能由實(shí)現(xiàn)確定且與系統(tǒng)有關(guān)。RBAC0中的許可權(quán)只能應(yīng)用于數(shù)據(jù)和資源類客體,但不能應(yīng)用于模型本身的組件。修改集合U、R、P和關(guān)系PA和UA的權(quán)限稱為管理權(quán)限,后面將介紹RBAC的管理模型。因此,在RBAC0中假定只有安全管理員才能修改這些組件。

    會(huì)話是由單個(gè)用戶控制的,在模型中,用戶可以創(chuàng)建會(huì)話,并有選擇的激活用戶角色的某些子集。在一個(gè)會(huì)話中的角色的激活是由用戶來(lái)決斷的,會(huì)話的終止也是由用戶初始化的。RBAC0不允許由一個(gè)會(huì)話去創(chuàng)建另一個(gè)會(huì)話,會(huì)話只能由用戶創(chuàng)建。

    H.4. 角色分級(jí)模型RBAC1

    RBAC1模型的特色是模型中的角色是分級(jí)的,不同級(jí)別的角色由不同的職責(zé)與權(quán)力,橘色的級(jí)別形成偏序關(guān)系。圖ap08-03說(shuō)明了角色等級(jí)的概念。在途中位置處于較高處的角色的等級(jí)高于較低位置角色的等級(jí)。利用角色的分級(jí)概念可以限制繼承的范圍(scope)。

    角色分級(jí)的概念

    圖 H.3. 角色分級(jí)的概念


    圖中項(xiàng)目成員的等級(jí)最低,角色程序員和測(cè)試員的等級(jí)都高于角色項(xiàng)目成員,并都可以繼承項(xiàng)目成員的權(quán)利;角色管理員具有最高的等級(jí),它可以繼承測(cè)試員和程序員的權(quán)利。為了滿足實(shí)際組織中一個(gè)角色不完全繼承另一個(gè)角色所有權(quán)利與責(zé)任的需求,模型中引入了私有角色的概念,如圖中的測(cè)試員'和程序員'分別是測(cè)試員和程序員的私有uese,它們可以分別繼承測(cè)試員和程序員的某些專用權(quán)利。

    顯然,角色的等級(jí)關(guān)系具有自反性(自己可以繼承自己)、傳遞性(A繼承B,B繼承C,則A繼承C)和反對(duì)稱性(A繼承B,B繼承A,則A=B),因此是偏序關(guān)系,下面是RBAC1的形式定義。

    H.4.1. 定義2:RBAC1由以下內(nèi)容確定

    U、R、P、S分別表示用戶集合、角色集合、許可權(quán)集合和會(huì)話集合。

    PA P×R表示許可權(quán)與角色之間多對(duì)多的指派關(guān)系。

    UA U×R表示用戶與角色之間多對(duì)多的指派關(guān)系。

    RH R×R是對(duì)R的偏序關(guān)系,稱為角色等級(jí)或角色支配關(guān)系,也可用≥符號(hào)表示。

    用戶:S→U 每個(gè)會(huì)話si到單個(gè)用戶user(si)的映射函數(shù)(常量代表會(huì)話的聲明周期)。

    角色:S→2R 每個(gè)會(huì)話si到角色子集roles(si) {r|(r'≥r)[user(si, r')∈UA]}(能隨時(shí)間改變)的映射函數(shù),會(huì)話si有許可權(quán)Ur∈roles(si){p|(r''≤r)[(p,r'')∈PA]}。

    H.5. 限制模型RBAC2

    RBAC2模型是在RBAC0模型增加限制后形成的,它與RBAC1并不兼容。RBAC2定義如下:

    H.5.1. 定義3:

    除了在RBAC0中增加了一些限制因素外,RBAC2未加改變的來(lái)自于RBAC0,這些限制是用于確定RBAC0中各個(gè)組件的值是否是可接受的,只有那些可接受的值才是允許的。

    RBAC2中引入的限制可以施加到RBAC0模型中的所有關(guān)系和組件上。RBAC2中的一個(gè)基本限制時(shí)互斥角色的限制,互斥角色是指各自權(quán)限尅一互相制約的兩個(gè)角色。對(duì)于這類角色一個(gè)用戶在某一次活動(dòng)中只能被分配其中的一個(gè)角色,不能同時(shí)獲得兩個(gè)角色的使用權(quán)。

    例如,在審計(jì)活動(dòng)中,一個(gè)角色不能同時(shí)被指派給會(huì)計(jì)角色和審計(jì)員角色。又如,在公司中,經(jīng)理和副經(jīng)理的角色也是互斥的,合同或支票只能由經(jīng)理簽字,不能由副經(jīng)理簽字。在為公司建立的RBAC2模型中,一個(gè)用戶不能同時(shí)兼得經(jīng)理和副經(jīng)理兩個(gè)角色。模型匯總的互斥限制可以支持權(quán)責(zé)分離原則的實(shí)現(xiàn)。

    更一般化而言,互斥限制可以控制在不同的角色組合中用戶的成員關(guān)系是否是可接受的。例如,一個(gè)用戶可以既是項(xiàng)目A的程序言,也可以是項(xiàng)目B的測(cè)試員和項(xiàng)目C的驗(yàn)收員,但他不能同時(shí)成為同一個(gè)項(xiàng)目中的這3個(gè)角色。RBAC2模型可以對(duì)這種情況進(jìn)行限制。

    另一個(gè)用戶指派限制的例子是一個(gè)角色限制其最大成員數(shù),這被稱為角色的基數(shù)限制。例如,一個(gè)單位的最高領(lǐng)導(dǎo)只能為1人,中層干部的數(shù)量也是有限的,一旦分配給這些角色的用戶數(shù)超過(guò)了角色基數(shù)的限制,就不再接受新配給的用戶了。

    限制角色的最小基數(shù)實(shí)現(xiàn)起來(lái)有些困難。例如,如果規(guī)定占用某個(gè)角色的最小用戶數(shù),問(wèn)題是系統(tǒng)如何在任何時(shí)刻都能知道這些占用者中的某個(gè)人沒(méi)有消失,如果消失的話,系統(tǒng)又應(yīng)該如何去做。

    在為用戶指派某個(gè)角色A時(shí),在有的情況下要求該用戶必須是角色B的一個(gè)成員,B角色成為角色A的先決角色。先決角色(Prerequisite Roles)的概念來(lái)自于能力和適應(yīng)性。對(duì)先決絕對(duì)的限制成為先決限制。一個(gè)通俗的例子是,一個(gè)數(shù)學(xué)副教授應(yīng)該從數(shù)學(xué)講師中提拔,講師是任副教授的先決角色。但在實(shí)際系統(tǒng)中,不兼容角色之間的先決限制的情況也會(huì)發(fā)生。

    在圖ap08-03中,可以限制只有本項(xiàng)目的成員才有資格擔(dān)任程序員的角色,通常在一個(gè)系統(tǒng)中,先決角色比新指派的角色的級(jí)別要低一些。但有的情況下,卻要求只有當(dāng)用戶不是某個(gè)特殊角色時(shí),才能擔(dān)任另一個(gè)角色A。如,需要執(zhí)行回避策略時(shí)需要這樣做,例如,本課題組成員不應(yīng)當(dāng)是本項(xiàng)目成果鑒定委員會(huì)的成員。這類限制也可以推廣到許可權(quán)方面。

    由于用戶與角色的作用會(huì)與會(huì)話聯(lián)系在一起,因此對(duì)會(huì)話也可以施加限制。例如,可以允許一個(gè)用戶被指派給兩個(gè)角色,但不允許在同一時(shí)間內(nèi)把該用戶在兩個(gè)角色中都激活。另外,還可以限制一個(gè)用戶在同一時(shí)間內(nèi)可以激活的會(huì)話的數(shù)量,相應(yīng)的,對(duì)該用戶所激活的會(huì)話中所分配許可權(quán)的數(shù)量也可以施加限制。

    前面提到的繼承概念也可以視為一種限制。被分配給低級(jí)別角色的權(quán)限,也必須分配給該角色的所有上級(jí)角色。或等價(jià)的,一個(gè)指派給較高級(jí)別的角色的用戶必須指派給該角色的所有下級(jí)角色。因此從某種角度上講,RBAC1模型是冗余的,它被包含在RBAC2中。但RBAC1模型比較簡(jiǎn)潔,用繼承代替限制可使概念更清晰。

    實(shí)現(xiàn)時(shí)可以用函數(shù)來(lái)實(shí)現(xiàn)限制,當(dāng)為用戶指定角色或?yàn)榻巧峙錂?quán)限時(shí)就調(diào)用這些函數(shù)進(jìn)行檢查,根據(jù)函數(shù)返回的結(jié)果決定分配是否滿足限制的要求,通常只對(duì)那些可被有效檢查和那些慣例性的一些簡(jiǎn)單限制給與實(shí)現(xiàn),因?yàn)檫@些限制可以保持較長(zhǎng)的時(shí)間。

    模型中的限制機(jī)制的有效性建立在每個(gè)用戶只有唯一標(biāo)識(shí)符的基礎(chǔ)上,如果一個(gè)實(shí)際系統(tǒng)支持用戶擁有多標(biāo)識(shí)符,限制將會(huì)失效。同樣,如果同一個(gè)操作可以有兩個(gè)以上的許可權(quán)來(lái)比準(zhǔn),那么,RBAC系統(tǒng)也無(wú)法實(shí)施加強(qiáng)的基本限制和責(zé)任分離餓限制。因此要求用戶與其標(biāo)識(shí)符,許可與對(duì)應(yīng)的操作之間一一對(duì)應(yīng)。

    H.6. 統(tǒng)一模型RBAC3

    RBAC3把RBAC1和RBAC2組合在一起,提供角色的分級(jí)和繼承的能力。但把這兩種概念組合在一起也引起一些新問(wèn)題。

    限制也可以應(yīng)用于角色等級(jí)本身,由于角色間的等級(jí)關(guān)系滿足偏序關(guān)系,這種限制對(duì)模型而言是本質(zhì)性的,可能會(huì)影響這種偏序關(guān)系。例如,附加的限制可能會(huì)限制一個(gè)給定角色的應(yīng)有的下級(jí)角色的數(shù)量。

    兩個(gè)或多個(gè)角色由可能被限制成沒(méi)有公共的上級(jí)角色或下級(jí)角色。這些類型的限制在概念角色等級(jí)的權(quán)力已經(jīng)被分散化的情況下是有用哦,但是安全主管卻希望對(duì)所有允許這些改變的方法加以限制。

    在限制和角色的等級(jí)之間也會(huì)產(chǎn)生敏感的相互影響。在圖ap08-03的環(huán)境中,一個(gè)項(xiàng)目成員不允許同時(shí)擔(dān)任程序言與測(cè)試員的角色,但項(xiàng)目管理員所處的位置顯然是違反了該限制。在某種情況i下由高等級(jí)的角色違反這種限制是可接受的,但在其他情況下又不允許這種違反現(xiàn)象發(fā)生。

    從嚴(yán)格性的角度來(lái)講,模型的規(guī)則不應(yīng)該是一些情況下不允許而在另一情況下是允許的。類似的情況也會(huì)發(fā)生在對(duì)基數(shù)的限制上。假定限制一個(gè)用戶之多能分配給一個(gè)橘色,那么對(duì)圖中的測(cè)試員的一個(gè)指派能夠未被這種限制嗎?換句話說(shuō),基數(shù)限制是不是只能用于直接成員,是否也能應(yīng)用于繼承成員上?

    私有角色的概念可以說(shuō)明這些限制是有用的。同樣在圖ap08-03的環(huán)境中,可以把測(cè)試員',程序員'和項(xiàng)目管理員3個(gè)角色說(shuō)明為互斥的,它們處于同一等級(jí),沒(méi)有共同的上級(jí)角色,所以管理員角色沒(méi)有違反互斥限制。通常私有角色和其他角色之間沒(méi)有公共上級(jí)角色,因?yàn)樗鼈兪沁@個(gè)等級(jí)的最大元素,所以私有角色之間互斥關(guān)系可以無(wú)沖突的定義。

    諸私有角色之間的相同部分可以被說(shuō)明為具有0成員的最大技術(shù)限制。根據(jù)這種方法,測(cè)試員必須被指派給測(cè)試員'這個(gè)角色,而測(cè)試員角色就作為與管理員角色共享許可權(quán)的一種工具。

    在前面的討論中,我們都假設(shè)RBAC的所有組件都是由單個(gè)的安全員來(lái)管理里。但是,對(duì)于一個(gè)大系統(tǒng)而言,系統(tǒng)中的角色可能成百上千,再加上它們之間的復(fù)雜關(guān)系,使得集中式的管理任務(wù)成為非常可怕的工作,因此通常由幾個(gè)管理員小組來(lái)完成。能否用RBAC管理自己本身呢?

    RBAC的管理模型示于圖ap08-04。該圖的上半部分本質(zhì)上與圖ap08-02相同,圖中的限制時(shí)針對(duì)所有成分的,圖的下半部分是對(duì)上半部分關(guān)于管理角色AR和管理許可權(quán)AP與正規(guī)角色集R和許可權(quán)集P是分別不可相交的。這個(gè)模型顯示,正規(guī)許可權(quán)只能分配給正規(guī)角色(RBAC模型中定義的角色),管理許可權(quán)只能分配給管理角色。

    H.7. 定義4

    管理許可權(quán)AP有權(quán)改變組成RBAC0、RBAC1、RBAC2或RBAC3的所有成分,但正規(guī)許可權(quán)P不能。管理許可權(quán)與正規(guī)許可權(quán)不相交,即AP∩P=。管理許可權(quán)和正規(guī)許可權(quán)只能分別分配給管理角色AR和正規(guī)角色R,并且AR∩R=。

    管理模型示意圖

    圖 H.4. 管理模型示意圖


    在圖ap08-04的上半部可以對(duì)應(yīng)RBAC0、RBAC1、RBAC2和RBAC3模型,類似地下半部可以對(duì)應(yīng)ARBAC0、ARBAC1、ARBAC2和ARBAC3模型,此處的A表示“管理”。ARBAC0~ARBAC3形成了RBAC的管理模型族,成為ARBAC97。通常我們期望管理模型比RBAC模型本身簡(jiǎn)單一些,因此可以利用ARBAC0管理RBAC3,而不是用ARBAC3去管理RBAC0模型。

    H.8. 在ARBAC97中,包括三種組件

    URA87:用戶-角色指派。該組件涉及用戶-指派關(guān)系UA的管理,該關(guān)系把用戶與角色關(guān)聯(lián)在一起。對(duì)該關(guān)系的修改權(quán)由管理角色控制,這樣,管理角色中的成員有權(quán)管理正規(guī)角色中的成員關(guān)系。把一個(gè)用戶指定為管理角色是在URA97以外完成的,并假定是由安全員完成的。

    PRA97:許可權(quán)-角色指派。該組件涉及角色-許可權(quán)的指派與撤銷。從角色觀點(diǎn)來(lái)看,用戶和許可權(quán)有類似的特點(diǎn),它們都是由角色聯(lián)系在一起的實(shí)在實(shí)體。因此,可以把PRA97看做是URA97的對(duì)偶組件。

    RRA97:角色-角色指派。為了便于對(duì)角色的管理,對(duì)角色又進(jìn)行了分類。該組件涉及3類角色,它們是:

    1. 能力(Abilities)角色——進(jìn)以許可權(quán)和其他能力做成成員的角色。

    2. 組(Groups)角色——僅以用戶和其他組為成員的一類角色。

    3. UP-角色——表示用戶與許可權(quán)的角色,這類角色對(duì)其成員沒(méi)有限制,成員可以使用戶、角色、許可權(quán)、能力、組或其他UP-角色。

    區(qū)別這三類模型的主要原因是可以應(yīng)用不同的管理模型去建立不同類型角色之間的關(guān)系。區(qū)分的動(dòng)因首先是對(duì)能力的考慮,能力是許可權(quán)的集合,可以把該集合中所有許可權(quán)作為一個(gè)單位指派給一個(gè)角色。類似的,組是用戶的集合,可以把該集合中所有許可權(quán)作為一個(gè)單位指派給一個(gè)角色。組和能力角色都似乎可以劃分等級(jí)的。

    在一個(gè)UP-角色中,一個(gè)能力是否是其的一個(gè)成員是由UP-角色是否支配該能力決定的,如果支配就是,否則就不是。相反的,如果一個(gè)UP-角色被一個(gè)組角色支配,則這個(gè)組就是該UP-角色的成員。

    對(duì)ARBAC97管理模型的研究還在繼續(xù)之中,對(duì)能力-指派與組-指派的形式化已基本完成,對(duì)UP-角色概念的研究成果還未形式化。

    H.9. RBAC模型的特點(diǎn)

    符合各類組織機(jī)構(gòu)的安全管理需求。RBAC模型支持最小特權(quán)原則、責(zé)任分離原則,這些原則是任何組織的管理工作都需要的。這就使得RBAC模型由廣泛的應(yīng)用前景。

    RBAC模型支持?jǐn)?shù)據(jù)抽象原則和繼承概念。由于目前主流程序設(shè)計(jì)語(yǔ)言都支持面向?qū)ο蠹夹g(shù),RBAC的這一特性便于在實(shí)際系統(tǒng)中應(yīng)用實(shí)現(xiàn)。

    模型中概念與實(shí)際系統(tǒng)緊密對(duì)應(yīng)。RBAC模型中的角色、用戶和許可權(quán)等概念都是實(shí)際系統(tǒng)實(shí)際存在的實(shí)體,便于設(shè)計(jì)者建立現(xiàn)存的或待建系統(tǒng)的RBAC模型。

    RBAC模型仍素具訪問(wèn)控制類模型,本質(zhì)是對(duì)訪問(wèn)矩陣模型的擴(kuò)充,能夠很好的解決系統(tǒng)中主體對(duì)客氣的訪問(wèn)控制訪問(wèn)權(quán)力的分配與控制問(wèn)題,但模型沒(méi)有提供信息流控制機(jī)制,還不能完全滿足信息系統(tǒng)的全部安全需求。

    雖然也有人認(rèn)為可以用RBAC去仿真基于格的訪問(wèn)控制系統(tǒng)(LBAC),但RBAC對(duì)系統(tǒng)內(nèi)部信息流的控制不是直觀的,需要模型外的功能支持。有關(guān)信息流控制的作用域原理將在第四章介紹,屆時(shí)讀者可以進(jìn)一步理解RBAC模型的這種缺陷。

    RBAC模型沒(méi)有提供操作順序控制機(jī)制。這一缺陷使得RBAC模型很難應(yīng)用關(guān)于那些要求有嚴(yán)格操作次序的實(shí)體系統(tǒng),例如,在購(gòu)物控制系統(tǒng)中要求系統(tǒng)對(duì)購(gòu)買步驟的控制,在客戶未付款之前不應(yīng)讓他把商品拿走。RBAC模型要求把這種控制機(jī)制放到模型外去實(shí)現(xiàn)。

    RBAC96模型和RBAC97uanli模型都故意回避了一些問(wèn)題,如是否允許一個(gè)正在會(huì)話的用戶再創(chuàng)建一個(gè)新會(huì)話,管理模型不支持用戶和許可權(quán)的增加與刪除等管理工作燈,都是需要解決而未提供支持的問(wèn)題,這些問(wèn)題都還在研究中,但是如果缺少這些能力的支持,模型的而應(yīng)用也將受到影響。相反,訪問(wèn)絕陣模型提供了用戶和權(quán)限修改功能,因此,不能說(shuō)RBAC模型能夠完全取代訪問(wèn)矩陣模型。

    posted on 2009-08-18 17:18 憶風(fēng) 閱讀(1516) 評(píng)論(0)  編輯  收藏 所屬分類: Java EE
    主站蜘蛛池模板: 亚洲日韩精品国产3区| 亚洲乱码无限2021芒果 | a级成人毛片免费视频高清| 国产日韩在线视频免费播放| 无码一区二区三区免费| 毛片免费在线观看网站| 精品国产人成亚洲区| 亚洲福利视频网址| 免费精品久久久久久中文字幕| 久久精品免费观看国产| 免费激情视频网站| 国产亚洲人成无码网在线观看| 亚洲女人初试黑人巨高清| yy一级毛片免费视频| 日韩免费视频在线观看| 亚洲免费闲人蜜桃| 美女被免费视频网站a国产| 黄色一级毛片免费| 最近最新的免费中文字幕| 久久精品亚洲日本波多野结衣| 成人亚洲国产精品久久| 久久久无码精品亚洲日韩软件| 免费精品99久久国产综合精品| 亚洲国产精品日韩专区AV| 久久久久久亚洲精品影院| 日韩免费视频一区二区| 亚洲av永久无码精品天堂久久| 精品一卡2卡三卡4卡免费视频| 亚洲精品日韩专区silk| 在线观着免费观看国产黄| 国产午夜精品理论片免费观看| 亚洲另类激情专区小说图片| 香港经典a毛片免费观看看| 亚洲阿v天堂在线| 亚洲国产成人久久精品软件| 久久国内免费视频| 亚洲精品第一国产综合精品| 国产午夜鲁丝片AV无码免费| 亚洲精品无码中文久久字幕| 在线观看午夜亚洲一区| 国产午夜不卡AV免费|