APP下载

改进的基于属性的访问控制策略评估管理决策图

2019-01-06罗霄峰杨兴春胡勇

计算机应用 2019年12期
关键词:访问控制安全策略信息安全

罗霄峰 杨兴春 胡勇

摘 要:針对多数据类型区间决策图(MIDD)方法不能正确表示、处理属性的重要性标记特性,以及表示、处理责任及忠告等不清晰,造成节点表示不一致并增加了处理的复杂性等问题,对MIDD方法进行改进和扩展。首先,将MIDD的以实体属性为单位的图节点修改为以元素为单位的图节点,精准地表示基于属性的访问控制元素,使原来不能正确处理重要标志的问题得以解决;然后,将责任及忠告作为元素,用节点表示出来;最后,把规则和策略的组合算法加到决策节点中,以便在策略决策点(PDP)对访问请求进行决策时使用。分析结果表明,改进方法与原方法的时空复杂度相当。两种方法的对比仿真实验结果表明,在每个属性只有1个附属属性时(最一般的应用情况),两种方法每个访问请求的平均决策时间差异的数量级仅在0.01μs。验证了复杂度分析的正确性,说明两种方法的性能相当。附属属性个数仿真实验表明,即使1个属性有10个附属属性(实际应用中十分稀少),两种方法的平均决策时间差异也在相同的数量级。改进方法不但保证了原方法的正确性、一致性和方便性,更将其使用范围从可扩展访问控制标记语言(XACML)策略扩展到一般的基于属性的访问控制策略。

关键词:访问控制; 基于属性的访问控制; 信息安全; 安全策略; 可扩展访问控制标记语言(XACML)

中图分类号: TP309; TP391文献标志码:A

Improved decision diagram for attribute-based access control policy

evaluation and management

LUO Xiaofeng1, YANG Xingchun1*, HU Yong2

(1. Department of Computer Science and Technology, Sichuan Police College, Luzhou Sichuan 64600, China;

2. Cyberspace Security College, Sichuan University, Chengdu Sichuan 610065, China)

Abstract: The Multi-data-type Interval Decision Diagram (MIDD) approach express and deal with the critical marks of attribute incorrectly, while express and deal with the obligations and advices ambiguously, resulting in the inconformity of node expression and the increase of processing complexity. Aiming at these problems, some improvements and expansions were proposed. Firstly, the graph nodes in MIDD with entity attribute as the unit were converted to the nodes with element as the unit, so that the elements of attribute-based access control policy were able to be represented accurately, and the problem of dealing with the critical marks was solved. Secondly, the obligations and advices were employed as elements, and were expressed by nodes. Finally, the combining algorithm of rule and policy was added to the decision nodes, so that the Policy Decision Point (PDP) was able to use it to make decision on access requests. The analysis results show that the spatio-temporal complexity of the proposed approach is similar to that of the original approach. The result of the two approaches comparative simulation show that when each attribute has only one subsidiary attribute (the most general application situation), the average decision time difference per access request of the two approaches is at 0.01μs level. It proves the correctness of the complexity analysis, indicating the performances of the two approaches are similar. Simulation on the number of subsidiary attributes showed that, even with 10 subsidiary attributes (very rare in practical applications), the average decision time difference of the two approaches is at the same order of magnitude. The proposed approach not only ensures the correctness, consistency and convenience of the original approach, but also extends its application scope from eXtensible Access Control Markup Language (XACML) policy to general attribute-based access control policies.

Key words: Access Control (AC); Attribute-Based Access Control (ABAC); information security; security policy; eXtensible Access Control Markup Language (XACML)

0 引言

随着信息技术的发展与广泛应用,特别是云计算技术、物联网的发展和大数据应用的推广,信息获取、信息存储、信息传输和信息处理等领域中的信息安全保障问题更加迫切和严峻。而访问控制是最基本的安全保障技术之一,一直得到学术界和工程应用开发的重视[1-4]。

访问控制策略的研究涉及诸多方面。其中,策略表示、授权决策和管理是最基本的。访问控制策略表示的精确性和授权决策的效率是必须考虑的重要因素。

访问控制策略的表示方法可以分为三类:自然语言(类自然语言)、形式化(逻辑)和图(Diagrams)。可扩展访问控制标记语言(eXtensible Access Control Markup Language, XACML)是自然语言(类自然语言)表示的最好例子[5]。美国国家标准定义的下一代访问控制(Next Generation Access Control, NGAC)则是采用形式化表示访问控制策略的例子[3,6-7]。

用图来表示访问控制策略具有形象、直观等优点,工程界和技术界对其情有独钟。当前,最具代表性的是Ngo等[8]提出的多数据类型区间决策图(Multi-data-type Interval Decision Diagram, MIDD)。多数据类型区间决策图利用数据区间划分汇聚的决策图来管理XACML策略,效果较好;但是,在准确、精细地表示、评估和管理XACML策略方面,尚存在缺陷和不足。例如,表示策略变量属性是否重要的标志,在MIDD中最终会丢失。要应用于普遍的基于属性的访问控制(Attribute-Based Access Control, ABAC)时,更需要作进一步工作。

针对MIDD的缺陷和不足进行改进,本文将首先用一个访问控制策略例来演示MIDD的缺陷,分析原因;然后给出解决办法,即从属性的角度重新定义描述基本属性的属性,并将这些属性也用图节点表示。这样处理,可以准确、精细地表示XACML及一般ABAC策略中的元素,从而更好地保障对XACML和一般ABAC访问控制策略的评估和管理,以及授权决策的效率。

1 问题的提出

对资源,特别是敏感资源的访问控制和管理持续了几十年,极具挑战性[1]。ABAC是访问控制技术发展的里程碑[1,9]。ABAC并不是BLP(Bell-La Padula model)或基于角色的访问控制(Role-Based Access Control, RBAC)那样的具体模型,而是一种逻辑模型。访问控制中涉及主体(Subjects)、客體(Objects)、权限(Rights)和环境(Environment)。这些实体(Entities)都用自己的属性(Attributes)来描述。ABAC提供的基于属性方法能适应各种访问控制策略并简化访问控制管理。ABAC很有潜力。据Gartner调查,在2014 年,把ABAC作为主要机制来保护重要资产的企业只有5%。Gartner预计,到2020 年,70% 的企业将这样做[10]。现在看来,可能要超过此估计[3]。

在访问控制策略表示方面,XACML现在是最有影响的访问控制策略表示语言,当然,其作用不仅是表示策略而已。新兴的、基于关系和体系结构的标准NGAC也是旨在表达和执行访问控制策略。XACML和NGAC提供了不同的方法来表示ABAC。

用图方法进行访问控制策略、特别是XACML访问控制策略的表示、授权决策和管理等方面的研究很多。最具代表性的概述如下。

多端二叉决策图(Multi-Terminal Binary Decision Diagram, MTBDD)[11]被Fisler等[12]使用在Margrave项目中实现了XACML逻辑。

Liu等[13]提出的XEngine通过把每一个属性值映射为数字值,并应用“第一个可用(first-applicable)”的策略组合算法,把策略树变换成一种平坦结构,提高了决策效率。Ros等[14]采用匹配树和组合树来提高决策效率。文献[15-16]则按照不同的原则重新排序组织策略和规则,提高了效率。Rao等[17]提出精细集成代数(Fine-grained Integration Algebra, FIA),并基于MTBDD利用FIA生成实际的XACML集成策略。但是,FIA无法区分不同域操作对象(target)和规则(rule)评估之间的差别,以及表示所有不确定值(Indeterminate values)。此外,包括文献[15]在内,现有的相关研究也未能很好解决策略评估效能问题,包括重要属性(又称关键元素)评估的处理问题等[8]。

迄今为止,用图来表示访问控制策略最好的是多数据类型区间决策图,在分析XACML标准背后隐藏的逻辑基础上提出的MIDD方法。MIDD的数据结构和操作符可以将访问控制策略转换为策略树,在保持原有语义的同时,提高了评估性能。

MIDD方法包含XACML逻辑分析及实现机制,支持XACML连续数据类型、复杂的比较组合算法、语义正确性、差错处理和重要属性设置等大部分特征。

但是,MIDD方法仍存在一些问题。仍以文献[8]所用访问策略示例进行说明。此策略的简化表示如下。程序前

Policy{id:P1;combine_algo:po;

target:{(vol≥100)∧(vol≤500)};

children:{R1,R2}

}

Rule{id:R1;effect:Permit;

target:{

[(100≤vol≤150)∧(12≤time≤17)∧(3≤price≤4)]∨

[(300≤vol≤500)∧(1≤price≤2)]∨

[(100≤vol≤500)∧(6≤time≤9)∧(1≤price≤2)]

};

obligations: {O1,Permit}

}

Rule{id:R2;effect:Deny;

target:{

[(vol=100)∧(time=17)]∨

[(100≤ vol ≤300)∧(time=9)]∨

[(vol=500)∧(time≥12)]

};

obligations: {O2,Deny}

}程序后

规则R1中有一项vol(volume属性)用下划线标识,表明是重要属性。其余的vol,以及所有time属性和price属性都没有下划线,表明都不是重要属性。文献[8]的图3是规则R1对象(target)的3个子target的MIDD图。其中,文献[8]中图3(左图)对应于:

100≤vol≤150∧12≤time≤17∧3≤price≤4(1)

文献[8]中图3 (中间图)对应于:

300≤vol≤500∧1≤price≤2(2)

文献[8]中图3 (右图)对应于:

100≤vol≤150∧6≤time≤9∧1≤price≤2(3)

MIDD用带状态值的节点来表示是否用下划线标识的变量。文献[8]中图3(左图)的节点vol(IN),表示vol是重要属性;图3(中间图)和(右图)节点vol(F),表示vol不是重要属性。文献[8]的图4(左图)是R1的对象的MIDD图,此图中节点为vol(F),已经丢掉了文献[8]图3(左图)中的重要属性信息。

实际上,XACML策略中还有其他一些元素需要处理。

问题1 重要属性的附属属性MustBePresent如何表示?

XACML的重要属性用附属属性MustBePresent=“True”标识出来,以便管理该属性缺失时的处理。策略决策点(Policy Decision Point, PDP)在处理访问请求时,当一个策略或规则要求的某个属性在访问请求中不存在时,如果MustBePresent=“True”,则该缺失属性的值为“Indeterminate”;否则(MustBePresent=“False”,或没有MustBePresent),该缺失属性的值为空(empty bag)[12]。按照前面vol的处理方法,只能把MustBePresent作为节点的状态值來处理。

问题2 难以表示XACML定义的访问控制策略和规则集的组合算法(combining-algorithm),以及正确使用责任(obligation)及忠告(advice)。

XACML策略中,有责任和忠告,它们常常包含在Effect里。文献[8]将责任和忠告放在扩展的MIDD(eXpanded-MIDD, X-MIDD)叶节点中,不但表示复杂,处理也复杂,并将可选的责任和忠告强加在了所有的决策中。

问题3 MIDD方法只是针对XACML策略的,需要推广应用到一般的ABAC,包括经过文献[18]所述预处理的XACML。例如,已经得到业界重视的NGAC中有禁律(Prohibitions),涉及三种禁止关系:user-deny、user attribute-deny和process-deny[19]。如果使用MIDD方法,也难以表示出来。

从属性角度看,无论是访问控制策略示例中说明vol重要性的标志,或是XACML的附属属性MustBePresent,以及NGAC中的禁律关系等,都是某种属性。XACML的obligation及advice,也是属性。本文在文献[8]基础上,通过扩展属性的概念来克服MIDD方法的不足。

下面的讨论,除非特别说明,将适用于一般ABAC。

2 基本概念

2.1 ABAC

ABAC是一类模型的统称。它们按照规则评估以属性(主体和客体实体、操作以及环境等)表示的请求实现主体对客体的访问控制[1,9]。

技术上有两种表示ABAC策略的方式 [19-20]。最常见的是通过对属性值使用具有谓词的逻辑操作(例如,AND、OR、≥、≠)表达式来定义授权策略。XACML就属于这一类技术。另一种是通过枚举涉及关系的配置来表达访问控制策略。NGAC就属于这一类。

不失一般性,下面的讨论,主要针对第一种技术表示的ABAC,因为第二种方式表达的决策原则上是可以转换成第一种方式表达的。

2.2 一些概念的说明

ABAC的实体用属性来描述。属性,又称为特征,通过属性名值对来表示。这里的值实际是区间划分。所谓元素,则是最基本的名值对单位。

定义1 附属属性。

在一个属性描述中用来补充描述该属性、而自身不再被描述的元素,称为该属性的附属属性。被附属属性补充描述的属性称为附属属性的主属性。

根据此定义,访问策略示例中说明vol重要性的下划线, 以及XACML的MustBePresent等,都是附属属性。

1)连续数据类型i的全部有序域用集Di来表示。

Di可以是任何元素值集。例如,ABAC中的主体属性、客体属性、环境属性等,以及XACML中的target属性、condition属性等。属性值可以是数值(整型,浮点数)、时间、字串、逻辑值等。

利用Di,一个访问请求X可以表示为:

X=D1×D2×…×Dn(4)

2)集VM表示匹配元素评估结果值集。

传统访问控制的结果值集是二值逻辑,VM:={T,F}。此处T表示True(即匹配);F表示False(即不匹配)。XACML的VM:={T,F,IN},IN表示Indeterminate(即无法确定)。

匹配元素评估f可以表示为:

f:D1×D2×…×Dn→VM(5)

3)逻辑决策结果集表示成E:= {P,D}。此处P表示准许(Permit);D表示拒绝(Deny)。

4)集VR是规则、策略和策略集元素的决策结果集。

传统访问控制的VR:={P,D}。

ABAC的VR:={{P,D,N,INP,IND,INPD}∪{OA,}}。此处P表示准许(Permit);D表示拒绝(Deny);N表示不可用(NotApplicable);INP 表示无法确定,可能评估为准许而不是拒绝;IND 表示无法确定,可能评估为拒绝而不是准许;INPD 表示无法确定,可能评估为准许,也可能评估为拒绝。OA表示责任及忠告列表,则表示空。{OA,}作为VR的一部分,扩展了文献[8]的结果。

规则、决策和策略集元素决策f可以表示为:

f:D1×D2×…×Dn→VR(6)

定义2数据区间。

域Di中的一个值范围IDi称为一个数据区间。

数据区间可能是一个点,也可能是由两个终端点组成的范围。在两个终端点时,根据端点值是否包含在内,可能是全开、全闭,或半开、半闭的区间。

定义3 区间划分[8]。

域Di中区间划分P是该域的一个不相交区间集。即:

p={IDi:Ii,Jj∈P,i≠j,Ii∩Ij=}

定义4 覆盖。

对于一个给定域Di,如果划分集P(Di)={P1,P2,…,Pn}满足:

Di=∪p∈P(Di)(∪II∈p)

则称P(Di)是域Di的一个覆盖。

如果P(Di)是无相交区间的覆盖,即:

i, j∈{ 1,n} ,i≠j:pi  ∩pj =

则P(Di)称为不相交覆盖。

定义5简约的区间划分[8]。

在覆盖相同数据范围的区间划分中具有最少区间数的区间划分称为简约的区间划分。

本文后面部分如无说明,均采用文献[8]定义的符号。

3 本文改进的决策图方法

本文改进方法基本思想是将以实体属性为单位的MIDD和X-MIDD图节点改进为以元素为单位。访问策略例子中说明vol的重要属性标志,XACML中的MustBePresent、obligation和advice,以及NGAC中的user-deny、user attribute-deny和process-deny等都是元素,都可以成為节点。

3.1 改进的决策图

定义6改进的MIDD。

改进的MIDD(improved MIDD, iMIDD)是式(5)的有根、有向无循环图表示:

1)iMIDD的外节点包含值T,表示True或Matched。外节点也称为T-叶节点。

2)iMIDD的每个内节点是一个元组(x,C)。其中:x是节点变量;C是元组(ed,c)型数组,ed为一条输出边,c为ed的下节点。下节点c可以是内节点,也可以是外节点。

对访问策略示例的策略而言,改进的方法将100≤vol≤150处理为(100≤vol ≤150∧vol.flag=True),其相应的iMIDD见图1。对比文献[8]的图4(左图),图1完全保留了R1中vol的重要属性信息。而100≤ vol ≤150等效于100≤ vol ≤150∧vol.flag=False。通常,vol.flag=False则可以省略。

显然,iMIDD比MIDD简洁,一致性好。

定义7 改进的X-MIDD。

改进的X-MIDD(improved X-MIDD, iX-MIDD)是式(6)的有根、有向无循环图表示:

1)iX-MIDD的外节点是一个元组(e,ca)。其中,e∈{P,D},是规则或策略的结果(Effect);ca是规则集或策略组合算法。外节点又称为决策叶节点。

2)iX-MIDD的每个内节点是一个元组(x,C)。其中:x是节点变量;C是元组(ed,c)数组。c为ed的下节点,可能是内节点,也可能是外节点。ed为一条输出边,其值p是上节点变量的一个简约的区间划分。

文献[8]将责任和忠告放入X-MIDD节点中,而iX-MIDD将其作为节点对待。后者的好处是,形成iX-MIDD时,不需要像文献[8]的算法4那样,每个节点都要记录和处理责任与忠告信息。

访问策略示例对应的iX-MIDD见图2。从图2可以看到,责任和忠告作为一个元素节点处理,组合算法也可以按照元素处理原则进行处理。此处把它放在外节点,是因为形成访问控制策略集合的iX-MIDD过程中已经使用了它(见3.2节)。把它保留在外节点,可便于PDP使用。

同文献[8]方法相比,本文提出的改进方法(iMIDD方法)比MIDD和X-MIDD更简单,规范且扩展性好,表达策略更精细、更准确。文献[18]方法把属性的重要性标记与值绑定在一起,没有本文的解决方法通用,同时也没有处理责任和忠告。

3.2 iMIDD方法的使用

XACML是用属性值逻辑式定义授权策略,用iMIDD和iX-MIDD处理逻辑式很方便。为描述方便,更主要的是为便于与文献[8]对比,本节仍以XACML策略来说明iMIDD方法的使用。

XACML策略可以表示为访问控制策略树。策略树是一个不被其他策略集包含的策略集,该策略集与它直接包含的策略构成树的第1层(又称根层),其直接子策略集直接包含的策略构成树的第2层。以此类推,最后一个不间断的子策略集所在层次加1就是树的层次。

可以使用iMIDD方法对式(4)形式的访问请求进行评估,包括是否匹配策略要求,以及决策是否批准该请求。

本节下面的讨论假定XACML策略树已经过文献[21]所述的预处理,且target元素用iMIDD表示,Policy用iX-MIDD表示。

3.2.1 iMIDD评估

从iMIDD根节点开始,通过处理式(4)请求X:

1)对于每个标准内节点(xi,C):

①如果X的xi值满足xi∈ed.p,则选择ed的下节点C.c。此处C.ed.p为数组C的边成员ed的区间划分p,C.c是该ed的下节点;

②当xi ∈X 时,返回F。

2)对于每个内节点(xi,C),选择该ed的下节点c。

3)如果ed下节点c达到T-叶节点,则返回T;否则,返回1)。

3.2.2 iX-MIDD评估

用iX-MIDD对式(1)的请求X进行判断,决定是否准许。处理从iX-MIDD的根开始,主要规则如下:

1)对于每个标准内节点(xi,C):

①如果X的xi值满足xi∈ed.p,则选择ed的下节点C.c。此处C.ed.p为数组C的边成员ed的区间划分p,C.c是该ed的下节点;

②当xi ∈X时, 返回(N,,)。

2)对于每个内节点(xi,C),仍然选择该ed的下节点c。

3)对于责任和忠告内节点(xi,C),则记录下来责任和忠告列表OAlist,仍然选择该ed的下节点c。

4)如果ed下节点c达到决策叶节点,则根据其前节点是否为责任和忠告内节点,分别返回(e,ca,OAlist)或(e,ca,);否则,返回1)。

3.2.3 iMIDD转换为iX-MIDD

为了进行规则评估,需要将iMIDD转换为iX-MIDD。转换步骤如下:

第1步 利用文献[8]的区间并操作∧ (Intersect),合并规则中全部元素的iMIDD。

第2步 用内节点(OA,C) 和决策叶节点(e,ca)代替T-叶节点。其中:OA是义务和忠告列表内节点变量;C是元组(ed,c)数组,ed为值为OAlist的输出边,c为ed的下节点决策叶节点(e,ca);e∈{P,D},是规则或决策结果(Effect);ca是组合算法。

其他管理应用,如策略测试、比较、逆请求等,iX-MIDD也完全可以实现,限于篇幅,这里不再介绍。

4 两种方法分析比较

4.1 复杂度分析

MIDD的层次取决于Target的变量數。这里的变量,就是属性。iMIDD的层次不但与Target的变量数有关,也与属性所附加的元素有关。极端情况下,设Target的变量个数为n,每个Target的变量的属性附加元素个数为k,Target的n个变量至少组成一个“与(and)”逻辑式。因此,MIDD的最大层数m=n+1,iMIDD的最大层数mi=n×k+n+1。此处的1是T-叶节点层。

类似地,可以得到X-MIDD的最大层数x=n+1,iX-MIDD的最大层数xi=n×k+n+2。此处加2,是责任和忠告内节点层加上决策节点层。

随着层数增加,节点数会增加,但不会很快。这是因为附加元素是内节点,其(xi,C)中的数组通常只会有一条连接下节点的边。

文献[8]分析发现,即使在最坏情况下,X-MIDD空间复杂度也与决策规模、决策树高度以及目的表达式的逻辑式复杂度均无关。因为iX-MIDD的层数和节点数增加了,上述结论不完全适合于iX-MIDD。但是,如前所述,由于节点数增加不快,可以预计:iX-MIDD空间复杂度与决策的关系,与X-MIDD相差不会太大。

可以用类似的方法分析时间复杂度。MIDD和iMIDD,以及X-MIDD和iX-MIDD,各自也会有些区别,但总体上它们的时间复杂度也相差不大。

鉴于复杂度区别不大,可以预计:它们的性能也不会相差太大。

4.2 仿真实验

文献[8]作者已经将MIDD方法与文献[13-14]方法等进行了分析比较,并将他们自己的实现与用标准Suns XACML(SunXACML engine) 的实现进行了性能比较[8],采用了3个XACML策略数据集:GEYSERS、continue-a和synthetic-360。其中,GEYSERS策略是在GEYSERS项目中实际使用的策略,包含3个决策层次、6个策略集、7个决策、33个规则、3个属性。从性能比较实验结果得出,MIDD方法的性能优于标准SunXACML engine方法的性能(见文献[8]的图7和图8)。

鉴于此,不失代表性,本文使用扩展的GEYSERS策略,即在文献[8]研究基础上, GEYSERS增加3个属性,每个属性又增加附属属性;此外还增加了责任和忠告。用它们进行两个对比实验:1)X-MIDD与iX-MIDD比较,1个附属属性(最一般的应用情况也只有1个附属属性);2)iX-MIDD自比,附属属性数影响的比较。

实验用计算机的配置是:Intel CPU 2.20GHz处理器, 8GB内存,操作系统是64位Windows 7家庭普通版,并安装了更新服务包Service Park 1。

仿真实验用C++编程。实验主要比较决策处理,不包括预处理,因为预处理是一次性的。由于XACML没有定义处理MustBePresent之类的处理方法,仿真处理中也只将节点信息记录下来,以备PDP处理需要。

为减少偏差,每次实验设计128万个访问请求案例,覆盖决策的全部路径。其中:64万个匹配全部可能路径,以及64万个不匹配。上述过程,重复20遍,最后得到每个访问请求平均决策时间及标准差。实验中关闭了一切可以关闭的后台程序,以减少Windows系统后台程序影响。

X-MIDD与iX-MIDD访问请求决策结果对比如表1所示。实验结果表明,1个附属属性时,iX-MIDD与X-MIDD性能相当。

表格(有表名)表1 X-MIDD与iX-MIDD访问请求决策结果对比

Tab. 1 Result comparison of X-MIDD and iX-MIDD in

request access decision experiment

算法平均用时/μs标准差/μsX-MIDD0.9410.016iX-MIDD0.9710.017

iX-MIDD附屬属性个数影响结果如表2所示。实验结果表明,决策时间并不随附属属性增加而线性增大。附属属性数对iX-MIDD性能影响很小,可以不考虑,虽然略有波动,但其差异的数量级在0.01μs,完全不会影响决策效率。实验中附属属性个数没有超过10,因为实际应用中附属属性个数不会太多,更不可能每个主属性都有附属属性。

表格(有表名)表2 iX-MIDD附属属性数影响结果

Tab. 2 Effect result of subsidiary attribute number on iX-MIDD

附属属性数平均用时/μs标准差/μs10.9740.01720.9740.01730.9700.01740.9710.02050.9730.01960.9810.01670.9710.01780.9690.01790.9500.015100.9710.017

5 结语

针对MIDD方法不能正确表示、处理属性的重要性标记特性,以及表示、处理责任及忠告等不清晰,造成节点表示不一致并增加了处理的复杂性等问题,本文首先扩展了属性的概念,提出以元素为节点的思想,将附属属性也用节点来表示。因此,MustBePresent之类的元素都可以用节点来表示,不仅解决了MIDD方法在表示它们时存在的问题,也克服了XACML的局限,可适用于一般ABAC,使一个属性在附加多个附属属性时也能正确表示和处理。这种表示使图节点概念一致性好,能精确、完整地表示ABAC策略。

接着,将此概念和方法,应用于责任和忠告的表示,也克服了MIDD方法表示责任和忠告的不一致问题。MIDD方法中责任和忠告的表示既包含于决策节点、又包含在与决策节点直接连接的内节点中[8]。

最后,将组合算法增加到决策节点,保留了访问控制策略中决策使用的算法信息,以备PDP等需要。按照元素节点的概念,算法也可以独立为节点。在本文中将它包含在了决策节点中。

实验结果表明,在每个变量有一个附属属性时,关于每个访问控制请求的平均决策时间,iMIDD方法与MIDD方法的结果相当(差异仅在0.01μs数量级)。对iMIDD来说,实验结果还表明,增加附属属性个数并不影响访问请求决策时间。iMIDD方法完全可以应用于实际的访问控制中。

下一步计划将改进的决策图应用于NGAC策略。研究中还发现,变量顺序对图复杂度有影响,将进一步分析以找出规律,进一步提高决策效率。

参考文献 (References)

[1]罗霄峰,王文贤,罗万伯.访问控制技术现状及展望[J].信息网络安全,2016(12):19-27.(LUO X F, WANG W X, LUO W B. The retrospect and prospect of access control technology [J]. Netinfo Security, 2016(12): 19-27.)

[2]BELTRAN V, SKARMETA A F. Overview of device access control in the IoT and its challenges [J]. IEEE Communications Magazine, 2019, 57(1): 154-160.

[3]KOLLURU K K, PANIAGUA C, VAN DEVENTER J, et al. An AAA solution for securing industrial IoT devices using next generation access control [C]// Proceedings of the 2018 IEEE Industrial Cyber-Physical Systems. Piscataway: IEEE, 2018: 737-742.

[4]GUO H, MEAMARI E, SHEN C-C. Multi-authority attribute-based access control with smart contract [C]// Proceedings of the 2019 International Conference on Blockchain Technology. New York: ACM, 2019: 6-11.

[5]OASIS. eXtensible Access Control Markup Language (XACML) version 3.0 plus errata 01 [EB/OL]. [2019-01-06]. http://docs.oasis-open.org/xacml/3.0/errata01/os/xacml-3.0-core-spec-errata01-os-complete.pdf.

[6]International Committee for Information Technology Standards. For information technology — next generation access control-functional architecture: INCITS 499-2018 [S]. New York: American National Standards Institute, 2018.http://www.doc88.com/p-6116489402019.html

[7]International Committee for Information Technology Standards. For information technology — next generation access control-generic operations and data structures: INCITS 526-2016 [S]. New York: American National Standards Institute, 2016.

[8]NGO C, DEMCHENKO Y, de LAAT C. Decision diagrams for XACML policy evaluation and management [J]. Computers and Security, 2015, 49: 1-16.

[9]房梁,殷麗华,郭云川,等.基于属性的访问控制关键技术研究综述[J].计算机学报,2017,40(7):1680-1698.(FANG L, YIN L H, GUO Y C, et al. A survey of key technologies in attribute-based access control scheme [J]. Chinese Journal of Computers, 2017, 40(7): 1680-1698.)

[10]KAVANAGH K, CONTU R. Market trends: cloud-based security services market, worldwide, 2014 [EB/OL]. [2019-02-08]. https://www.gartner.com/en/documents/2607617/market-trends-cloud-based-security-services-market-world.

[11]FUJITA M, MCGEER P C, YANG J C-Y. Multi-terminal binary decision diagrams: an efficient data structure for matrix representation [J]. Formal Methods in System Design, 1997, 10(2/3): 149-169.

[12]FISLER K, KRISHNAMURTHI S, MEYEROVICH L A, et al. Verification and change-impact analysis of access-control policies [C]// Proceedings of the 27th International Conference on Software Engineering. New York: ACM, 2005: 196-205.

[13]LIU A X, CHEN F, HWANG J, et al. Designing fast and scalable XACML policy evaluation engines [J]. IEEE Transactions on Computers, 2011, 60(12): 1802-1817.

[14]ROS S P, LISCHKA M, MRMOL F G. Graph-based XACML evaluation [C]// Proceedings of the 17th ACM Symposium on Access Control Models and Technologies. New York: ACM, 2012: 83-92.

[15]MAROUF S, SHEHAB M, SQUICCIARINI A, et al. Adaptive reordering and clustering-based framework for efficient XACML policy evaluation [J]. IEEE Transactions on Services Computing, 2011, 4(4): 300-313.

[16]戚湧,陈俊,李千目.一种基于重排序的XACML策略评估优化方法[J].南京理工大学学报(自然科学版),2015,39(2):187-193.(QI Y, CHEN J, LI Q M. XACML policy evaluation optimization method based on reordering [J]. Journal of Nanjing University of Science and Technology (Natural Science Edition), 2015, 39(2): 187-193.)

[17]RAO P, LIN D, BERTINO E, et al. Fine-grained integration of access control policies [J]. Computers and Security, 2011, 30(2/3): 91-107.

[18]罗霄峰,罗万伯.改进的安全策略评价管理决策图[J].四川大学学报(工程科学版),2016,48(4):123-128,210.(LUO X F, LUO W B. Improved decision diagrams for security policy evaluation and management [J]. Journal of Sichuan University (Engineering Science Edition), 2016, 48(4): 123-128, 210.)

[19]BISWAS P, SANDHU R, KRISHNAN R. Label-based access control: an ABAC model with enumerated authorization policy [C]// Proceedings of the 2016 ACM International Workshop on Attribute Based Access Control. New York: ACM, 2016: 1-12.

[20]GUPTA M, PATWA F, SANDHU R. An attribute-based access control model for secure big data processing in Hadoop ecosystem [C]// Proceedings of the 3rd ACM Workshop on Attribute-Based Access Control. New York: ACM, 2018: 13-24.

[21]羅霄峰,罗万伯.基于iX-MIDD的XACML安全策略评估[J].通信技术,2016,49(5):627-631.(LUO X F, LUO W B. XACML policy evaluation based on iX-MIDD [J]. Communications Technology, 2016, 49(5): 627-631.)

This work is partially supported by the Scientific Research Project of Sichuan Department of Education (17ZB0262), the Science and Technology Support Program of Sichuan (2019YFS0068).

LUO Xiaofeng, born in 1974, Ph. D., senior engineer. His research interests include information security, big data.

YANG Xingchun, born in 1975, Ph. D., associate professor. His research interests include information security, information and communication engineering.

HU Yong, born in 1973, Ph. D., associate professor. His research interests include information system security.

收稿日期:2019-04-12;修回日期:2019-08-21;录用日期:2019-08-21。

基金项目:四川省教育厅教育科研课题(17ZB0262);四川省科技支撑计划项目(2019YFS0068)。

作者简介:罗霄峰(1974—),男,四川大竹人,高级工程师,博士,主要研究方向:信息安全、大数据; 杨兴春(1975—),男,四川泸州人,副教授,博士,主要研究方向:信息安全、信息与通信工程; 胡勇(1973—) ,男,四川射洪人,博士,副教授,主要研究方向:信息系统安全。

文章编号:1001-9081(2019)12-3569-06DOI:10.11772/j.issn.1001-9081.2019040603

猜你喜欢

访问控制安全策略信息安全
信息安全不止单纯的技术问题
基于可视化的安全策略链编排框架
基于模糊综合评价法的信息安全风险评估模型
基于模糊综合评价法的信息安全风险评估模型
多媒体教学服务器限制访问的一种措施
云的访问控制研究
浅析涉密信息系统安全策略
云计算访问控制技术研究综述
地铁客运组织方式及安全分析
2014第十五届中国信息安全大会奖项