CN103166944B - 一种基于角色映射的跨安全域数据访问控制方法 - Google Patents
一种基于角色映射的跨安全域数据访问控制方法 Download PDFInfo
- Publication number
- CN103166944B CN103166944B CN201110429941.3A CN201110429941A CN103166944B CN 103166944 B CN103166944 B CN 103166944B CN 201110429941 A CN201110429941 A CN 201110429941A CN 103166944 B CN103166944 B CN 103166944B
- Authority
- CN
- China
- Prior art keywords
- role
- mapping
- path
- request message
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种基于角色映射的跨安全域数据访问控制方法,属于计算机信息处理技术领域。所述方法包括以下步骤:接收并监听角色映射的请求消息,解析角色映射路径;判断与当前域的角色建立映射是否安全,同时发现并解决角色衰退继承;转发基于领域映射表和历史路径表的请求消息,发现目标域并与之建立安全的角色映射路径。本发明采用了跨域角色映射安全性评估、监听解析角色映射请求、判断选取安全路径、以及基于邻域映射表和历史路径表的消息转发,有效避免了跨域角色映射过程中可能引发的典型违反安全约束问题,适应规模较大且安全域动态变化的环境。
Description
技术领域
本发明属于计算机信息处理技术领域,具体涉及一种基于角色映射的跨安全域数据访问控制方法。
背景技术
目前,针对跨越安全域的数据访问控制,中国和国外开展的研究尚不多,主要的工作集中在基于角色的访问控制RBAC(Role-BasedAccessControl)模型扩展——基于角色映射的跨域数据访问控制方面,而研究的重点则是如何解决跨域角色映射过程中引发的角色冲突等违反安全约束问题。
基于角色的域间访问控制模型IRBAC(InteroperableRole-BasedAccessControl)是的跨域数据访问控制概念雏形,该模型通过角色的转换关系建立角色映射,实现两个域间的互操作。此外,基于可扩展性标记语言XML(ExtensibleMarkupLanguage)的RBAC描述语言XRBAC能够对跨域数据访问控制策略进行描述,并在多个域之间建立角色映射关系,实现对跨域数据访问控制的支持。
IRBAC和XRBAC都引入了角色映射机制。角色映射为跨域数据访问控制提供了有效的实现机制,但同时也可能引发一系列违反安全约束的问题,例如循环继承、责任分离等。尤其是随着安全域数量的不断增多和跨域数据访问需求的日益增强,由跨域角色映射引发的违反安全约束问题日益突出,成为基于角色映射的跨域数据访问控制必须面对和解决的问题。针对这一问题,目前的研究工作主要围绕如何解决循环继承和责任分离两类典型的违反安全约束问题展开。
一类方法是基于人工发现、人工干预并消除循环继承与责任分离角色冲突的方法,其主要思路是通过人工的手段发现或验证存在的角色冲突,并通过人工干预消除引发冲突的角色映射关系,从而达到解决问题的目的。人工方法的缺点是通常工作量很大而且很难达得到预期的效果。
另一类方法是自动化解决角色冲突问题的方法。通过整体冲突验证并去除部分角色映射关系来解决循环继承和责任分离冲突的算法,通过建模将消除角色冲突问题转换成整数规划问题,计算安全冲突。在此基础上,通过适当删除部分引发冲突的角色映射关系最终解决循环继承和责任分离冲突问题。此外,还有方法通过构造最小化角色系统(即角色映射关系涉及的角色集合),减少了参与计算的角色数量,并通过调用Warshall算法计算角色映射关系传递闭包的方法判断全局范围内是否存在角色映射冲突,在此基础上通过删除角色映射关系达到最终解决安全冲突的目的。上述自动化方法虽然较人工方法取得了显著的进展,但仍存在以下不足:
(1)不适应规模较大且安全域动态变化的环境。由于方法需要计算和验证所有安全域角色映射关系可能存在的冲突,因此计算量十分庞大。当有安全域进入或退出时,甚至一个角色映射关系发生变化时,都需要重新进行计算安全冲突并对全局安全策略进行更新。因此,在规模较大且安全域动态变化的环境中,该方法将陷入随时都在计算安全冲突的困境,无法正常发挥作用。
(2)影响数据共享程度。为了消除违反安全约束问题,目前的自动化方法将去除一些跨域角色映射关系,这将导致部分安全域无法按照以往的共享模式进行信息交互,从而影响了资源共享程度。
综上所述,目前针对跨域角色映射所引发违反安全约束问题的主要解决方法是通过检测全局安全性冲突并适当删除部分角色映射关系来保证全局范围角色映射的整体安全性,这种方法的缺点是无法适应规模较大且安全域动态变化的环境,与此同时会影响数据的共享程度。
发明内容
为了克服上述现有技术的缺陷,本发明提供一种基于角色映射的跨安全域数据访问控制方法,通过设计跨域角色映射安全性评估准则以及基于邻域映射表和历史路径表的消息转发,有效避免了跨域角色映射过程中可能引发的典型违反安全约束问题,在不破坏安全域间已有角色映射关系的前提下实现了安全的跨越动态安全域的数据访问。
为了实现上述发明目的,本发明采取如下技术方案:
一种基于角色映射的跨安全域数据访问控制方法,所述方法包括以下步骤:
(1)接收并监听角色映射的请求消息,解析角色映射路径;
(2)判断与当前域的角色建立映射是否安全,同时发现并解决角色衰退继承;
(3)转发基于领域映射表和历史路径表的请求消息,发现目标域并与之建立安全的角色映射路径。
所述步骤(1)包括以下步骤:
(1-1)监听源域用户的请求消息,并判断消息类型;
(1-2)监听到数据访问请求后,由包括变量request,TargetRole[i]和Operate的路径解析函数Extract解析所述请求消息中的映射角色集合TargetRole[i]和请求的数据操作Operate,再山包括变量TargetRole[i]和Operate的比较授权函数Compare根据最小权限原则、最小泄露原则将满足operate的角色赋予用户,并将数据返回给用户;
(1-3)监听到建立角色映射请求,由包括变量request,ReqID,DomainList[i],Path和T_limit的路径解析函数Extract解析请求消息中的请求序列号、途经的域名列表,已成功建立的角色映射路径(r1→r2→…→ri)信息和请求消息的有效期并将结果分别放在变量ReqID、DomainList[i]、Path和T_limit中;
(1-4)所述变量ReqID是请求的唯一标识,所述Path则保存了到目前为止,该请求消息所经过的各安全域内的角色,使用DomainList[i]判定该请求消息是否来自非法安全域,使用T_limit判断所述请求消息是否过时失效。
所述步骤(2)包括以下步骤:
(2-1)若所述请求消息来自安全域且未失效,包括变量Pathi,CurrentDomain,ri+1,DomainList[i],Update_rolePath和T_limit的安全评估函数Est_sel将基于已有角色序列,根据评估策略和规则,判断请求消息与当前域建立映射关系是否安全;
(2-2)若请求消息与当前域建立映射关系安全,则建立映射,并将包括本域被映射的角色ri+1和域名的信息更新到请求消息中,否则丢弃请求消息并退出。
对于一条已有跨域映射路径Pathi=r1→r2→…→ri与ri+1建立映射,Dk为rk所在域,k=1,2,…,i,i+1,判断Pathi与ri+1建立角色的所述评估策略和规则如下:
(a)任意邻域角色映射必须经过授权;
(b)禁止非法域渗透,Dk不能是ri+1所阻止的非法域,k=1,2,…,i-1,i;
(c)禁止角色渗透,Di+1中基于角色的访问控制RBAC角色层次数中ri+1的子角色不属于受保护的私有角色;
(d)对于Pathi中任意角色且则与ri+1之间不能存在循环继承、责任分离冲突。
所述步骤(3)包括以下步骤:
(3-1)如果当前域不是目标域,根据邻域角色映射表RoleNeighbor中当前角色及其子角色的映射信息,继续向安全空间转发该请求,发现目标域;
(3-2)如果当前域是目标域,则将映射角色信息反馈给源域,源域与目标域建立角色会话。
与现有技术相比,本发明的有益效果在于:采用了跨域角色映射安全性评估、监听解析角色映射请求、判断选取安全路径、以及基于邻域映射表和历史路径表的消息转发,有效避免了跨域角色映射过程中可能引发的典型违反安全约束问题,适应规模较大且安全域动态变化的环境。
附图说明
图1是基于角色映射的跨安全域数据访问控制方法流程图;
图2是安全域角色层次配置图;
图3是跨域访问控制判断过程。
具体实施方式
下面结合附图对本发明作进一步说明。
如图1,一种基于角色映射的跨安全域数据访问控制方法,所述方法包括以下步骤:
(1)接收并监听角色映射的请求消息,解析角色映射路径;
(2)判断与当前域的角色建立映射是否安全,同时发现并解决角色衰退继承;
(3)转发基于领域映射表和历史路径表的请求消息,发现目标域并与之建立安全的角色映射路径。
所述步骤(1)包括以下步骤:
(1-1)监听源域用户的请求消息,并判断消息类型;
(1-2)监听到数据访问请求后,由包括变量request,TargetRole[i]和Operate的路径解析函数Extract解析所述请求消息中的映射角色集合TargetRole[i]和请求的数据操作Operate,再山包括变量TargetRole[i]和Operate的比较授权函数Compare根据最小权限原则、最小泄露原则将满足operate的角色赋予用户,并将数据返回给用户;
(1-3)监听到建立角色映射请求,由包括变量request,ReqID,DomainList[i],Path和T_limit的路径解析函数Extract解析请求消息中的请求序列号、途经的域名列表,已成功建立的角色映射路径(r1→r2→…→ri)信息和请求消息的有效期并将结果分别放在变量ReqID、DomainList[i]、Path和T_limit中;
(1-4)所述变量ReqID是请求的唯一标识,所述Path则保存了到目前为止,该请求消息所经过的各安全域内的角色,使用DomainList[i]判定该请求消息是否来自非法安全域,使用T_limit判断所述请求消息是否过时失效。
所述步骤(2)包括以下步骤:
(2-1)若所述请求消息来自安全域且未失效,包括变量Pathi,CurrentDomain,ri+1,DomainList[i],Update_rolePath和T_limit的安全评估函数Est_sel将基于已有角色序列,根据评估策略和规则,判断请求消息与当前域建立映射关系是否安全;
(2-2)若请求消息与当前域建立映射关系安全,则建立映射,并将包括本域被映射的角色ri+1和域名的信息更新到请求消息中,否则丢弃请求消息并退出。
对于一条已有跨域映射路径Pathi=r1→r2→…→ri与ri+1建立映射,Dk为rk所在域,k=1,2,…,i,i+1,判断Pathi与ri+1建立角色的所述评估策略和规则如下:
(a)任意邻域角色映射必须经过授权;
(b)禁止非法域渗透,Dk不能是ri+1所阻止的非法域,k=1,2,…,i-1,i;
(c)禁止角色渗透,Di+1中基于角色的访问控制RBAC角色层次数中ri+1的子角色不属于受保护的私有角色;
(d)对于Pathi中任意角色且则与ri+1之间不能存在循环继承、责任分离冲突(即不属于S(SD))。
循环继承是指在建立跨域角色映射的过程中产生了“环”,这种“环”使角色层次中的低等角色通过跨域映射被赋予更高级的角色。责任分离SoD(SeparationofDuties)主要指冲突的两个或多个用户访问同一个角色,或者一个用户被赋予了两个或多个冲突的角色。
跨域角色映射过程中会出现如下情况,即父角色跨越多个安全域后,映射回其子角色,再次通过邻域映射表中子角色映射信息转发请求消息,造成消息重复转发,称之为“衰退继承”。“衰退继承”还将导致请求消息跨越多余的安全域,而跨域数越多,映射路径的稳定性和建立映射的效率就越低。因此,算法在角色映射路径安全性评估准则中,将判断是否存在关系并丢弃产生衰退继承的消息。
所述步骤(3)包括以下步骤:
(3-1)如果当前域不是目标域,根据邻域角色映射表RoleNeighbor中当前角色及其子角色的映射信息,继续向安全空间转发该请求,发现目标域;
(3-2)如果当前域是目标域,则将映射角色信息反馈给源域,源域与目标域建立角色会话。
在安全空间中共部署A、B、C、D、E、X五个安全域;每个安全域都拥有各自的角色层次,如图2所示。例如在A域中,角色rA2继承了角色rA1。
五个安全域都已建立了邻域映射表,如表1所示,例如A域的角色映射表中包含rA2→rE2、rA1→rE1和rA2→rB3等;C域的rC1与rC2存在SoD约束。
表1映射表配置表
A域首先生成请求消息,消息中包含目标域D。生成消息后,查询A域的邻域角色映射表RolePath,判断是否存在A域到D域的映射路径。若存在,则按照映射路径发送请求消息。否则,根据邻域映射表的信息,向邻域B、E发送请求消息。根据link(rA2→rB3),当B域收到该消息后,评估该映射路径是安全的,则类似地,根据映射(rB1→rA1)和(rB2→rC3)将消息山B域转发至A域和C域。
当请求消息返回至A域时,映射路径Path1=(rA2→rB3→rB1),A域将判断rB1与rA1建立映射是否安全。建立映射将产生衰退继承,因为rA2∈Path1,rA2∈Role(A)且所以rB1与rA1之间的跨域映射不会建立,该消息将被丢弃。当消息从B域转发至C域时,类似的,消息将被继续转发。一条消息根据映射(rC2→rA3)返回至A域,rA2∈Path2,rA2∈Role(A)且Path2=(rA2→rB3→rB2→rC3→rC2)中将出现了循环继承,所以该消息也会被丢弃。另一个消息被转发至邻域X,然后根据映射(rX→rC2)转发回C域。则映射路径Path3=(rA2→rB3→rB2→rC3→rC1→rX1),若建立rX1与rC2之间的映射,即将rC2添加到Path3中,由于[rC1,rC2]∈S(C),将出现SoD冲突,该消息同样被丢弃。
当消息返回至E域未发现违反约束现象,继续转发至D域。最后得到安全映射路径Path4:rA2→rE2→rD2和Path5:rA2→rA1→rE1→rD1。Path4、Path5将作为历史路径保存于A的历史路径表中。发现过程如图3所示。
Claims (2)
1.一种基于角色映射的跨安全域数据访问控制方法,其特征在于:所述方法包括以下步骤:
(1)接收并监听角色映射的请求消息,解析角色映射路径;
(2)判断与当前域的角色建立映射是否安全,同时发现并解决角色衰退继承;
(3)转发基于领域映射表和历史路径表的请求消息,发现目标域并与之建立安全的角色映射路径;
所述步骤(1)包括以下步骤:
(1-1)监听源域用户的请求消息,并判断消息类型;
(1-2)监听到数据访问请求后,由包括变量request,TargetRole[i]和Operate的路径解析函数Extract解析所述请求消息中的映射角色集合TargetRole[i]和请求的数据操作Operate,再由包括变量TargetRole[i]和Operate的比较授权函数Compare根据最小权限原则、最小泄露原则将满足operate的角色赋予用户,并将数据返回给用户;
(1-3)监听到建立角色映射请求,由包括变量request,ReqID,DomainList[i],Path和T_limit的路径解析函数Extract解析请求消息中的请求序列号、途经的域名列表,已成功建立的角色映射路径(r1→r2→…→ri)信息和请求消息的有效期并将结果分别放在变量ReqID、DomainList[i]、Path和T_limit中;
(1-4)所述变量ReqID是请求的唯一标识,所述Path则保存了到目前为止,该请求消息所经过的各安全域内的角色,使用DomainList[i]判定该请求消息是否来自非法安全域,使用T_limit判断所述请求消息是否过时失效;
所述步骤(2)包括以下步骤:
(2-1)若所述请求消息来自安全域且未失效,包括变量Pathi,CurrentDomain,ri+1,DomainList[i],Update_rolePath和T_limit的安全评估函数Est_sel将基于已有角色序列,根据评估策略和规则,判断请求消息与当前域建立映射关系是否安全;
(2-2)若请求消息与当前域建立映射关系安全,则建立映射,并将包括本域被映射的角色ri+1和域名的信息更新到请求消息中,否则丢弃请求消息并退出;
所述步骤(3)包括以下步骤:
(3-1)如果当前域不是目标域,根据邻域角色映射表RoleNeighbor中当前角色及其子角色的映射信息,继续向安全空间转发该请求,发现目标域;
(3-2)如果当前域是目标域,则将映射角色信息反馈给源域,源域与目标域建立角色会话。
2.根据权利要求1所述的一种基于角色映射的跨安全域数据访问控制方法,其特征在于:对于一条已有跨域映射路径Pathi=r1→r2→…→ri与ri+1建立映射,Dk为rk所在域,k=1,2,...,i,i+1,判断Pathi与ri+1建立角色的所述评估策略和规则如下:
(a)任意邻域角色映射必须经过授权;
(b)禁止非法域渗透,Dk不能是ri+1所阻止的非法域,k=1,2,...,i-1,i;
(c)禁止角色渗透,Di+1中基于角色的访问控制RBAC角色层次数中ri+1的子角色不属于受保护的私有角色;
(d)对于Pathi中任意角色且则与ri+1之间不能存在循环继承、责任分离冲突。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110429941.3A CN103166944B (zh) | 2011-12-19 | 2011-12-19 | 一种基于角色映射的跨安全域数据访问控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110429941.3A CN103166944B (zh) | 2011-12-19 | 2011-12-19 | 一种基于角色映射的跨安全域数据访问控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103166944A CN103166944A (zh) | 2013-06-19 |
CN103166944B true CN103166944B (zh) | 2016-02-24 |
Family
ID=48589690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110429941.3A Expired - Fee Related CN103166944B (zh) | 2011-12-19 | 2011-12-19 | 一种基于角色映射的跨安全域数据访问控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103166944B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106789873B (zh) * | 2016-11-11 | 2020-09-01 | 国家电网公司 | 一种等级保护安全边界的检查方法 |
CN111611324B (zh) * | 2020-05-06 | 2024-01-19 | 中国科学院信息工程研究所 | 一种跨域访问策略优化方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633085A (zh) * | 2004-12-29 | 2005-06-29 | 北京邮电大学 | 一种基于无等级角色间映射的访问控制方法 |
CN101951384A (zh) * | 2010-09-29 | 2011-01-19 | 南京信息工程大学 | 一种分布式安全域逻辑边界保护方法 |
-
2011
- 2011-12-19 CN CN201110429941.3A patent/CN103166944B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633085A (zh) * | 2004-12-29 | 2005-06-29 | 北京邮电大学 | 一种基于无等级角色间映射的访问控制方法 |
CN101951384A (zh) * | 2010-09-29 | 2011-01-19 | 南京信息工程大学 | 一种分布式安全域逻辑边界保护方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103166944A (zh) | 2013-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240171376A1 (en) | Rapid distributed consensus on blockchain | |
US8595821B2 (en) | Domains based security for clusters | |
CN109643268A (zh) | 车载装置、日志收集系统 | |
CN108681966A (zh) | 一种基于区块链的信息监管方法及装置 | |
JP2020523839A (ja) | ブロックチェーン・ネットワークにおける暗号座礁リソースを回避又は削減するシステム及び方法 | |
Liu et al. | An overview of big data industry in China | |
US20120185510A1 (en) | Domain based isolation of objects | |
US20230058148A1 (en) | Detection and resolution of data synchronization conflicts | |
CN102957697A (zh) | 一种多域间基于rbac模型的访问控制策略合成方法 | |
CN116760639B (zh) | 一种用于多租户的数据安全隔离与共享框架实现方法 | |
CN103166944B (zh) | 一种基于角色映射的跨安全域数据访问控制方法 | |
US20200342008A1 (en) | System for lightweight objects | |
CN113395271A (zh) | 一种云计算平台中数据安全访问方法及云计算平台 | |
CN107360103A (zh) | 一种操作维护系统和资源调度方法 | |
An et al. | Blockchain technology research and application: A literature review and future trends | |
CN111737655A (zh) | 一种云管理平台的用户权限管理方法、系统及存储介质 | |
Mast et al. | Enabling strong database integrity using trusted execution environments | |
Rault et al. | Access control based on CRDTs for collaborative distributed applications | |
CN113239255B (zh) | 异构数据资源的共享方法、装置、计算机设备及介质 | |
Sun et al. | Research on federated learning and its security issues for load forecasting | |
CN105808989B (zh) | 一种权限稽核方法及装置 | |
US20120185581A1 (en) | Domain based isolation of network ports | |
Daoud | Decentralizing of transparency: using blockchain to reduce counterfeiting | |
Alghamdi et al. | A Survey of Blockchain based Systems: Scalability Issues and Solutions, Applications and Future Challenges | |
Liu et al. | Redactable Blockchain Technology Based on Distributed Key Management and Trusted Execution Environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160224 Termination date: 20211219 |
|
CF01 | Termination of patent right due to non-payment of annual fee |