一种基于RBAC模型的动态访问控制改进方法

本发明涉及一种基于RBAC模型的动态访问控制改进方法,属于访问控制领域。对原有RBAC模型进行了权限的改进和约束条件的改进,具体为将权限分为静态权限和动态权限,其中静态权限是非工作流的权限,动态权限是工作流中的权限;将约束条件分为静态约束和动态约束,其中静态约束包括最小权限约束和职责分离约束,动态约束使动态权限按照工作流进行操作。采用本发明的方法改进后的RBAC模型具有以下优势:为传统的RBAC模型中增加了动态特性;跟纯动态模型相比较具有更高的效率;保证需要按顺序执行的权限能够按顺序执行,使得系统更加安全;克服了传统的RBAC模型的不能适用于工作流的系统的不足,使得系统更加接近于现实世界。

技术领域

[0001] 本发明涉及一种基于RBAC模型的动态访问控制改进方法,属于访问控制领域。

技术背景

[0002] 随着计算机网络的不断发展及大量分布式技术的使用,企业越来越注重信息化管理,数据的共享,使得数据的安全性受到了极大的挑战,在未经授权许可的情况下对数据进行访问可能会带来很大的隐患。这使得访问控制成为现在普遍关注的热点。

[0003] —般访问控制包括四个部分,访问者(Initiator),访问控制执行功能单元 (AEF),访问控制决策功能单元(ADF)和目标单元(Target),如图1所示。其中访问者也称为发起端主体单元,指电脑中的系统资源和应用资源的使用者,或可执行程序等系统实体的主动部分。访问控制执行功能单元负责建立访问者与目标之间的通讯桥梁,其操作必须按照ADF的请求决策结果来实施。此外,在一个完善的权限管理系统中,AEF通常还包括对访问者的身份认证,传输信息的封包以及机密性检查等其他功能。访问控制决策功能单元作为访问控制系统的核心部分,它依据AEF传送过来的操作要求以及相关的访问控制决策信息,做出正确的访问控制决策交由AEF做进一步的操作。目标单元主要指外设,网络资源,数据库资源,Webserver资源,系统文件等属于系统实体的被动部分。

[0004] 早期的访问控制主要有两种:自主访问控制(DAC)和强制访问控制(MAC)。

[0005] DAC是一种基于主体身份或主体所在组来控制其对客体访问的方法。DAC的核心思想是客体的拥有者可以自主的控制其他主体对其客体的访问,并且可以自主的决定是否将访问权限传递给其它主体或组。虽然DAC的权限传播思想具有很好的灵活性和可伸缩性,但也带来了安全隐患,使其难以满足安全性要求高的系统。

[0006] MAC是通过对比主体的安全级别和客体的安全级别,最终确定主体能否存取客体。安全级别是由安全管理员强制分配的,主体和客体都不能改变安全级别属性。主体的安全分类级别称为许可证级别(Clearance Level),客体的安全分类级别称为密级(Classification Level)。当某一主体以某种安全级别进入系统时,系统要求他对任何客体的存取必须遵循如下规则:(I)仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体。(2)仅当主体的许可证级别等于客体的密级时,该主体才能写相应的客体。MAC的这个属性使它适用于安全要求很高的系统中,但也使它缺少了灵活性。

[0007]目前常见的访问控制模型有基于角色的访问控制模型(RBAC)和基于任务的访问控制(TBAC)。其中RBAC是通过引入角色的概念来实现用户和权限的逻辑分离,用户通过获得角色得到权限来对客体进行操作,从而实现了权限的管理。RBAC被认为是最能代替DAC和MAC的访问控制。但RBAC是一种静态的授权机制,它不能被运用到工作流系统中;TBAC是以任务和活动为中心,是一种上下文相关的访问控制模型,适合处理工作流中有时效性和流动性的数据信息,但这种主动的访问控制模型不能处理非工作流的任务,如业务查询等,并且TBAC不支持角色的层次关系,不适合企业的组织结构层次。

[0008] 基于以上的分析,针对实际的情况,把RBAC中的权限分为静态权限和动态权限,把约束条件分为静态约束和动态约束。静态权限主要是非工作流的权限,比如查询,动态权限主要是工作流中的权限。静态约束是传统RBAC中的约束,如互斥的角色,互斥权限等,动态约束是使动态权限按工作流的要求按顺序,按规则的激活。这样在传统的RBAC模型中加入了动态性,使之既适应非工作流任务的情況,也适应工作流任务的情況,也对应了现实中角色组织机构,提高了 RBAC的适用性。

发明内容

[0009] 本发明是为了克服现有技术的缺陷,提出了一种基于RBAC模型的动态访问控制改进方法。

[0010] 本发明是通过以下技术方案实现的。

[0011] 本发明的一种基于RBAC模型的动态访问控制改进方法,对原有RBAC模型进行两方面的改进:权限的改进和约束条件的改进,具体包括:

[0012] (I)将权限分为静态权限和动态权限,静态权限是非工作流的权限,动态权限是工作流中的权限,这样在传统的RBAC模型中加入了动态性,使之既适应非工作流任务的情况,也适应工作流任务的情況。

[0013] (2)将约束条件分为静态约束和动态约束,其中静态约束包括最小权限约束和职责分离约束,职责分离又包括静态职责分离和动态职责分离,静态职责分离指的是在给用户分配角色的时候不同时分配互斥的角色,动态职责分离是指给同一个用户分配的多个角色,在一次会话时不能同时充当有安全问题的角色组合;动态约束使动态权限按照工作流进行操作,在工作流中包括很多的工作节点,工作节点之间按顺序进行,只有前面的节点都完成了后面的工作节点才能进行,每个工作节点需要ー个或多个动态权限,这样就使得本发明适应于带工作流的系统。

[0014] 改进后的模型结构包括用户、角色、权限、会话、静态约束和动态约束。其中用户就是使用系统的人,一个用户被分配了一个或者多个角色,角色之间有相应的层次关系,ー个角色拥有ー个或多个权限,权限就是对客体的操作。当用户登录系统时就会激起ー个会话,这时系统就会在静态约束模块和动态约束模块的约束下顺利的运行。本模型使用公钥基础设施(Public Key Infrastructure,简称PKI)进行身份认证,PKI是ー种遵循既定标准的密钥管理平台,它能够为所有网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理,也即PKI就是利用公钥理论和技术建立的提供安全服务的基础设施。使用授权管理基础设施(Privilege Management Infrastructure,简称PMI)进行授权管理,PMI是授权管理基础设施,它依赖于公共密钥基础设施PKI的支持,任务g在提供访问控制和特权管理,提供用户身份到应用授权的映射功能。与PKI信任相比,两者的区别主要在于PKI证明用户的身份,并将用户的身份信息保存在用户的公钥证书中;而PMI则证明这个用户所具有的权限和属性,并将用户的属性信息保存在属性证书中,属性证书又称管理证书。

[0015] 本发明的一种基于RBAC模型的动态访问控制改进方法,采用该方法改进后的RBAC模型的工作过程为:访问发起者向AEF的PKI接ロ提交带签名的访问请求,PKI接ロ通过认证服务模块对访问发起者进行身份认证,认证成功后AEF向ADF的PMI接ロ发送决策请求,PMI接ロ向角色映射模块发送角色映射请求得到对应角色,向本地ADF决策请求。然后本地ADF通过策略管理模块从策略与属性证书数据库得到静态约束条件和动态约束条件,角色映射模块通过属性证书管理模块提取属性证书,访问发起者对应的角色通过属性证书得到自己的所有权限,包括静态权限和动态权限。这样角色在静态约束和动态约束下判断是否可以执行想要执行的权限,如果允许就能执行。当一个静态权限执行完之后或者一个工作流中的所有权限都执行完,就将执行的信息记录在记录管理子系统。

有益效果

[0017] 本发明的一种基于RBAC模型的动态访问控制改进方法,采用该方法改进后的RBAC模型具有以下优
势:

[0018] (I)在经典的约束条件之外加上了动态约束,将权限分为静态权限和动态权限,为传统的RBAC模型中增加了动态特性;

[0019] (2)保留了原有的不需要进行动态约束的权限,即静态权限,保留了传统的RBAC模型的优点,跟纯动态模型相比较具有更高的效率;

[0020] (3)结合经典的RBAC模型,加入了动态约束和动态权限,使得需要按顺序执行的权限能够按顺序执行,使得系统更加安全;

[0021] (4)改进的RBAC加入了动态部分,动静结合,克服了传统的RBAC模型的不能适用于工作流的系统的不足,对权限进行了更好的管理,使得系统更加接近于现实世界。

附图说明

[0022] 图I为一般访问控制模型的结构示意图;

[0023] 图2为本发明的基于角色的动态访问控制模型结构示意图;

[0024] 图3为本发明实施例的工作过程示意图。

具体实施方式

[0025] 下面结合附图和实施例对本发明做进一步说明。

实施例

[0027] 一种基于RBAC模型的动态访问控制改进方法,对原有RBAC模型进行两方面的改进:权限的改进和约束条件的改进,具体包括:

[0028] (I)将权限分为静态权限和动态权限,静态权限是非工作流的权限,动态权限是工作流中的权限,这样在传统的RBAC模型中加入了动态性,使之既适应非工作流任务的情况,也适应工作流任务的情况。

[0029] (2)将约束条件分为静态约束和动态约束,其中静态约束包括最小权限约束和职责分离约束,职责分离又包括静态职责分离和动态职责分离,静态职责分离指的是在给用户分配角色的时候不同时分配互斥的角色,动态职责分离是指给同一个用户分配的多个角色,在一次会话时不能同时充当有安全问题的角色组合;动态约束使动态权限按照工作流进行操作,在工作流中包括很多的工作节点,工作节点之间按顺序进行,只有前面的节点都完成了后面的工作节点才能进行,每个工作节点需要一个或多个动态权限,这样就使得本发明适应于带工作流的系统。

[0030] 改进后的模型结构包括用户、角色、权限、会话、静态约束和动态约束。其中用户就是使用系统的人,一个用户被分配了一个或者多个角色,角色之间有相应的层次关系,一个角色拥有一个或多个权限,权限就是对客体的操作。当用户登录系统时就会激起一个会话,这时系统就会在静态约束模块和动态约束模块的约束下顺利的运行。本模型使用PKI进行身份认证,PKI是ー种遵循既定标准的密钥管理平台,它能够为所有网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理,也即PKI就是利用公钥理论和技术建立的提供安全服务的基础设施。使用PMI进行授权管理,PMI是授权管理基础设施,它依赖于公共密钥基础设施PKI的支持,任务g在提供访问控制和特权管理,提供用户身份到应用授权的映射功能。与PKI信任相比,两者的区别主要在于PKI证明用户的身份,并将用户的身份信息保存在用户的公钥证书中;而?11则证明这个用户所具有的权限和属性,并将用户的属性信息保存在属性证书中,属性证书又称管理证书。

[0031] 本发明的一种基于RBAC模型的动态访问控制改进方法,采用该方法改进后的RBAC模型的工作过程为:访问发起者向AEF的PKI接ロ提交带签名的访问请求,PKI接ロ通过认证服务模块对访问发起者进行身份认证,认证成功后AEF向ADF的PMI接ロ发送决策请求,PMI接ロ向角色映射模块发送角色映射请求得到对应角色,向本地ADF决策请求。然后本地ADF通过策略管理模块从策略与属性证书数据库得到静态约束条件和动态约束条件,角色映射模块通过属性证书管理模块提取属性证书,访问发起者对应的角色通过属性
证书得到自己的所有权限,包括静态权限和动态权限。这样角色在静态约束和动态约束下判断是否可以执行想要执行的权限,如果允许就能执行。当一个静态权限执行完之后或者ー个工作流中的所有权限都执行完,就将执行的信息记录在记录管理子系统。

[0032] 在一个简单的医院业务系统中,有基础的查询功能,可以查询本医院的各种规章制度;还有基础的病人就医的功能,病人就医通常是首先到挂号处进行挂号,确定就诊科室、医师,然后,病人到相关科室进行就诊,门诊医生对病人病情确诊,填写病历,开具药品处方,病人到收费处进行药品划价,缴纳药用费后,可到药房领取药品。

[0033] 在上述这样ー个系统里,角色包括挂号处工作人员、医生、划价处工作人员和药房工作人员。其中挂号处工作人员的权限是给病人挂号,确定诊室和医生;医生的权限就是开处方药;划价处工作人员的权限就是对药品处方进行划价;药房工作人员的权限是按药品处方给病人拿药;每个角色都有的权限就是都可以查询医院的规章制度。这样,查询医院规章制度就属于静态权限,每个角色随时都可以进行查询;剰余的权限就是动态权限,必须按门诊就医的流程按顺序执行。

[0034] 应用本实施例方法,将改进后的模型应用于上述医院业务系统,如图3所示,例如一个医生进入该系统,医生为访问发起者,他先向AEF发送认证请求进行PKI身份认证,认证通过后向ADF发送角色请求得到医生角色,ADF从策略与属性证书数据库得到静态约束条件、动态约束条件和角色的属性证书,通过属性证书他就有了静态权限,可以查看医院的规章制度。拥有开处方药的动态权限,当他要执行此权限的时候,通过动态约束模块查询是不是有病人挂号并指定他的诊室了,也就是挂号处工作人员的权限是否已执行并且此エ作流里是否有他的诊室,如果是他就可以执行他的权限,如果不是就不能执行;其它角色登陆时的访问控制跟医生这个角色的基本相同;在最后一名角色即药房工作人员执行完权限后,此工作流即完成,将此工作流的所有执行的权限的相关信息记录在记录管理子系统中。

SRC=https://www.google.com.hk/patents/CN102073817B

时间: 2024-10-05 11:38:34

一种基于RBAC模型的动态访问控制改进方法的相关文章

几种设置UITableView的cell动态高度的方法

1.UITableView加载的顺序是先得到表的行的高度,也就是先调用heightForRowAtIndexPath方法,然后再调用cellForRowAtIndexPath,所以我们有两个办法实现自定义cell高度(解决不同section的不同行高问题). 一:改变它的加载顺序,或者说白了就是计算好cell高度后,再次让它加载heightForRowAtIndexPath方法: 二:直接在heightForRowAtIndexPath计算,做判断,直接返回对应的高度. 以下是第一种方法的实例:

[信安Presentation]一种基于GPU并行计算的MD5密码解密方法

[Code] Section 0:introduction of MD5, and some of its application  [Ref] STEP1:从plaintext末尾开始填充1000000.....,直到(数据长度)%512=448[单位:bit STEP2:继续填充64bit,这64bit里存储的是填充前plaintext的长度 STEP3:将填充好的信息拆分成整数个512bit的blocks,一个一个block处理 STEP4:FOR EACH 512b_BLOCKS: Ro

权限系统与RBAC模型概述

为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/SJQ. http://www.cnblogs.com/shijiaqi1066/p/3793894.html 0. 前言 一年前,我负责的一个项目中需要权限管理.当时凭着自己的逻辑设计出了一套权限管理模型,基本原理与RBAC非常相似,只是过于简陋.当时google了一些权限管理的资料,从中了解到早就有了RBAC这个东西.可惜一直没狠下心来学习. 更详细的RBAC模型非常复杂.本文只做了一些基础的理论性概述.

权限系统与RBAC模型概述[绝对经典]

0. 前言 一年前,我负责的一个项目中需要权限管理.当时凭着自己的逻辑设计出了一套权限管理模型,基本原理与RBAC非常相似,只是过于简陋.当时google了一些权限管理的资料,从中了解到早就有了RBAC这个东西.可惜一直没狠下心来学习. 更详细的RBAC模型非常复杂.本文只做了一些基础的理论性概述.本文资料完全来自互联网. 1. 权限系统与RBAC模型概述 RBAC(Role-Based Access Control )基于角色的访问控制. 在20世纪90年代期间,大量的专家学者和专门研究单位对

基于页面染色技术的内存数据库访问优化方法

本发明公开了一种基于页面染色技术的内存数据库访问优化方法.该方法首先将弱局部性数据集的所有数据页面的访问顺序按页面颜色进行排序,并将所有数据页面按页面颜色进行分组,然后按页面颜色分组的顺序扫描弱局部性数据集的所有数据页面.进一步地,预设若干具有相同页面颜色的内存页面作为页面颜色队列,该页面颜色队列用作内存页面被加载入CPU缓存之前的内存缓存:弱局部性数据集的数据页面首先通过异步方式进入页面颜色队列,然后再被加载到CPU缓存中完成数据处理.本发明能够解决内存数据库应用中无法依赖页面颜色为进程.线程

基于RBAC权限管理模型学习

在RBAC中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限.这就极大地简化了权限的管理. 在一个组织中,角色是为了完成各种工作而创造,用户则依据它的责任和资格来被指派相应的角色,用户可以很容易地从一个角色被指派到另一个角色.角色可依新的需求和系统的合并而赋予新的权限,而权限也可根据需要而从某角色中回收. 角色与角色的关系可以建立起来以囊括更广泛的客观情况. BAC支持三个著名的安全原则:最小权限原则,责任分离原则和数据抽象原则. (1)最小权限原则之所以被RBAC所支持,是因

LSF-SCNN:一种基于 CNN 的短文本表达模型及相似度计算的全新优化模型

欢迎大家前往腾讯云社区,获取更多腾讯海量技术实践干货哦~ 本篇文章是我在读期间,对自然语言处理中的文本相似度问题研究取得的一点小成果.如果你对自然语言处理 (natural language processing, NLP) 和卷积神经网络(convolutional neural network, CNN)有一定的了解,可以直接看摘要和LSF-SCNN创新与技术实现部分.如果能启发灵感,应用于更多的现实场景中带来效果提升,那才是这篇文章闪光的时刻.如果你没有接触过NLP和CNN,也不在担心,可

大前端学习笔记整理【一】CSS盒模型与基于盒模型的6种元素居中方案

概览 CSS盒模型,规定了元素框来处理元素的 内容.内边距.边框和外边距的方式 元素部分是指内容部分,也是最实际的内容,包围内容的称之为内边距,内边距外围是边框,边框外围就是外边距:且外边距是透明的,所以并不会阻挡其后的元素 * { margin: 0; padding: 0; } 这是在CSS中最常见的初始化CSS的代码,用于覆盖浏览器的默认样式 浏览器兼容性 大多数浏览器都会按照上面的图示来呈现内容.然而 IE 5 和 6 的呈现却是不正确的.根据 W3C 的规范,元素内容占据的空间是由 w

一种基于脑电图情感识别的新型深度学习模型

目录 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区(微信号:Brain_Computer).QQ交流群:903290195 机器学习的最新进展使得检测和识别人类情绪的技术也得到了快速的发展.其中一部分机器学习技术中是通过分析脑电图(EEG)信号来工作的,这些信号本质上是对从一个人的头皮上收集的脑电活动的记录. 过去十多年来,大多数基于脑电图的情绪分类方法都采用了传统的机器学习方法,例如支持向量机(SVM)模型,因为这些方法需要的训练样本较少.事实上之所以使用需要训练样本量少的方法是因