版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
多级环境下基于角色和本体的访问控制
0语义技术在访问控制中的应用商业世界的任务具有多级安全特征。为了保护商业秘密,商业活动必须限制资源的访问,并根据员工的工作水平和其他条件保护不同类别的数据。多级环境中数据、人员都具有安全级别,在用户访问数据时依据这些等级进行不同的处理。访问控制技术是一种对资源访问进行限制的安全方法,它根据一定的安全策略限制用户对关键资源的访问。其中基于角色的访问控制RBAC(rolebasedaccesscontrol)是一种强制访问控制,一般应用于用户分级的环境。但是它与多级环境下传统的强制访问控制不同,并不是针对多级安全专门提出的,在商业多级环境中可能造成敏感信息的泄露。为了解决多级环境中的信息安全的问题,安全研究者提出了一些多级安全模型,其中最经典的是1973年由DavidElliottBell和LenLaPadula为美国国防部提出的BLP(Bell-LaPadula)模型。它是第一个可以用数学方法证明系统安全性的模型,严格依赖密级进行授权判决。在大型的商业机构中,很难严格按照BLP模型为用户划分安全等级,因此BLP的可用性受到了限制。语义技术是一种新兴的知识表示技术,允许信息的意义及其之间的关联能够在运行期间被获得和处理,使得软件理解商业系统中用户、资源的等级关系,使用用户、资源的信息进行推理成为可能。随着语义技术的兴起,国内外都有安全研究者提出采用语义技术进行访问控制的方法。但是这些方法并不是针对多级环境的特点提出的,不具有多级安全的特性。本文所解决的问题,就是利用语义技术的描述和推理能力,根据系统中用户隶属关系、资源拥有关系等已有信息,结合RBAC模型和BLP模型的安全特性,在不损失系统安全性的前提下,实现多级环境中用户权限的自动分配,并按照这种权限进行访问控制。1基于角色和部件的多段安全模型1.1商业环境安全的实现方法—商业多级环境的抽象商业多级环境最大的特点之一便是系统中的用户存在上下级隶属关系,这种隶属关系隐式地表达了用户安全级别的高低关系。因此,在商业系统中可以采用多级环境中已经存在的业务角色间的上下级关系作为访问控制的依据,实现安全级别的动态判定。具体方法是为用户指定角色,为文件等资源指定所有者。利用角色间的上下级关系作为安全级别判断的依据,使得角色在角色继承关系中的级别可以代表用户在多级系统中的安全级别;资源的所有者的安全级别代表资源在多级系统中的安全级别。在访问控制时,将角色继承关系作为判断安全级别关系的依据,对环境中的用户进行符合*-特性和简单安全特性的基于角色的授权。实际的商业环境十分复杂,不同环境中用户的角色等级具有动态性,同一等级的角色可能有不同的描述。为了对商业环境中的多级安全问题更有针对性,本文对商业多级环境进行了抽象,如图1所示。环境中的每个用户都分配了一个角色,角色间具有继承关系。需要为环境中的资源显式的指定其所有者和所有者对资源的可以进行的操作。为了保证系统的安全性,本文选取BLP模型中可能造成敏感信息泄露的读和写操作来研究。抽象后的多级环境具有以下特性:(1)每个资源属于且只属于一个所有者,不存在多个用户共同拥有一个资源的情况;(2)每个用户属于且只属于一个角色,不存在一个用户属于多个角色的情况;第一个特性避免了资源属于多个用户,资源的安全级别无法确定的情况;第二个特性避免了用户属于多个角色,用户的权限无法确定的情况,这也是对RBAC做出的静态职权分离的约束。1.2rbac中的角色与行为本体(ontology)是一种构建知识模型的技术,它提供对某领域知识的共同理解,确定该领域内共同认可的术语,明确地给出这些术语和术语之间相互关系的定义,可以用它形式化的描述RBAC模型。基于OWLDL(webontologylanguagewithdescriptionlogics)语言的强表达能力和可计算性,本文选择OWLDL作为本体描述语言,对基于角色的访问控制方法进行建模。RBAC模型的本体描述如图2所示。该模型中各类的定义如下:类定义1Subject:主体,访问控制请求的发起方,一般为系统中的用户;类定义2Object:客体,访问控制请求的被访问方,一般为系统中的资源;类定义3Role:角色,RBAC中系统会给每个用户分配角色,角色具有继承关系;类定义4Action:行为,表示访问控制请求中主体请求对客体进行的操作;类定义5Request:请求,一个请求会关联一个形如<Object,Action>的二元组,表示对客体Object进行操作Action的某次访问控制请求。其中角色既可以定义为本体中的类,也可以定义为本体中的值。我们选择了将角色定义为类的方式创建RBAC的模型。将角色定义为值,虽然比较简单精确,但是失去了类之间继承、互斥等复杂关系,因此不能充分利用本体的可计算性。在该本体模型中还通过属性定义了RBAC中各个概念之间的关系,定义如下:属性定义1subRoleOf(R1,R2):定义域为Subject,值域为Subject,含义是定义域的角色R1继承了低等级的角色R2的权限,该属性是一个传递性属性,即subRoleOf(R1,R2)成立且subRoleOf(R2,R3)成立,可以推出subRoleOf(R1,R3)成立;属性定义2hasRole(S,R):定义域为Subject,值域为Role,含义是给主体S分配了角色R;属性定义3hasObject(R’,O):定义域为Request,值域为Object,表示某次访问控制的客体是O;属性定义4hasAction(R’,A):定义域为Request,值域为Action,表示某次访问控制的主体对客体要进行的操作是A;属性定义5/6hasPermission(R,R’)/denyPermission(R,R’):定义域为Role,值域为Request,hasPermission表示了某次访问控制中允许角色R对Request中的客体O进行行为为A的操作,denyPermission表示了某次访问控制中禁止角色R对Request中的客体O进行行为为A的操作;属性定义7/8hasPrevilege(S,R’)/denyPrevilege(S,R’):定义域为S,值域为Request,hasPrevilege表示了某次访问控制中允许主体S对Request中的客体O进行行为为A的操作,denyPrevilege表示了某次访问控制中禁止主体S对Request中的客体O进行行为为A的操作;属性定义9hasOwner(O,S):定义域为Object,值域为Subject,含义为资源O的所有者为主体S;属性定义10hasHierarchy(O,R):定义域为Object,值域为Role,含义为资源O的所有者对应的角色为R,R的等级可以代表资源O的等级。1.3角色的分配安全为了能够利用本体的可计算性,实现角色继承的自动推理,达到对多级环境下的资源进行访问控制的目的,本文创建了适用于1.2小节中建立的本体模型的6条推理规则,如表1所示。规则a对文件安全级别的推理规则进行描述:如果给文件x的所有者y分配了角色z,则文件y就具有z对应的安全级别;在对角色分配权限时,分配权限的方法必须符合BLP模型的简单安全特性和*-安全特性,规则b的含义是高层次的角色对低层次角色的用户所有的文件没有可写的权限,规则c的含义是低层次的角色对高层次角色的用户所有的文件没有可读的权限;规则d描述了基于角色的访问控制中角色继承的推理规则:高层次的角色继承了低层次的角色具有的所有权限;角色会向主体传播权限,规则e的含义是如果禁止角色x对某个资源进行某种操作,则进行授权时禁止具有角色x的用户z对该资源进行这种操作;规则f含义是如果允许角色x对某个资源进行某种操作,则进行授权时允许具有角色x的用户z对该资源进行这种操作。虽然本体语言OWL能支持推理系统实现其计算性能,但是无法表达很多基于事实的推理关系。因此,本文选择SWRL(semanticwebrulelanguage)作为规则描述语言。1.4不同等级角色的文本书写权限对比使用1.2小节中的访问控制本体模型对1.1小节中描述的商业环境进行描述后,使用本体推理工具Racer按照1.3小节中提到的规则进行推理,得到语义冲突。冲突1Manager角色对Staff和Director角色的文件既允许写操作又禁止写操作;冲突2Director角色对Staff角色的文件既允许写操作又禁止写操作。产生语义冲突的原因是因为由于RBAC中低等级角色的所有权限都会向高等级的角色传播,因此高等级的角色会继承低等级角色用户对属于自己的文件具有的写权限;而BLP中高等级的角色对低等级的角色用户的文件不具有写权限。因此如果文件的所有者为拥有低等级角色的用户,当拥有高等级角色的用户请求对其进行写操作的时候,推理引擎会得到语义冲突。2基于角色和设备的多段访问系统2.1rbac本体规则描述本文使用protégé软件进行本体的开发,使用Jena语义工具包进行编程,实现了基于角色和本体的访问控制系统,系统设计如图3所示。(1)语义描述层包括实体数据层和RBAC本体规则描述文件两部分。实体数据层包含了记录环境中所有实体的基本信息的数据库,这些数据库记录了资源和用户、用户和角色等这些访问控制实体间的映射关系和角色间的继承关系等,是系统进行访问控制的依据;RBAC本体规则描述文件包含了由protégé生成的用OWLDL描述的RBAC本体模型和用SWRL语言描述的RBAC本体模型的推理规则;(2)本体推理层中rdf-数据记录转换模块完成数据记录RBAC本体中类的实例的转化,这些实例用rdf来描述,形成描述多级环境中所有实体的一个完整的本体文件;规则转化模块完成SWRL语言描述的规则到Jena支持的规则之间的格式转换。这两个模块的输出作为访问控制矩阵生成模块的输入,使用Jena的本体推理引擎对多级环境的本体文件进行推理,得到访问控制矩阵;(3)访问控制调用层包含策略判决接口,策略判决接口输入为形如<Subject,Resource,Action>的三元组,查询访问控制矩阵后,输出为授权断言,断言中包含了本次判决的结果,策略判决的流程如图4所示。2.2冲突消解和访问控制矩阵生成系统中的每个角色对应一个访问控制矩阵,矩阵中的两个维度分别表示访问控制的客体和行为,矩阵中每个<Object,Action>坐标位置都有值表示角色对资源的操作是允许(permit)还是拒绝(deny)。1.4小节中提到BLP模型在和RBAC模型结合的时候会产生语义冲突,为了保证敏感信息的安全性,规定denyPermission的优先级高于hasPermission,并根据这个规则设计访问控制矩阵的生成流程如图5所示。使用图中描述的访问控制矩阵的生成流程,可以保证denyPermission的推理结果会覆盖hasPermission的推理结果,最终denyPermission会起效,消除语义冲突。2.3u3000访问控制矩阵推导实体信息数据库中存储的用户和资源的详细信息清单如表2所示,用户对资源具有的初始操作权限如表3所示。用户Manager_Sun调用策略判决接口,输入判决请求<Manager_Sun,Object_Staff,Write>。系统运行过程中会形成中间文件,记录访问控制矩阵推导的过程。推导结束后访问控制矩阵形式如图6所示,比较图6与表2的权限,可以发现高等级的角色在不违反BLP的简单安全特性和*-安全特性的前提下,自动继承了低等级角色的权限,系统安全地实现了权限的自动分配。系统查询生成的访问控制矩阵后,会返回判决断言,断言中包括了本次判决的结果:Deny。这个结果符合BLP的*-特性,保证可敏感信息的安全性,是一个合法的判决。综上所述,本系统初步实现了了访问控制权限的自动分配,且分配的结果符合BLP模型的安全特性,是符合多级环境下安全要求的访问控制系统。3基于p模型的改造本文提出了多级环境下基于角色和本体的访问控制的方法,通过对商业多级环境进行抽象,提出了一种多级环境下的新的访问控制方法。该方法结合了RBAC模
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 虚拟现实文物保护-第1篇-洞察分析
- 体育赛事数据分析与应用-洞察分析
- 碳中和策略在园林绿化中的应用-洞察分析
- 2024-2025学年天津市南开区高一上学期11月期中物理试题(一)(解析版)
- 2024-2025学年陕西省榆林市榆林联考高二上学期11月期中物理试题(解析版)
- 休养所乡村公共服务创新-洞察分析
- 行业集中度与政策影响-洞察分析
- 2024年岗位安全教育培训试题【夺分金卷】
- 云端安全架构创新-洞察分析
- 2024年岗位安全教育培训试题及参考答案【预热题】
- 苏教版(2024新版)七年级上册生物期末模拟试卷 3套(含答案)
- 《项目管理》完整课件
- 2024-2030年中国苯胺行业现状动态与需求前景展望报告
- 英雄之旅思维模型
- 解一元二次方程(公式法)(教学设计)-九年级数学上册同步备课系列
- 冬季传染病预防-(课件)-小学主题班会课件
- 2024年秋新沪教牛津版英语三年级上册 Unit 6 第1课时 教学课件
- 江苏扬州中学教育集团2023-2024学年中考三模数学试题含解析
- 2025年统编版高考历史一轮复习:北洋军阀统治时期的政治、经济与文化 讲义
- 电影放映设备日常维护保养规程
- TSHZSAQS 00255-2024 食葵病虫害防治技术规范
评论
0/150
提交评论