《一种基于t-rbac的访问控制模型研究与应用》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
AbstractI‘withtherapidpopul撕zali咖ofncMofkan“tsapplicanont0eVer)『aspedof_sodal;life,thesecurityofnetworkhasbecomeanimportantproblem.Accesscontrolisoneoffivesecurityservicesthatmustbeimplementedinthebasicarchitectureforsecureinformationsystemsdefinedinthesecuritystandard(IS07498—2)byISO.Role-BasedAccessControl(RBAC)isoneofthebestandmostpopularaccesscontrolmodels.ComparedwiththetraditionalDACModelandMACModel,itcanprovidebetterflexibilityandscalability.Basedonthis,aTask-Role—BasedAccessControl(T-P,BAC)modelisbroughtup,whichisintegratedwiththeconceptofroleinRBACandtaskinTBAC.T-RBACcaneffectivelyreduceredundantdataandmaketherelatedmanagementmoreconvenient.However,thelackofconstraintssuchastimenarrowsitsdeploymentinsystemswhereamuchhighersecurityrequirementisneeded.ThethesispresentsastudyonextendedT-RBACmodelinmilitaryenviroment.First,systematicalresearchesonDiscretionaryAccessControl,MandatoryAccessControl,Role—BasedAccessControlandTask-Role-BasedAccessControl,summarizesthecharacterisitic-s’advantagesanddisadvantagesofthem;Then,analysestheespecialrequestinmilitaryenvironmentandputsforwardamilitaryaccesscontrolmodelbasedontaskandrolecalledAT-RBACmodel(armyTask-RoleBasedAccessContr01).Themodelputtemporalconstraintintheprocessofeonferingroleandperformingtaskthatenhancetimecharacteristicofthemodel.Inordertodecreaseinheritancegranularity,wedividetheroleinheritanceintotwoways:opensuccessionandclosesuccession.Atthesametime,someconceptsareintroducedinthemodel:rolelevel,taskfraction,taskpriority,dependencyamongtasks.ToRBACmodelsoundlystrengthensconstraintandsatisfytheveracityandsecurityrequest.Finally,inordertoexplainhowtorealizethissystembasedonT-RBACmodel,thethesisimplementsthegivenmodelinMilitaryDictateAutomatizationSystem.Thethesisdescribestheworkflow,datababasedesignandimportantcodeinthesystem.、 ^:札,弓颂士学位论文Abstractr}1t、‘Ps:+cqultshowsthatthesystemcanachieveexpectedfunctionofthemodelaswellasitsteasiblity.Kevwords:AccessControl;RBAC;T-RBAC;Role;Task;AT-RBAC吐●●●,I¨●怎 东北大学硕士学位论文目录目录声明⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯I中文摘要⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯...⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.IIABS17RACT⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。⋯⋯⋯⋯III第1章绪论⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯111.1课题背景与意义⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯厶⋯⋯⋯⋯11.2国内外研究现状’⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。31.3本文的主要工作⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。51.4本文的组织结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯6第2章访问控制技术简介⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯72.1访问控制策略概述⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。72.2访问控制策略的简介⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯72.2.1自主访问控制(DAC)⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.72.2.2强制访问控制(MAC)⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯82.2.3基于角色的访问控制(RBAC)⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯92.3三种访问控制策略的比较⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.92.4本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.10第3章RBAC技术和模型的研究⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯113.1RBAC的基本概念⋯⋯⋯⋯⋯⋯⋯⋯...⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ll3.2RBAC96模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..143.2.1RBACo模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯153.2.2RBACI模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯:⋯163.2.3RBAC2模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.173.2.4RBAC3模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..173.3√6岫AC97模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯l83.3.1URA97模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯...⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯19一卜一厂一,—b/r●,●.t,l;尸 东北大学硕士学位论文目录3.3.2PRA97模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。203.3.3RRP97模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯203.4基于角色和任务的访问控制模型T-RBAC⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。203.4RBAC模型的特点讨论⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..223.5本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..23第4章AT-RBAC模型⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯254.1AT-RBAC模型的构建⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..254.2时间约束(TemporalConstraint:TC)⋯⋯⋯⋯⋯⋯:⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..274.2.1时间的概念⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..274.2.2时间约束的分类⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.284.2.3时间约束在AT-RBAC模型中的应用⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯294.2.4时间约束的表示形式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯304.3角色管理⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯344.3.1角色继承的约束(RoleInheritanceConstraint:RIC)⋯⋯⋯⋯⋯⋯⋯.j⋯⋯⋯⋯344.3.2角色等级(RoleLevel:RL)⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯354.4任务管理⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..364.4.1任务的分类(TaskFraction:TF)⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯_⋯⋯⋯⋯⋯⋯⋯⋯⋯364.4.2任务的优先级(TaskPriofity:TP)⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯374.4.3任务问的相互依赖关系(TaskDependency:TD)⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯384.5模型的安全性⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.394.5.1最小特权原则⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯394.5.2职责分离⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯0⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯404.5.3时间限制⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯....⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯404.6本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..j⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。40第5章AT-RBAC访问控制系统的设计与实现⋯⋯⋯⋯⋯⋯⋯⋯⋯415.1军事指挥自动化系统的总体设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯415.2权限控制系统的结构设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.425.3权限控制系统应用服务的结构与流程⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。435.4权限控制系统应用服务的模块设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.47一n一孵●j ’.;-●东北大学硕士学位论文目录5.4.1对象定义模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯485.4.2角色定义模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯495.4.3任务定义模块⋯⋯⋯⋯⋯⋯...⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯505.4.4权限定义模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯515.4.5用户委派模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.525.4.6任务授权模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯525.4.7权限配置模块⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯535.5权限控制系统的数据库设计⋯⋯:⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.545.5.1用户信息库⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯545.5.2角色信息库⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯555.5.3任务信息库⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯:⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯565.5.4权限信息库⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。..565.5.5用户、角色、任务间的授权关系信息库⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.575.5.6动态约束信息库⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯585.6权限加载的实现⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯595.6.1接口部分⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.595.6.2权限加载的实现⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯605.7开发与运行环境⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.625.8性能测试⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.625.9本章小结⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。第6章总结与展望⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯67参考文献⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯。69致谢⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..73一HI— t;;,p,。;童 下≯东北大学硕士学位论文第1章绪论通信、计算机和网络等信息技术的发展大大提升了信息的获取、处理、传输、存储和应用能力,信息数字化已经成为普遍现象。互联网的普及更方便了信息的共享和交流,使信息技术的应用扩展到社会经济、政治、军事、个人生活等各个领域。因此,信息安全的重要性可以上升到国家安全的高度。1.1课题背景与意义在计算机网络飞速发展的今天,人们的工作与生活越来越密切的与计算机网络连接在一起。如何确保信息在计算机网络中的完全性,防止其受到攻击,如窃取、冒充、伪造、篡改等等,成为了迫切需要解决的问题。计算机安全是指,为信息处理系统建立和采取的技术和管理的安全保护措施,保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因而使系统或信息遭到破坏、更改或泄露【11。它的目标是保护信息的机密性、完整性、抗否认性和可用性;也有观点认为是机密性、完整性和可用性,即CIA(Confidentiality,Integrity,Availability)【刽。一般而言信息安全探讨的课题包括了:入侵检测(IntrusionDetection)、加密(Encryption)、认证(Authentication)、访问控制(AccessContr01)以及审核(Auditing)等等。其中访问控制这一项即为本文欲探讨的内容。访问控制的作用就是对需要访问的主体(用户、进程等)进行身份验证,并限制访问主体对访问客体(文件、系统等)的访问权限,从而使计算机系统在合法范围内使用。访问控制不仅是拒绝非法用户访问,更主要的是限制合法用户对资源的访问。美国国家安全局发布的IATI'F(InformationAssuranceTechnicalFramework,信息保障技术框架)文档中根据信息安全需求划分了五种主要的安全服务:访问控制、保密性、完整性、可用行和不可否认性。访问控制技术产生于20世纪60年代,其描述性定义是:访问控制是实现既定安全政策f3l的系统安全技术,它管理所有的资源访问请求,即根据安全政策的要求,对每一个资源访问请求做出是否许可的判断,能有效的防止非法用户访问系统资源和合法用户非法使用资源。访问控制可以通过授权系统的控制,使用户仅获得能够访问资源的最小权限,保证无法越权访问。通过访问控制,就可以对他们的访问权限进行严格的限制,降低他们的一1一,j广-、-. 东北大学硕士学位论文第1章绪论破坏力。目前,访问控制的重要性己经越来越为人们所认识,但是它并不能与其他的安全服务相分离或独立。这些安全服务是相互依赖的。在实现上,通常是一种安全机制支持多种安全服务。这样的安全机制通常需要多种安全技术联合构建。比如,密码、认证与识别、授权与访问控制、审计、网间隔离与访问代理、反病毒等。只有综合运用各种安全技术,合理搭配,才能构建支持多种安全服务、强有力的安全机制。访问控制在操作系统、数据库和网络上都有十分重要的应用。现代操作系统如Windows系列,Solaris系列,UNIX系列都实现了不同程度的访问控制;许多大型数据库产品如Oracle,Sybase,Informix等都支持访问控制功能;Web安全产品如getAccess,TrustedWeb,Tivoli都把访问控制模块作为其核心模块之一。传统的访问控制方法包括了美国国防部颁布的橘皮书(OrangeBook)中制订的两种方法:强制的访问控制(MandatoryAccessControl,MAC)、自主型的访问控制(DiscretionaryAccessControl,DAC)眇,6,71。MAC方法主要应用在传统的国防领域,访问控制策略基于访问对象的保密等级来实现,由于定制严格而缺乏弹性,对系统的其他方面如授权管理方面使用不够灵活。而DAC方法下,资源的拥有者可以自行决定资源的访问权限,因其具有弹性的特性,目前已广泛的应用于商用系统中。但其却具有无法控制信息流向的缺点。一个资源的拥有者具有对资源的访问权限,同时该用户也可以将他的访问权限授予其他的用户,这样也不利于实现统一的全局访问控制。在企业环境中,系统产生的资源是属于公司的财产,若由使用者自行裁决资源的使用权限,并非合理的作法。同时以上两种方法皆注重于最基本的访问权,诸如读(read)、写(write)、删除(revoke)、增加(append)、执行(excute)等,并无法满足复杂的企业环境需求。譬如在一笔银行的交易中,可能就牵涉到数次读、写、执行的动作,若使用MAC或DAC来制订系统的访问政策(policy),显然是件非常复杂的工作。20世纪90年代以来出现的基于角色的访问控锘J](Role.BasedAccessControl,RBAC)技术有效地克服了MAC和DAC技术中的不足,可以减少授权管理的复杂性,降低管理开销,而且还能为管理员提供一个比较好的实现安全政策的环境。是近年来在信息安全领域访问控制方面的研究热点和重点。在RBAC中,引入了角色这一重要概念。所谓“角色一,就是一个或一群用户在组织内可执行的操作的集合。RBAC的基本思想是:授权给用户的访问权限,通常由用户在一个组织中担当的角色来确定。例如军用指挥自动化系统中,有指挥员、参谋、工程师等,由于他们的职能不同,所拥有的访问权限显然也各不相同。RBAC根据用户在组一2一妒;j 东北大学硕士学位论文第1章绪论织内所处的角色进行访问授权与控制。就是说,传统的访问控制直接将访问主体(发出访问操作、存取要求的主动方)和客体(被调用的程序或欲存取的数据)相联系,而RBAC在中间加入了角色,通过角色沟通主体与客体。实现访问权限的是用户对应的角色。1.2国内外研究现状目前对RBAC已有较广泛的研究,其中较为深入的是美国GeorgeMason大学的RBAC96和ARBAC97模型,另外还有美国国家标准与技术局(NIST)研究小组的RBAC模型,以及SQL3RBAC模型等。1992年,美国国家标准与技术研究所(NIST)的DavidFerraiolo和RickKuhn在综合了大量的实际研究之后,率先提出基于角色的访问控制模型框架,并给出了RBAC模型的一种形式化定义【引。该模型第一次引入了角色的概念并给出其基本语义,指出RBAC模型实现了最小权限原贝,l|(LeastPrivilege)和职责分离原贝1](SeparationOfDuty)。该模型中给出了一种集中式管理的RBAC管理方案。1995年他们以一种更直观的方式对该模型进行了描述【伽。:RaviSandhu和他领导的位于GeorgeMason大学的信息安全技术实验室基于角色访问控制的理论与应用研究(LIST)于1996年提出了著名的RBAC96模型110l,将传统的RBAC模型根据不同需要拆分成四种嵌套的模型并给出形式化定义,极大地提高了系统灵活性和可用性。1997年他们更进一步,提出了一种分布式RBAC管理模ARBAC97,实现了在RBAC模型基础上的分布式管理111l。这两个模型清晰地表征了RBAC概念并且蕴涵了他人的工作,成为RBAC的经典模型,绝大多数基于角色的访问控制研究都以这两个模型作为出发点。2000年Osborn等人研究了RBAC模型究竟能够在多大程度上解决MAC和DAC这个问题,证明了RBAC是一种更一般的访问控制模型。他们利用RBAC模型成功的模拟了MAC和DAC[121,通过定义合适的用户、角色和权限,RBAC模型可以衍生出更多种类的访问控制模型,从而可以真正取代已有的两种模型。2001年,RBAC领域的领军人物DavidFerraiolo,RaviSandhu等人联合拟定了一个RBAC模型的美国国家标准草案,力图统一不同模型中的术语,并对所有RBAC的基本操作给出伪码定义。该模型类似于RBAC96模型,只是对权限部分做了一定的细化,分成操作(Operation)和对象(Objcct).一3一 东北大学硕士学位论文第1章绪论2001年8月,ACM(AssociationforComputingMachinery)版标准草案完成【13l,它综合考虑了当前学术界和产业界对RBAC技术的各种见解,界定了RBAC技术的领域范围,统一了相关术语,建立了RBAC技术的参考模型,定义了各种模型构件,并给出了一套系统与管理功能规范。这之后人们习惯将它成为NISTRBAC模型。目前人们将RBAC96模型和NISTRBAC模型认作传统的RBAC模型。2003年4月,NIST提交标准草案【141。2004年2月19日,在这两个标准的基础上,INCITS正式批准了ANS/INCI’TS359-2004StandardInformationTechnology—RoleBasedAccessControl。然而随着Internet的高速发展,网络规模的迅速扩大,很多基于Web的服务中相继采用了基于角色的访问控制,随之而来的关于传统RBAC模型中存在的问题也逐渐的暴露出来。比如随着应用环境的同渐复杂,用户与资源数量不断增加,在传统RBAC中系统管理员采用手动授权为用户分配角色,就显得不适合了,这种授权方式不仅需要很大的工作量,当用户角色发生变化的时候需要逐一修改,增加了系统的不便性。而且维护用户和角色之间的关系就会给系统管理员带来大量的机械的工作。系统维护成本的高低,直接影响着企业的运营成本,维护成本的增加必然需要增加系统管理员的队伍,这将增加系统管理的复杂性和系统的不安全性。传统RBAC模型在依赖时间、地点等存取控制策略时也明显显示出了它的不足。因此,对于传统的RBAC模型,仍需要加以改进和完善。目前国内外的学者,主要的研究方向集中在对传统RBAC模型的扩展上。Bertin等人提出TTemporal.RBAC模型_J[151,该模型在访问控制框架中引入了时间(time)参数,在角色分配时引入时间的限制,支持权限之间的临时依赖关系。Joshi,Bcrtino等人又对该模型进行了扩充,提出TGeneralizedTemporalRBAC模型【16】,进一步把时间的限制应用到了角色的层次,职责分离等方面。国内对研究RBAC如何应用于操作系统、数据库系统等情况较多,对RBAC在具体的信息系统中应用的研究较少。对RBAC的研究主要有中国科学院软件研究所、华中科技大学等,主要是对RBAC模型扩展和应用方面进行深入的研究。中国科学院的黄健等人提出了麟C模型【1刀,在RBAC基础上作了时间特性方面的扩展,定义了系统时钟,对约束、会话和系统状态空间本身进行了时间扩充。解决了时间授权约束和会话的状态转变问题,同时对系统一致性状态的维护进行了讨论与分析。但在一致性状态维护方面仍然存在一些问题。鲁柯等人提出了带时间特性的RBAC的使用控制模型11Sl。一4一,7j 东北大学硕士学位论文第1章绪论中国科学院的乔颖等人提出"]'NRBACll9l模型,该模型定义了原始角色集上的3种运算:排斥运算、活跃排斥运算和分级运算。更加接近现实世界及形式统一,更加全面的满足现实应用中的需求。蔡永国等人在RBAC模型的基础上,融合协同业务规范中的义务及奖惩元素,提出RBAO(RoleBasedAccessandObligation)1201模型。RBAO模型不仅能描述角色在组织中可拥有的访问权力,还能描述角色在组织中可能要承担的义务及义务违反时将受到的处罚。中南大学的杨萍等在ARBAC97的基础之上提出了基于资源的RRBACl21】模型将企业机构资源和系统菜单资源分层次赋给角色,简化角色的授权管理,实现了更细粒度的访问控制,优化了基于角色的访问控制。此外,近几年提出了一种T-RBAC(Task.Role.BasedAccessContr01)122,23,241模型。在RBAC中加入了任务的概念,整个工作流系统中的用户都被赋予特定的角色,同时规定每个角色可以执行哪些任务以及每个任务的最小访问权限。这样,权限不再直接与用户相关,而必须通过任务才能与角色关联起来。权限可以作为任务的属性来实现,而不必建立类似传统RBAC模型中的二元组权限,没有了数据冗余,方便了管理员的安全管理工作。不管用户采用其拥有的何种角色登陆,都必须在执行系统分配的任务实例的过程中才拥有该权限任务实例的数据访问权限,这样就自然地实现了权限的动态分配和撤销,提高了工作流系统的动态适应性。由于权限直接和任务相关,用户只有在执行任务实例地情况下才拥有该任务对应的访问权限。王锐等人实现了TRBAC模型在实验教学系统中,基于.NET平台下的任务角色访问控制1251。1.3本文的主要工作本文首先对传统访问控制中的强制访问控制模式和自主访问控制模式进行了介绍,重点介绍了传统基于角色的控制模型RBAC96模型、ARBAC97模型,以及基于任务一角色的访问控制模型T-RBAC模型,分析了这几种模型的特性以及存在的不足。在此基础之上提出了一种T-RBAC的扩展模型,适用于军队环境下应用的AT-RBAC模型,在具体描述该模型时,首先引入了时间限制的概念,在用户.角色和任务.权限的授权过程中加入时间上的规范,授权要符合时间要求才能够成立。然后,分别对模型中的重点部分角色和任务引入了一些约束,对角色执行的继承引入了部分继承的概念,将继承分为两种方式开放式继承和封闭式继承,继承的任务也区分为可继承的公共任务和不可继承的私--5·-—- 东北大学硕士学位论文第1章绪论有任务,减小了继承的粒度,并提出了角色等级的概念,增强了等级之间读写数据的安全性。根据任务执行时的不同性质进行了分类约束,提高了对大量任务的归纳处理效率。定义了任务的优先级,优先级高的任务可以先执行。最后对任务相互之间的依赖关系进行了具体的描述。1.4本文的组织结构本文共分六章,各章内容安排如下:第1章,绪论。对信息安全和RBAC技术的发展应用作了简要的介绍;概述本文所做的研究工作。第2章,访问控制技术简介。介绍了三种主要的访问控制技术:自主访问控(DAC),强制访问控制(MAC)和基于角色访问控制(RBAC)。第3章,RBAC技术和模型的研究。详细介绍基于角色访问控制的经典模型:RBAC96模型、ARBAC97模型,以及新兴的基于任务.角色的T-RBAC模型。第4章,在已有的基于任务的角色访问控制模型的基础上,分析了在实际访问控制中仍存在的诸多问题。详细地介绍了引入时间约束和继承约束的AT-RBAC模型。时限约束的具体含义是授权用户在赋予被授权角色和任务在一定时间段中具有一定的权限,即仅仅在时间段中可以行使权限,一旦当前时间超出时间段范围,则系统自动撤销该角色任务集中授权的某个任务,或者直接将任务取消掉,而且对于角色和任务授权的最大时间长度有一定的限制。继承约束是在角色继承的过程中,对于继承的任务进行有条件的限制,从而达到减小粒度,提高效率的目的。除此之外,还引入了角色等级,任务优先级和任务分类的概念,对角色和任务进行进一步的约束限制。最后对整个模型进行了安全性分析。第5章,将这种访问问控制模型应用到军事指挥自动化系统中,详细描述了系统的总体结构图,访问权限子系统中各个模块的流程图,实现了数据库和程序部分,并对系统进行了测试。第6章,对全文工作进行总结,并对下一阶段的研究进行展望。一6一一矗'一二 东北大学硕士学位论文第2章访问控制技术简介2.1访问控制策略概述.访问控制是一个安全信息系统不可缺少的重要组成部分,访问控制的目的在于限制I系统内合法用户的行为和操作(非法用户不能通过身份认证),它包括用户能做什么以一及系统程序根据用户的行为应该做什么两层含义。访问控制的研究是一个前沿领域,它在一个安全系统中起着极其重要的作用,是一种能达到显著安全效果的十分重要的技术。同时访问控制也是统一安全认证平台上一个不可缺少的重要模块。t访问控制是指主体依据某些控制策略或权限对客体本身或是其资源进行的不同授权访问。访问控制包括三个要素,即:主体、客体和控制策略。主体(Subject):发出访问要求、存取要求的主动方。通常可以是用户或某个进程。客体(Object):被访问的对象,通常可以是被调用的程序、进程,要存取的数据、信息,要访问的文件、系统或各种网络设备、设施等资源。控制策略:是主体对客体的操作行为集和约束条件集,控制策略是主体对客体的访●问规则集,直接定义了主体对客体可以的作用行为和客体对主体的条件约束。本章主要介绍几种重要的传统访问控制模型,它们对以后的各类访问控制模型的研究有着基础性的作用。,2.2访问控制策略的简介根据应用背景的不同,访问控制可以有不同的实现策略。二十世纪七十年代以来,如下三种访问控制策略被依次提出,在现有的访问控制产品中应用较广:自主访问控制(DiscretionaryAccessControl,DAC),强制访问控制(MandatoryAccessControl,MAC)和基于角色的访问控制(Role.BasedAccessControl,RBAC)。2.2.1自主访问控制(DAC)自主访问控制模型【26I(DACModel,DiscretionaryAccessControlModel)是根据自主访问控制策略建立的一种模型,允许合法用户以用户或用户组的身份访问策略规定的客体,同时阻止非授权用户访问客体,某些用户还可以自主地把自己所拥有的客体的访问一7一 东北大学硕士学位论文第2章访问控制技术简介权限授予其它用户。自主访问控制又称为任意访问控制。LINUX,UNIX,WindowsNT或是SERVER版本的操作系统都提供自主访问控制的功能。在实现上,首先要对用户的身份进行鉴别,然后就可以按照访问控制列表所赋予用户的权限允许和限制用户使用客体的资源。主体控制权限的修改通常由特权用户或是特权用户(管理员)组实现。自主访问控制对用户提供的这种灵活的数据访问方式,使得DAC广泛应用在商业和工业环境中;由于用户可以任意传递权限,那么,没有访问文件Filel权限的用户A就能够从有访问权限的用户B那里得到访问权限或是直接获得文件Filel;因此,DAC模型提供的安全防护还是相对比较低的,不能给系统提供充分的数据保护。自主访问控制模型的特点是授权的实施主体(可以授权的主体;管理授权的客体;授权组)自主负责赋予和回收其他主体对客体资源的访问权限。一般采用访问控制矩阵和访问控制列表存放不同主体的访问控制信息,从而达到对主体访问权限的限制目的。2.2.2强制访问控制(MAC)强制访问控制模型Iz'rj(MACModel:MandatoryAccessControlModel)最开始为了实现比DAC更为严格的访问控制策略,美国政府和军方开发了各种各样的控制模型,’这些方案或模型都有比较完善的和详尽的定义。随后,逐渐形成强制访问的模型,并得到广泛的商业关注和应用。和DAC模型不同的是,MAC是一种多级访问控制策略,它的主要特点是系统对访问主体和象分配不同的安全级别属性,在实施访问控制时,系统先对访问主体和受控对象的安全级别属性进行比较,再决定访问主体能否访问该受控对象。MAC对访问主体和受控对象标识两个安全标记:一个是具有偏序关系的安全等级标记;另一个是非等级分类标记。主体和客体在分属不同的安全类别时,都属于一个固定的安全类别SC,SG就构成一个偏序关系(比如TS表示绝密级,就比密级S要高)。当主体S的安全类别为髑,而客体。的安全类别为S时,用偏序关系可以表述为SC(s)>SC(o)。考虑到偏序关系,主体对客体的访问主要有四种方式:(1)向下读(rd,readdown):主体级别大于客体级别的读操作;(2)向上读(ru,readup):主体级别低于客体级别的写操作;(3)向下写(wd’writedown):主体级别大于客体级别的写操作;(4)向上写(帆writeup):主体级别低于客体级别的读操作。由于MAC通过分级的安全标签实现了信息的单向流通,因此一直被军方采用,其中最著名的是Bell.LaPadula模型【篮l和Biba模型1291:Bell.LaPadula模型具有只允许向下一8一一矗,-t 东北大学硕士学位论文第2章访问控制技术简介读、向上写的特点,可有效地防止机密信息向下级泄露:Biba模型则具有不允许向下读、向上写的特点,可有效地保护数据的完整性。强制访问控制的优点是管理集中,根据事先定义好的安全级别实现严格的权限管理,因此适宜于对安全性要求较高的应用环境,一般在军事环境下应用比较多。美国军方就一直使用这种访问控制模型。但这种强制访问控制太严格,实现工作量太大,管理不便,不适用于主体或客体经常更新的应用环境。2.2.3基于角色的访问控制(RBAC)前面两种访问控制模型都存在的不足是将主体和客体直接绑定在一起,授权时需要对每对(主体,客体)指定访问许可。这样存在的问题是当主体和客体达到较高的数量级之后,授权工作将非常困难。二十世纪九十年代以来,随着对在线的多用户、多系统的研究不断深入,角色的概念逐渐形成,并逐步产生了以角色为中心的访问控制模型(Rolc.BasedAccessContr01)。基于角色的访问控制是指授权给用户的访问权限,通常由用户在一个组织中担当的角色来确定,当用户被赋予一个角色时,用户具有这个角色所具有的所有访问权限。目前,基于角色的访问控制模型正逐步被理论界和工业界所接受。2.3三种访问控制策略的比较DAC的主要特点是根据主体的身份及允许访问的权限进行决策。灵活性高,被大量采用。DAC技术存在明显的不足,主要体现在以下几方面:(1)既然主体可任意在系统中规定谁可以访问源,那么系统管理员就难以确定哪些用户对哪些资源有访问权限,不利于实现统一的全局访问控制;(2)在许多组织中,用户对他们所能访问的资源并不具有所有权,组织本身才是系统中资源的真正拥有者。而且,各组织希望访问控制实现能与组织内部的安全策略相一致,并由管理部门统一实施访问控制,不允许用户自主地处理,而DAC却存在着用户滥用职权的问题;(3)用户间的关系不能在系统中体现出来,不易管理;(4)信息容易泄露,不能抵御特洛伊木马(TrojanHorse)的攻击。特洛伊木马是嵌入在合法程序中的一段以窃取或破坏信息为目的的恶意代码。在自主型访问控制下,一旦带有特洛伊木马的应用程序被激活,特洛伊木马便可以任意泄露和破坏接触到的信一9一 东北大学硕士学位论文第2章访问控制技术简介息,甚至改变这些信息的访问授权模式。MAC的特点:强制访问控制的实施取决于能用算法表达的且能在计算机上可执行的策略。策略给出的只是资源受到的限制和主体的授权,而对资源的访问权限取决于实体的授权而非主体的身份。可以在一定程度上防范木马攻击,攻击者只能破坏而不能获取机密信息。系统管理员可以对系统权限进行有效的管理。MAC的不足主要体现在以下两方面:(1)用户共享数据的机制不灵活,MAC不允许一个进程生成共享文件,可防止进程通过共享文件将信息从一个进程转移到另一个进程,但这对合法用户却是一种限制;(2)应用的领域较窄,使用不灵活,一般用于军方等具有明显等级观念的行业领域。RBAC从控制主体的角度出发,根据管理中相对稳定的职权和责任来划分角色,将访问权限与角色相联系,这点与传统的MAC和DAC将权限直接授予用户的方式不同;通过给用户分配合适的角色,让用户与访问权限相联系。角色成为访问控制中访问主体和受控对象之间的一座桥梁。相比较而言,RBAC是实施面向企业的安全策略的一种有效的访问控制方式,其具有灵活性、方便性和安全性的特点,目前在大型数据库系统的权限管理中得到普遍应用。RBAC极大的方便了权限管理:(1)给用户分配角色不需要很多技术,可以由行政管理人员来执行;(2)给角色配置权限的工作比较复杂,需要一定的技术,可以由专门的技术人员来承担,但是不给他们分配角色的权限,这与现实中的情况正好一致;(3)在现实中用户是很可能发生变化的,而系统中角色变化的频率会低得多;如果一个用户的职位发生变化,在RBAC中只要将用户当前的角色去掉,加入代表新职务或新任务的角色即可,维护操作简单。研究人员己经逐渐认识到强制访问控制和自主访问控制理论不能够反映越来越复杂的安全需求,基于角色的访问控制作为近些年来产生的理论仍然在不断的完善,并最终作为强制访问控制和自主访问控制的替代策略。2.4本章小结本章概括地介绍了访问控制策略的概念,简要介绍了自主访问控制(DAC)、强制访问控制(MAC)相关概念和基于角色的访问控制(RBAC)相关概念、控制方法和基本模型,并讨论了这三种访问控制策略各自的特点。一10一,1..J 东北大学硕士学位论文第3章RBAC技术和模型的研究RBAC模型的建立及其实现是基于角色访问控制研究中的两大热点。近几年来,对基于角色访问控制的研究不断深入。RBAC模型实际上形象地反映了RBAC本身的含义,建立RBAC模型就是要对RBAC进行系统地描述,从而使人们能够非常方便地理解RBAC的含义,以便对其进行更加深入地研究。目前,绝大多数基于角色的访问控制研究都以RBAC96,ARBAC97这两个模型作为出发点进行深入研究。本章将对RBAC热点模型进行详尽的研究。3.1RBAC的基本概念本小节给出了RBAC模型中各种术语的基本定义,以及模型所遵循的基本原则。RBAC模型中的常用术语如下:用户(User):是一个访问计算机系统中的数据或者用数据表示的其它资源的主体。我们用U表示全体用户的集合。用户一般情况下指人,也可为Agent等智能程序。权限(Permission):是对计算机系统中的数据或者用数据表示的其它资源进行访问的许可。我们用P表示全体权限的集合。权限一般是一种抽象概念,表示对于某种客体资源的某种操作许可。因此有的模型中将权限细化为二元组(操作,对象),其中对象是访问控制系统中的真正客体,操作是作用在该对象上的一种访问方式。由于该二元组中操作一般是与具体的对象相关的,在今后的模型中认为权限是一个语义统一体。角色(Role):是指一个组织或任务中的工作或位置,代表了一种资格、权利和责任。我们用R表示全体角色的集合。角色是一种语义综合体,可以是一种抽象概念,也可以对应于具体应用领域内的职位和权利。管理员角色(AdministratorRole):是一种特定的角色,用来对角色的访问权限进行设置和管理。在集中式管理控制模型中,管理员角色由一个系统安全管理员来完成;而在分布式管理控制模型中,可以采用制定区域管理员来对系统进行分布式管理,每个管理员可以管理该区域内的角色权限的配置情况。当然区域管理员的创建和权限授予则统一由顶级的系统安全管理员完成。用户指派(UserAssignment):是用户集U到角色集R的一种多对多的关系,即有UAEUxR也称为角色授权(RoleAuthorization).(u,r)∈UA表示用户。拥有角色r,一11一 东北大学硕士学位论文第3章RBAC技术和模型的研究从语义上来说就表示U拥有r所具有的权限。权限指派(PermissionAssignment):是权限集P到角色集R的一种多对多的关系,即有PA(EPxR。PA(p,r)表示权限P被赋予角色r,从语义上来说,就表示拥有r的用户拥有P。用户、角色与权限之间的关系如图3.1所示。图3.1用户、角色与权限的关系Fig.3.1Therelationshipamonguser,roleandpermission角色激活(RoleActivation):是指用户从被授权的角色中选择一组角色的过程。用户访问的时候实际具有的角色只包含激活后的角色,未激活的角色在访问中不起作用。相对于静态的角色授权来说,角色激活是一种动态的过程,提供了相当的灵活性。会话(Session):对应于一个用户和一组激活的角色,表征用户进行角色激活的过程。一个用户可以进行几次会话,在每次会话中激活不同的角色,这样用户也将具有不同的访问权限。用户必须通过会话才能激活角色。角色继承关系(RoleInheritance):是角色集R中元素间的一种偏序关系≥,满足.,(1)自反性:Vr∈R.r≥r;(2)反对称性:Vrl,r2ER,rlar2nr2zrl号r1=r2;1(3)传递性:Vr1,r2,r3ER,rl之r2nr2苫r3号r1乏r3。从语义上来说,两个角色rlar2是指前者比后者级别更高,具有较大的权利。形式化的说,rl>r2蕴涵r2对应的权限指派r1也拥有,同时r1对应的用户指派r2也拥有,即有:dar2=,.Permission(r2)_CPermission(rlrlUser(r1))C_User(国其中Permission(r)表示r对应的权限集,User(r)表示r对应的角色集。角色继承关系允许存在各种形式,包括多重继承。在这个偏序的意义下,角色集中并不一定存在最一12— 东北大学硕士学位论文第3章RBAC技术和模型的研究大角色和最小角色。角色层次图(RoleHierarchies):是给定了角色继承关系之后整个角色集形成的一个层次图:如果rl:-r2,那么在图上就存在rl到r2的一条有向边。根据不同的角色偏序定义,角色层次图可以是树、倒装树、格,甚至极为复杂的图。一般为了简化角色层次图,有向边的箭头被省略,继承关系默认为自上而下。图3.2,就是一个角色层次图例。r管理员(DIR)。////—\项目生产程师1(PEl)工程师1(E1)量工)项目生产程师2(PE2)工程师2(E2)工程师职位(ED)员工(E)项目质量工程师2(QE2)图3.2角色层次图例Fig.3.2Acultlineofthelayerofroles限制(Constraints):是在整个模型上的一系列约束条件,用来控制指派操作,指定职责分离(SD,SeparationofDuty)以及避免冲突等。职责分离就是在不同角色之间,根据功能的不同对权限进行分离,以防止用户拥有超过他们职位所需的权力。其动机是为了保证欺骗和大的错误不会发生,除非多个用户蓄意勾结,进行欺骗。在基于角色的访问控制系统中,职责分离的概念是由最小权限的原则所支持的。在基于角色的访问控制中,主要是静态职责分离原则和动态职责分离原则。这是一个非常抽象的概念,RBAC模型中并没有给出限制的类型和表述方式。任何独立于前面诸多术语的约束条件都是限制的一种形式。典型的限制包括指定角色互斥关系,角色基数限制等。根据职责分离的不同阶段,限制一般可分为静态职责分离和动态职责分离。角色互斥关系(MutuallyExclusiveRoles):限制的一种,用于指定两个角色具有不同的职责,不能让一个用户同时拥有。银行的出纳和会计便是角色互斥的简单例子。角一13一.’ 东北大学硕士学位论文第3章RBAC技术和模型的研究色互斥关系的目的是为了在RBAC模型中引入业务逻辑的规则,避免冲突的发生。根据互斥的程度和影响的范围不同,角色互斥有很多种形式。角色基数限制(RoleCardinalityConstraints):限制的一种,用于指定一个角色可被同时授权或激活的数目。比如总经理只能由一个用户担任,那么总经理角色的角色基数就为1。根据下面定义的静态和动态的职责分离,角色基数限制有静态角色基数限制和动态角色基数限制两种。紫静态职责分离(SSD,StaticSeparationofDuty):如果两个角色是静态职责分离的关。系,那么这两个角色将不能分配给同一个用户。在基于角色访问控制的系统中,可能出现由于某个用户同时拥有具有相互冲突关系的已经授权的多个角色,而导致出现矛盾冲突。阻止出现这种冲突的一个方法就是静态职责分离,通过这种方法来约束对用户进行的角色分配。具体方法就是,一个用户如果被授权给一个角色(而这个角色同另一角色有静态职责分离关系),那么这个用户就会被禁止成为另一个角色的成员。静态职责分离的定义:+SSD∈2攀×N。该关系满足V(rs,n)∈SSD,Vt_rs:tI≥n号Nassigned_users(r)=O。—宣动态职责分离(DSD,DynamicSeparationofDuty):如果两个角色是动态职责分离的关系,那么这两个角色可以同时分配给一个用户,但是用户的这两个角色在同一时刻不能都是处于激活状态。也就是说具有动态职责分离关系的角色可以被授权给同一个用户,只要用户在完成操作时不同时激活这两个角色,就不会出现冲突。动态职责分离定义:DSD_.2瑚UxN。该关系满足Vrs£2呲,nEN,(rs,n)EDsD辛n≥2n卜l2n,并且VsESessions,V璐∈2‰1“,Vrole_setE矿h‘,VnEN,(rs,n)∈DSD,role_setC_rs,role.,__setC_sessions_roles(s)=*lrole__setI
此文档下载收益归作者所有