当前位置:首页 期刊杂志

一种基于安全策略的云数据访问控制优化技术

时间:2024-08-31

苏 雪, 宋国新

(1.武汉铁路职业技术学院,武汉 430205;2.华东理工大学信息科学与工程学院,上海 200237)

一种基于安全策略的云数据访问控制优化技术

苏 雪1, 宋国新2

(1.武汉铁路职业技术学院,武汉 430205;2.华东理工大学信息科学与工程学院,上海 200237)

云存储安全给访问控制技术带来了新的挑战。提出了一种基于安全策略的云数据访问控制优化方法,基本思想是利用数据关联关系进行安全策略精化,基于属性的安全策略中融合了角色和信誉特征。利用数据关联关系对云数据进行细粒度划分,得到相应的数据块;对策略中的规则和数据块进行匹配和冲突消除,得到精化的安全策略。理论分析和实验结果表明,本文方法对于数据量大的云数据访问控制具有较高的效率。

云存储; 安全策略; 信誉; 访问控制; 优化

数据安全是云计算应用面临的主要挑战之一[1],访问控制是数据安全和网络通信安全的基本方法。以DAC,MAC,RBAC[2-3]为代表的访问控制方法在操作系统、数据库安全领域已经得到广泛应用,基于安全策略的访问控制方法适合于网络环境下托管数据的安全管理。XACML(eXtensible Access Control Markup Language) 是一种基于XML格式的访问控制标准,被广泛应用于网络应用和网络服务中[4]。XACML是一种层次化语言模型,它提供了策略集、策略和规则3种对象及对象之间的融合算法,用于仲裁安全规则之间的冲突并设定默认解决方案,从而保证访问控制决策的一致性。

基于XACML的访问控制研究已有大量成果。Hu等[5]提出了一种应用于Web访问控制中基于逻辑的XACML策略管理机制,并对规则的冲突和冗余进行检测和消除。Wang等[6]提出一种相关类型的策略优化引擎,并对层次化的XACML利用树状图分析和优化。然而上述文献并未充分考虑到策略的安全性,同时基于策略本身的优化方法,效率依然取决于策略长度,并未从根本上优化决策算法的复杂度。Pei等[7]提出了规则优化方法,但策略中没有考虑角色和信誉的因素。Said[8]提出了一个评估策略执行效率的框架,并形式化地描述了XACML及策略相似性的度量方法。Bertolino等[9]对XACML的自动测试方法进行了研究,但对于具体的优化方式并未给出可行性方案。

本文在基于属性的安全策略中融合了角色和信誉特征,并提出了一种基于策略的云数据访问控制优化算法pbacPDP (policy-based access control Policy Decision Point)。利用数据关联关系对云数据进行划分,对策略和数据块进行匹配和冲突消除,得到优化的安全策略。

1 安全策略模型

1.1 策略的描述

一个XACML策略可以包含多条规则,在一个规则中,主体、资源、行为构成其基本属性,同时规则可以具有执行条件约束。规则具有“允许”和“拒绝”两种效用。由多个规则构成的策略具有一个融合算法,用来解决规则之间的冲突。同样,策略集也具有融合算法,解决策略之间的冲突。XACML自带的融合算法有4种,分别为允许优先算法(Permit-Override)、拒绝优先算法(Deny-Override)、首次适用算法(First-Applicable)和唯一适用算法(Only-one-Applicable)。XACML安全策略模型的形式化描述如下:Policyset::=,{|}+,

Policy::=,{}+,

rule::=(,,,)

target::={(,,)}*

request::={(,,)}+

effect::='permit'|'deny'

CA::='PO'|'DO'|'FA'|'OA'

安全模型中角色(Role)和主体(Subject)是多对多的关系。规则(Rule)在策略中出现的次序通过函数seq:Rules→N定义。

设S={s1,s2,s3,s4}为云存储数据资源集,它们之间存在的关联关系如图1所示,资源集的数据块划分为{d1,d2,d3,d4,d5,d6}。

图1 数据资源关联关系示例Fig.1 An example of data resource correlation

图2给出了一个XACML安全策略案例,标识为P01,定义了对数据的访问控制策略,它包含r1,r2,r33个规则。

图2 XACML安全策略示例Fig.2 An example of XACML security policy

1.2 访问控制过程

访问控制的主要模块包括策略执行点(PEP)和策略决策点(PDP)。PEP接受用户请求、创建一个 XACML 请求并发送到PDP,而PDP评估请求并返回一个响应。该响应可以是允许访问(permit),也可以是拒绝访问(deny)。假定Alice是学生,她的信誉值为85,系统接受到如下请求:

req(Subject='Alice',Resource='s2',

Action='Write',Condition='12:00')

策略P01中规则r1和r3与请求匹配,根据规则r1该请求得到的相应是‘permit’,根据规则r3该请求得到的相应是‘deny’。因为策略P01的融合算法CA选取的是‘deny-override’,所以最终的控制决策是‘deny’。

云存储提供了海量数据的管理和服务功能,用户的量大,需求个性化要求强。对于每个用户请求,决策过程需要逐个检查规则是否匹配,并根据规则条件和融合算法进行最终决策,对于云存储管理是一个巨大的负担。本文的目标是提出细粒度的访问控制优化技术,在实施安全策略的同时提高决策的效率。

2 访问控制优化技术

2.1 基本定义

为了实现资源的独立存储,同时考虑到资源安全属性,通过资源分隔算法将资源切分为相互独立且具有安全属性的数据块。由于资源是策略的一部分,是XACML中规则的一个基本属性,将规则绑定到资源上,资源交集生成的新数据块将继承所有相交资源的规则,实现了策略在资源维度上的投影。通过规则优化算法对每个数据块上的规则进行冲突和冗余的检测和消除,实现策略的最优化。策略中的规则之间存在冗余和冲突,XACML提供的4种融合算法虽然可以解决冲突,但是决策效率较低,并不具备系统性的规则优化方法。本文提出的规则优化算法是在决策之前对所有相关的规则在数据块维度上进行优化。

定义1(规则匹配) 假设云端用户的请求为req=(,,),规则r=(,,,)。如果role(sub)与tg相交,并且cond满足,则称规则r与请求req匹配。

记为r|=req。

定义2(规则冲突) 设ri,rj为安全策略中的规则,如果存在请求req使得req|=ri∧req|=rj成立,则称ri与rj冲突,记为ri⊗rj。两者的相交的部分记为Λri,rj,包含Δri属于ri,Δrj属于rj。

当ri⊗rj且ri·effect=rj·effect时,有Δri=Δrj。若删除Δri或Δrj对策略的最终决策不产生影响,则其可移除。

2.2 优化算法pbacPDP

在不同的策略融合算法作用下,移除判定准则不相同,分别定义4种融合算法中的移除准则。

准则Cr1 允许优先算法

当ri⊗rj且ri·effect=permit,则Δrj可移除。

当ri⊗rj且ri·effect=deny,则Δri可移除。

准则Cr2 拒绝优先算法

当ri⊗rj且ri·effect=deny,则Δrj可移除。

当ri⊗rj且ri·effect=permit,则Δri可移除。

准则Cr3 首次适用算法

假设ri,rj在策略中的出现顺序为seq(r)。

当ri⊗rj且seq(ri)

当ri⊗rj且seq(ri)>seq(rj),则Δri可移除。

准则Cr4 唯一适用算法

若ri与rj同时匹配一个请求,共同匹配部分为Λri,rj,非唯一匹配返”NotApplicable”,该情况下,移除Δri与Δrj。

优化的访问控制算法pbacPDP的伪代码如图3所示。 RuleSeti表示绑定到数据块上的规则集合,算法根据上述优化规则对RuleSeti规约。

图3 pbacPDP算法伪代码Fig.3 Pseudo-codes of the pbacPDP algorithm

定理1(算法的正确性) 假设P为原始安全策略,P′为优化后的细粒度安全策略,对于每个请求req数据块,P|=req当且仅当P′|=req。

证明:

(1)必要性:假设P|=req,如果策略P中没有规则冲突,则P′=P,从而显然P′|=req。假设策略P中存在规则冲突,不妨令ri⊗rj。

情况1:如果ri·effect=permit,CA 采纳的是准则Cr1,则无论rj·effect=permit 或 deny,删除Δrj后,最终对req的决策仍然是permit,所以P′|=req。

情况2:如果ri·effect=deny并且rj·effect=deny,则Δri=Δrj,删除Δri(Δrj)仍然P′|=req。然而,如果ri·effect=deny并且rj·effect=permit,CA 采纳的是准则Cr1,删除Δri最终对req的决策仍然是permit,所以P′|=req。同样地,如果CA 采纳Cr2、Cr3、Cr4准则,结论成立。

(2)充分性:假设P′|=req,如果策略P中没有规则冲突,则P′=P,从而显然P|=req。假设策略P中存在规则冲突,不妨令ri⊗rj。

情况1:如果ri·effect=permit,CA 采纳的是准则Cr1,则P′为P删除Δrj后的策略,依据ri·effect=permit可知,先前的策略对req的决策是permit,所以P|=req。

情况2:如果ri·effect=deny并且rj·effect=deny,则Δri=Δrj,删除Δri(Δrj)。P′|=req意味着存在其他规则rk:rk·effect=permit,所以P|=req。然而,如果ri·effect=deny并且rj·effect=permit,CA 采纳的是准则Cr1,删除Δri最终对req的决策与未删除前一样,均为permit,所以P|=req。

类似地,CA 采纳Cr2、Cr3、Cr4时结论可证。

3 访问控制性能分析

3.1 复杂度分析

在访问控制优化算法中,计算时间包含数据块划分时间、规则精化时间、冲突检查时间和冲突解决时间。数据块划分的时间复杂度为O(nlog2m),规则精化复杂度为O(km),冲突检查时间复杂度为O(hilog2hi),冲突解决的时间为O(ci),从而访问控制优化算法的总时间复杂度为O(nlog2m+km+∑i∈1..|Conflicts|(hilog2hi+ci))。

算法需要额外的空间开销,用以存储数据块以及匹配规则,其空间复杂度为Θ(m)。

3.2 实验分析

为分析本文方法对不同的规则数、规则冲突数、资源耦合度的影响,进行了两组实验。实验1的规则数分别为20、40、60、 80、100,规则冲突数为60,资源元数为64;实验2的规则数分别为300、600、900、1 200、1 500,规则冲突数为60,资源元数为160。假定云数据访问请求者平均有80%符合信用标准。实验采用SUN-XACML的API,实验环境为:Intel(R)Core(TM)i3-2330MCPU2.30GHz,4GBRAM,Win7操作系统。方法比较对象分别是simplePDP[4]和melcoePDP[10],其中simplePDP使用列表结构遍历规则进行匹配,melcoePDP则采用数据属性簇遍历。实验结果如图4所示。可以看出,在规则数和资源元数较少时,本文方法与simplePDP和melcoePDP相比在效率上相仿或者略低;但随着规则数和资源元的增加,本文方法的效率比simplePDP和melcoePDP具有明显的提高,适用于数据量大的云存储访问控制。

图4 算法对比分析Fig.4 Comparison analysis of algorithms

4 结束语

本文提出了一种基于安全策略的云数据访问控制优化方法。该方法利用XACML描述访问控制策略,在安全策略中融合了用户角色和信誉特征,适合网络环境中数据资源的访问控制。利用数据关联关系对云数据进行细粒度划分,得到相应的数据块。进一步对策略中的规则和数据块进行匹配和冲突消除,得到优化的安全策略,可以对云存储资源进行细粒度的访问控制。实验结果表明,本文提出的pbacPDP算法对于数据量大的云数据安全具有较高的效率和适应性。

进一步的研究工作包括对云数据访问控制模型和系统的设计、第三方的用户信用管理和维护、相关工具的研究和开发。

[1] YANG K,JIA X,REN K,etal,DAC-MACS:Effective data access control for multiauthority cloud storage systems[J].IEEE Transactions on Information Foreusics and Security,2013,8(11),1790-1801.

[2] MASOOD A,BHATTI R,GHAFOOR A,etal.Scalable and effective test generation for role-based access control systems[J].IEEE Transactions on Software Engineering,2009,35(5),654 - 668.

[3] ARDAGNA C A,VIMERCATI D C,PARABOSCHI S.Expressive and deployable access control in open Web service applications[J].IEEE Transactions on Services Computing,2011,4(2):96-109.

[4] GODIK S,MOSES T.Extensible access control markup language (XACML) version1.1 [EB/OL].[2003-04-10].http://docs.oasis-open.org/XACML.

[5] HU H X,AHN G J.Discovery and resolution of anomalies in web access control policies[J].IEEE Dependable and Secure Computing,2013,10(6):341-354.

[6] WANG Y Z,FENG D G,ZHANG L W.XACML policy evaluation engine based on multi-level optimization techno-logy[J].Journal of Software,2011,22(2):323-338.

[7] PEI X,YU H,FAN G.Achieving efficient access control via XACML policy in cloud computing[C]//Proceedings of the 27th International Conference on Software Engineering and Knowledge Engineering.USA:KSI Research Inc,2015:110-115.

[8] SAID M,SHEHAB M,ANNA S.Adaptive reordering and clustering-based framework for efficient XACML policy evaluation[J].IEEE Service Computing,2011,4(4):300-313.

[9] BERTOLINO A,DAOUDAGH S,LONETTI F.Automated testing of extensible access control markup language-based access control systems[J].IET Software,2013,7(4):203-212.

[10] JAJODIA S.SAMARAT P.A logical language for expressing authorizations[C] //Proceedings of IEEE Symposium on Security & Privacy.USA:IEEE,1997:31-42.

A Security Policy-Based Approach to OptimizingCloud Data Access Control

SU Xue1, SONG Guo-xin2

(1.Wuhan Railway Vocational College of Technology,Wuhan 430205,China;2.School of Information Science and Engineering,East China University of Science and Technology,Shanghai 200237,China)

Cloud storage arouses new challenges to access control techniques.This paper proposes a security policy-based method to optimize cloud data access control.The basic idea is to refine security policies according to correlations among cloud resources.Attribute-based security policies comprehend the role of subject and his credit as well.Cloud data are partitioned to fine-grained data blocks,which is guided by correlations among the data.Security policy refinement is obtained by matching policy rules with data blocks and resolving rule conflicts.Theoretical analysis and experiment results show that the proposed method is efficient for access control of cloud data with huge quantity.

cloud storage; security policy; credit; access control; optimization

1006-3080(2016)06-0858-05

10.14135/j.cnki.1006-3080.2016.06.017

2016-09-02

湖北省教育厅科学技术规划项目(B2015412);国家科技重大专项项目(2010ZX03004-003-03)

苏 雪(1972-),女,硕士,副教授,主要研究方向为计算机网络通信与信息系统。E-mail:yuanyuan720306@qq.com

TP311

A

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!