国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
基于角色訪問控制的UML表示

基于角色訪問控制的UML表示

Michael E. Shin、Gail-Joon Ahn著,UMLChina

 

摘要

在基于角色訪問控制(role-based access control,RBAC)中,權(quán)限和角色相關(guān),用戶被當(dāng)作相應(yīng)角色的成員而獲得角色的權(quán)限。RBAC背后的首要?jiǎng)訖C(jī)是為了簡化管理。已經(jīng)有文章介紹了一些基于角色系統(tǒng)的開發(fā)框架,但目前很少有文章使用系統(tǒng)開發(fā)者或軟件工程師易于理解的方式來闡述RBAC。統(tǒng)一建模語言(UML)是一種通用的可視化建模語言,我們可以使用它闡述、可視化和文檔化軟件系統(tǒng)的組成部分。本文使用UML表示RBAC模型,縮短了安全模型和系統(tǒng)開發(fā)之間的鴻溝。我們使用三種視圖表述RBAC模型:靜態(tài)視圖、功能視圖、動(dòng)態(tài)視圖。另外,我們簡短地討論了將來的方向。

1 介紹

RBAC中,權(quán)限和角色相關(guān),用戶(user)被當(dāng)作相應(yīng)角色(role)的成員而獲得角色的權(quán)限(permission)。這大大簡化了權(quán)限的管理。角色針對組織中的各種功能創(chuàng)建,用戶依據(jù)他們的責(zé)任和資歷被指派角色。用戶被指派的角色可以容易地從一個(gè)跳到另一個(gè)。用戶對信息的訪問在指派角色的基礎(chǔ)上被管制。自從RBAC被廣泛接受,許多安全領(lǐng)域的研究者和安全系統(tǒng)開發(fā)者已經(jīng)花了很多時(shí)間來開發(fā)基于角色的系統(tǒng)。一些文章介紹了一些基于角色系統(tǒng)的開發(fā)框架 [2, 11 , 12 ]。這些以前的工作有一些很難被開發(fā)人員理解,因?yàn)樗鼈兲橄蟆?span id="moiyehiw" class="GramE">太形式,另外一些則是關(guān)注面向應(yīng)用或?qū)iT領(lǐng)域框架的具體解決方案。這些框架都不足夠?yàn)橄到y(tǒng)開發(fā)者給出一份合理的藍(lán)圖。

我們的主要目標(biāo)是縮短安全模型和系統(tǒng)開發(fā)之間的鴻溝。本文使用通用的可視化建模語言UML來表示RBAC模型。我們選擇UML的原因是它已經(jīng)成為建模的標(biāo)準(zhǔn)語言。我們的表示包括RBAC模型的靜態(tài)視圖、功能視圖、動(dòng)態(tài)視圖。

 本文按以下方式組織:在第2部分,我們描述一種廣為人知的基于角色訪問控制模型,通常稱為RBAC96。第3部分簡短介紹UML。第4部分用UML表示RBAC96模型。第5部分給出結(jié)論。

2. RBAC模型

作為有希望取代傳統(tǒng)自主式訪問控制(DAC)和強(qiáng)制式訪問控制(MAC  [3,4, 6, 9]的替代者, RBAC目前已經(jīng)得到了很大的關(guān)注。RBAC的策略基于角色,可以使用映射組織結(jié)構(gòu)的方式來闡述安全策略。Sandhu等發(fā)布了稱為 RBAC96RBAC通用模型家族[9]。圖1展示了家族中最通用的模型。關(guān)于在開發(fā)這個(gè)模型家族時(shí)所作設(shè)計(jì)決定的一些動(dòng)機(jī)和討論可參見[9]

1 RBAC模型

1顯示了 (regular)管制對數(shù)據(jù)和資源的訪問的角色和權(quán)限。直觀上,一個(gè)用戶是一個(gè)人或一個(gè)自治的agent,一個(gè)角色是一項(xiàng)在組織中的工作功能或工作頭銜。而權(quán)限是對系統(tǒng)中一個(gè)或多個(gè)object的特定訪問模式的許可或執(zhí)行某些動(dòng)作的特權(quán)。角色以偏序關(guān)系組織,如果x≥y那么角色x就繼承了角色y的權(quán)限。x的成員也意味著是y的成員。每次會(huì)話( session)把一個(gè)用戶和可能的許多角色聯(lián)系起來。用戶建立一次會(huì)話,激活一些他或她是成員(直接獲得或通過角色繼承的方式間接獲得)的角色子集。RBAC模型有以下組成部分,這些組成部分從以上的討論中形式化。

一個(gè)用戶可以成為很多角色的成員,一個(gè)角色可以有許多用戶。類似地,一個(gè)角色可以有多個(gè)權(quán)限,同一個(gè)權(quán)限可以被指派給多個(gè)角色。每個(gè)會(huì)話把一個(gè)用戶和可能的許多角色聯(lián)系起來。一個(gè)用戶在激發(fā)他或她所屬角色的某些子集時(shí),建立了一個(gè)會(huì)話。用戶可用的權(quán)限是當(dāng)前會(huì)話激發(fā)的所有角色權(quán)限的并集。每個(gè)會(huì)話和單個(gè)用戶關(guān)聯(lián)。這個(gè)關(guān)聯(lián)在會(huì)話的生命期間保持常數(shù)。一個(gè)用戶在同一時(shí)間可以打開多個(gè)會(huì)話,例如,在不同的工作站屏幕窗口各一個(gè)。每個(gè)會(huì)話可以有不同的活動(dòng)角色。會(huì)話的概念相當(dāng)于傳統(tǒng)的訪問控制中主體(subject)的標(biāo)記。一個(gè)主體是一個(gè)訪問控制單位,一個(gè)用戶在同一時(shí)間可以擁有多個(gè)不同活動(dòng)權(quán)限的主體(或會(huì)話)。

3. UML概覽

UML是通用的可視化建模語言,我們可以使用它闡述、可視化和文檔化軟件系統(tǒng)的組成部分?,F(xiàn)在UML已經(jīng)是軟件工程的標(biāo)準(zhǔn)語言。UML包括用例建模,靜態(tài)建模和動(dòng)態(tài)建模。在用例建模中,通過用例和執(zhí)行者闡述系統(tǒng)的功能需求。用例由執(zhí)行者引發(fā),描述了執(zhí)行者和系統(tǒng)之間的交互。靜態(tài)建模提供系統(tǒng)的結(jié)構(gòu)視圖信息,在這個(gè)視圖中,通過類、類屬性和與其他類的關(guān)系( relationship)表示。關(guān)系包括關(guān)聯(lián)(association)、泛化/特化(generalization/specialization)、聚合。動(dòng)態(tài)建模表現(xiàn)系統(tǒng)的行為視圖。它可以通過對象協(xié)作圖、順序圖或狀態(tài)圖來描述。對象協(xié)作圖和順序圖用來描述對象和其他對象在執(zhí)行用例時(shí)的協(xié)作。依賴于狀態(tài)的對象使用狀態(tài)圖來描述 [5]。

本文中,我們使用類圖、用例圖和對象協(xié)作圖分別作為RBAC模型的靜態(tài)視圖、功能視圖、動(dòng)態(tài)視圖。在本文的剩下內(nèi)容中,我們使用了 [1, 7, 10]中介紹的UML標(biāo)記符。

4. 基于UML RBAC表示

RBAC中的組成部分是用戶、角色、權(quán)限、會(huì)話和約束。為了使用UML表示RBAC模型,我們使用對象類的標(biāo)記分析每個(gè)組成部分。在本文后面部分中,我們的分析分為三個(gè)不同的視圖:靜態(tài)視圖、功能視圖和動(dòng)態(tài)視圖。

4.1 靜態(tài)視圖

2 類圖:概念靜態(tài)模型

RBAC的概念靜態(tài)模型如圖2所示,包括類、類之間的關(guān)系和關(guān)系的勢。基本的實(shí)體是用戶、角色、權(quán)限、約束和會(huì)話類。角色和權(quán)限類分別特化出兩種類別:使用者和管理者。這個(gè)特化依賴于用戶的資歷。RBAC模型的約束可以有很多種形式,依賴于應(yīng)用系統(tǒng)。為了簡化分析模型,我們靜態(tài)模型中的約束只有三個(gè):用戶約束、權(quán)限約束、會(huì)話約束。另外,靜態(tài)模型還有一個(gè)特殊的類session hour,當(dāng)用戶建立一個(gè)會(huì)話來激活他/她的角色時(shí),該類被使用。這對表達(dá)基于會(huì)話的約束很有用。例如,一個(gè)組織可以要求用戶只能在某些時(shí)間建立會(huì)話。為了強(qiáng)化這類約束,我們需要跟蹤每個(gè)會(huì)話的會(huì)話時(shí)間。實(shí)體類的屬性在圖3中定義。

3 實(shí)體類的屬性

在靜態(tài)視圖中,UA關(guān)系和PA關(guān)系用多對多的“assinged to”關(guān)系表示。用戶-會(huì)話關(guān)系看作一個(gè)用戶可以建立一個(gè)或多個(gè)會(huì)話,在常數(shù)的會(huì)話生命期中每個(gè)會(huì)話激活至少一個(gè)或多個(gè)角色。角色繼承關(guān)系表示為一個(gè)角色inherits另外的角色。

4.2 功能視圖

本文中,我們也作了更具體的功能需求來表示在圖2中沒有清晰定義的、RBAC系統(tǒng)應(yīng)該提供的功能。使用例模型描述的功能視圖如圖4所示,有三個(gè)執(zhí)行者:安全管理員(security administrator)、用戶(user)和角色領(lǐng)域工程師(role domain engineer)。角色領(lǐng)域工程師從可能組織一組權(quán)限的應(yīng)用系統(tǒng)中抽取出基本的知識,構(gòu)造角色層次和指定約束。安全管理員管理基于角色的系統(tǒng),指派用戶到角色和指派權(quán)限到角色。用戶是真實(shí)的人或外系統(tǒng),可以建立會(huì)話、請求權(quán)限許可和關(guān)閉會(huì)話。

4 用例模型

下面是建立會(huì)話(session establishing)用例的簡要敘述:

用例:建立會(huì)話

執(zhí)行者:用戶

前置條件:系統(tǒng)空閑

說明:用戶提交信息以建立會(huì)話;系統(tǒng)顯示用戶可以激活的角色;用戶選擇要激活的角色;系統(tǒng)以用戶所選擇的角色激活一個(gè)會(huì)話。

在以所選擇角色建立會(huì)話之后,用戶可能需要訪問需要基于角色信息的授權(quán)過程的系統(tǒng)資源。換句話說,和角色相關(guān)的權(quán)限應(yīng)該得到系統(tǒng)的許可。以下是“權(quán)限許可”用例的簡要描述:

用例:權(quán)限許可

執(zhí)行者:用戶

前置條件:用戶的會(huì)話已經(jīng)激活

說明:用戶提交權(quán)限許可信息,系統(tǒng)通知用戶權(quán)限是否許可。

我們也可以考慮其他情況。例如,我們可能需要額外的功能來讓安全管理員監(jiān)視會(huì)話或讓用戶查詢自己的狀態(tài)。

4.3 動(dòng)態(tài)視圖

在動(dòng)態(tài)視圖中,用例被精化以顯示參與用例的對象之間的交互。“建立會(huì)話”的協(xié)作圖如圖5所示。

5 協(xié)作圖:建立會(huì)話

用戶通過UserInterface引發(fā)用例, RBAC Controller coordinates協(xié)調(diào)對象之間的交互。“權(quán)限許可”的協(xié)作圖如圖6所示,需要一個(gè)前置條件:會(huì)話已經(jīng)被激活。

6 協(xié)作圖:權(quán)限許可

5. 結(jié)論

本文中,我們簡要描述了廣為人知的基于角色訪問控制模型。我們使用可視化建模語言UML來描述這個(gè)模型。這是使用建模語言描述RBAC模型的第一次嘗試。我們相信我們的工作可以幫助系統(tǒng)開發(fā)者更容易地理解RBAC模型和建立基于角色的系統(tǒng)。我們也識別了在安全模型的初期被排除的有用功能和約束。在此工作的基礎(chǔ)上,我們將研究基于UML的模型如何能適應(yīng)于闡述RBAC的組成部分。也包括如何用可能的UML擴(kuò)展表示角色繼承和約束。因?yàn)槟P屯ㄟ^簡化細(xì)節(jié)來幫助我們理解系統(tǒng),這個(gè)方向應(yīng)該比較實(shí)用。

致謝

感謝Jaehong Park的幫助審閱此文。

參考文獻(xiàn)

[1] G. Booch, J. Rumbaugh, and I. Jacobson. The Unified Modeling Language User Guide. Addison Wesley , 1999.

[2] Pete Epstein and Ravi Sandhu. Tow ards A UML Based Approach to Role Engineering. In Pr oceedingsof the 4th ACMWorkshop on Role-Based AccessControl, pages 135-142, Fairfax, VA, October 28-29 1999.

[3] David Ferraiolo and Richard Kuhn. Role-based access con trols. In Proceedings of 15th NIST-NCSC National Computer Security Conferenc e, pages 554-563, Baltimore, MD, October 13-16 1992.

[4] M.-Y. Hu, S.A. Demurjian, and T.C. Ting. User-role based security in the ADAM object-oriented design and analyses environment. In J. Biskup, M. Morgernstern, and C. Landwehr, editors, Database Security VIII: Status and Pr ospects . North Holland, 1995.

[5] Hossan Gomaa. Object Oriented Analysis and Modeling for Family of systems with the UML. T echnicalReport, ISE Dept. George Mason University, 1999.

[6] Imtiaz Mohammed and David M. Dilts. Design for dynamic user-role-based security. Computers & Security, 13(8):661-671, 1994.

[7] J. Rumbaugh, G. Booch, and I. Jacobson. The Unified Modeling Language Reference Manual. Addison Wesley , Reading MA, 1999.

[8] Ravi S. Sandhu. Lattice-based access control models. IEEE Computer, 26(11):9{19, November 1993.

[9] Ravi S. Sandhu, Edward J. Coyne, Hal L. Feinstein, and Charles E. Y ouman. Role-based access con trolmodels. IEEE Computer, 29(2):38{47, February 1996.

[10] National Soft w areet al. Unified Modeling Language Notation Guide, Version 1.1. September 1, 1997.

[11] Charles Y ouman, Ed Coyne, and Ravi Sandhu, editors. Pr oceedingsof the 2nd ACM Workshop on R ole-Based Access Control, Nov. 6-7. ACM, 1997.

[12] Charles Y ouman, Ed Coyne, and Ravi Sandhu, editors. Pr oceedingsof the 3rd ACM Workshop on R ole-Based Access Control, Oct. 22-23. ACM, 1998.

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
ITeye論壇關(guān)于權(quán)限控制的討論
網(wǎng)絡(luò)數(shù)據(jù)庫的訪問控制
也曬曬我的RBAC系統(tǒng)(一):概述
RBAC 介紹,案例講解。
RBAC的讀書筆記
[原創(chuàng)] 基于RBAC的權(quán)限設(shè)計(jì) - 歡迎大家討論 - 我的IT生活 - BlogJava
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服