- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种基于RBAC模型权限校验算法研究
一种基于RBAC模型权限校验算法的研究
[摘 要]基于角色的访问控制模型(RBAC)是目前应用最为广泛的访问控制模型,本文对该模型中用户权限校验的算法提出一种新的解决方案,通过该解决方案能有效的降低权限校验的时间。
[关键词]基于角色的访问控制 角色 权限 权限校验 散列查找
[中图分类号]TP309[文献标识码]A[文章编号]1007-9416(2009)12-0066-02
1 基于角色的访问控制概述
1.1 访问控制模式的种类
国际标准化组织ISO在网络安全标准( ISO7498-2)中定义的5个层次型安全服务中,访问控制是其中一个重要组成部分。访问控制技术由美国国防部资助的研究成果演变而来,其实质上是对资源和服务使用的限制,决定主体是否对客体有权限进行某种操作。通过访问控制技术,保证了只有经授权的用户,才允许访问特定的网络信息资源。因此,访问控制是计算机系统最重要和最基础的安全机制,也是对信息系统中各种资源进行保护的最重要措施之一。国内外代表性的访问控制模型包括自主访问控制(DAC)、强制访问控制(MAC)、基于角色的授权控制机制(RBAC)等。DAC是在确认主体身份以及它们所属组的基础上对访问进行限定的一种方法,它允许某个主体显式地指定其他主体对该主体所拥有的信息资源是否可以访问或可执行的访问类型,因此,DAC实际上将部分资源访问授权管理的任务留给了用户个人,对大型的应用系统而言,不利于实现统一的全局访问控制。MAC是一种系统强制主体服从访问控制的策略,它通过预先定义主体的可信任级别及客体(信息)的敏感程度(安全级别),将访问权限强加给访问主体,其缺点在于访问级别的划分不够细致,在系统连续工作能力、授权的可管理性以及同级别之间控制机制等方面考虑不足。
RBAC是一种新兴的访问控制技术和理念,是DAC和MAC的发展和改进,其核心思想是根据用户在系统中所起的作用规定其访问权限。RBAC由美国国家标准与技术研究院(NIST)Fer2raiolo等人在1992年提出,经过多年的发展,RBAC已经成为公认的解决大型信息系统的资源统一访问控制的有效手段。
1.2 基于角色的访问控制模型(RBAC)
1.2.1 基本思想
授权给用户的访问权限,通常由用户在一个组织担当的角色来确定。RBAC根据用户在组织内所处的角色进行访问授权与控制。也就是说,传统的访问控制直接将访问主体和客体相联系,而RBAC在中间加入角色,通过角色沟通主体和客体。一个用户经授权可拥有多个角色,一个角色可由多个用户构成;每个角色可执行多种操作,每个操作也可由不同的角色执行。
1.2.2 优点
基于角色的访问控制将极大地减少权限管理的负担和代价。不妨做一个简单计算:假设有P个权限及Q个要被授予权限的用户。如果把每个权限直接授予每个用户,那么需要进行P×Q次授权。如果把每个权限授予某个角色,再把该角色授予每个用户,那么只需进行P+Q次授权。若有100个权限及50个用户,那么将是5000∶150,当P、Q数量增加时差距将更加显著。另外,基于角色的权限管理使得系统的安全机制具有很大的灵活性。如果为机构的每一职务定义一个数据库角色,角色具有相应职务所拥有的操作权限,然后根据需要把这些角色授予具有该职责的各用户,即使职务相对应的权限发生了改变,也只需简单地修改角色的权限,而不必修改该职务的每一个用户的权限;或者某用户的职务改变了,也只需报销该用户原来的角色,重新授予新职务所对应的角色。
1.2.3 组成
RBAC包含五类实体:用户(Users)、角色(Roles)、约束(Constraints)、权限(Permission)、会话(Session)。其中,用户和权限类分出两种类别:使用者和安全管理员,前者是真实的人或外系统,可以建立会话、请求权限许可和关闭会话,而后者主要起系统管理的作用,负责指派用户到角色和指派权限到角色等项工作。会话表示的是用户和角色之间的关系,用户每次必须通过建立会话来激活角色,得到相应的资源访问权限(如图1所示)。
2 权限校验算法的解决方案
2.1 目前权限校验算法存在的问题
在基于角色的访问控制(RBAC)中,用户的权限是通过角色指派的,当系统较大权限较多时,指派给某个或某组用户的权限将非常多。当用户登录系统时,系统需要对用户所具有的权限进行验证,在某些系统中,用户权限的验证通过不断的遍历和递归进行,如果用户具备的权限少则校验的时间较短,但是当用户具有的权限较多时,进行用户权限校验的时间将比较长,校验的效率低,因此,笔者提出一种新的权限校验解决方案―基于散列查找算法的权限校验。
2.2 基于散列查找算法权限
文档评论(0)