APP下载

面向Hadoop的风险访问控制模型

2016-09-22李甲帅彭长根朱义杰马海峰

网络与信息安全学报 2016年1期
关键词:访问控制集群标签

李甲帅,彭长根,朱义杰,马海峰

(1.贵州大学计算机科学与技术学院,贵州 贵阳 550025;2.贵州大学密码学与数据安全研究所,贵州 贵阳 550025;3.贵州大学理学院,贵州 贵阳 550025)

面向Hadoop的风险访问控制模型

李甲帅1,2,彭长根2,3,朱义杰1,2,马海峰1,2

(1.贵州大学计算机科学与技术学院,贵州 贵阳 550025;2.贵州大学密码学与数据安全研究所,贵州 贵阳 550025;3.贵州大学理学院,贵州 贵阳 550025)

传统的访问控制机制难以约束授权用户的恶意行为,使得采用这种访问控制机制的Hadoop平台面临着大数据隐私泄露的风险。提出了一种基于风险的访问控制模型,该模型通过对主体和客体标签的设定,根据用户的历史行为记录构造信息熵风险值计算函数,并进一步建立风险值波动的追踪链,通过风险值及其波动幅度动态调整用户的访问权限。将该模型应用于Hadoop的Kerberos认证协议的改进,结合访问令牌及风险监测实现大数据隐私保护风险访问控制机制。最后,针对医疗大数据进行应用仿真,实验表明该模型可以有效约束大数据应用平台中授权用户的访问行为。

风险访问控制;Hadoop;隐私保护;信息熵;大数据

1 引言

大数据时代,数据的增长带来了迫切的分析需求,而Hadoop平台快速处理大量数据带来了非常大的便利,它可以通过分布式计算提供高性能的并行数据计算,并基于分布式文件系统(HDFS)来实现海量数据的可靠存储。然而,Hadoop基于Kerberos的访问控制机制并不能有效地保护用户的隐私数据,和原有的访问控制模型类似,基于访问令牌的访问控制模型是通过对用户身份进行验证,当用户的身份认证通过时,持系统颁发的访问令牌就可以对Hadoop集群进行访问,而其在集群中的操作便不受监管。针对此,刘莎等[1]提出了基于信任的访问控制模型,通过对用户的行为记录结合信任值计算算法用于Hadoop访问模型来限制用户的访问行为,但只考虑到了用户的操作行为,并没有对隐私数据的保护提供一种有效的保护措施。

近年来,有学者提出了基于风险访问控制模型,即在无法准确为用户指定其所可以访问的数据下又能保持数据流通程度最大。2007年,IBM研究中心的Cheng等[2]就模糊多层次的风险访问控制进行了理论研究;2010年,美国普渡大学的Ni等[3]在Cheng等的工作基础上分析了模糊风险访问控制的最优模糊策略;2012年,Kirkpatrick 等[4]针对访问控制过程中服务器作为访问评估的角色进行了研究;同年,Pashalidis等[5]通过模糊策略的风险访问控制实现了隐私和效用的平衡;2014年,冯登国等[6]指出风险访问控制可以用于大数据隐私保护,在此方面Wang等[7]做了有益探索,将风险访问控制应用于医疗数据的隐私保护。本文在此基础上,建立一种面向Hadoop平台的风险访问控制模型,先对访问主体和客体进行访问标签的设定,通过收集历史行为记录,并比较用户信息量和平均信息量之差来建立风险值计算函数;其次,建立追踪链来对风险值的波动幅度进行检测;最终实现基于风险的访问控制模型。

2 风险访问控制模型

传统的访问控制模型都是基于关口的访问控制模型,对于授予权限的用户的后期行为并没有进行有效的监管,从而导致系统中隐私数据的泄露。

在本文的访问控制模型中,基于历史访问行为记录,引进信息熵的方法计算用户访问系统得到的信息量,以及系统中所有用户因为相同目的访问得到的平均信息量,进而计算风险值,并对风险值进行存储,通过追踪链对风险值变化波动幅度进行周期性的跟踪。本文的风险访问控制模型生成的详细步骤如下:

1)对访问主体和客体进行标签的设定;

2)基于信息熵计算风险值;

3)风险值追踪链的建立。

2.1对访问主体和客体设定标签

用户的每一次访问都会对访问主体即用户设定一定的标签,在医疗系统中,可以以医生的访问目的等信息来作为其访问的标签;对于访问客体也要设定标签,如病人的敏感数据,就可以通过国际疾病分类ICD-10来设定标签。

2.2风险值计算

系统会定期对用户的访问行为记录进行分析,并计算风险值。在对用户iu的访问行为进行分析时,将每一个用户相同的访问目的标签

同样,也可以在系统的历史数据行为记录中,得到相同的访问目的gi的所有用户uall的访问记录,并得到allu的平均信息量表示allu的信息量总和,表示系统中这些用户的数量,通过比较用户 ui和 uall的信息量,就可以得到在相同访问目的gj之下的差值,即风险值

在系统中,周期性地对用户所有的访问目的进行求和,就可以得到用户的风险值为

从中可以看出,在相同的访问目的下,当用户得到的信息量相比系统中所有的用户得到的信息量偏大时,用户的风险值也会随之增加,因而通过这种方式,系统就可以对已经授权访问数据用户的访问行为通过风险值进行约束,当其风险值大于系统设定的阈值时,系统就会限制其访问,从而可以防止一些恶意访问等带来的隐私数据的泄露。

最后,设定系统会周期性根据每一个用户的身份信息等设定一定的风险阈值,并且风险阈值会在用户访问时由于用户的风险值的增加而减小,其从而得到风险访问控制的判断函数为

2.3风险值追踪链

考虑到风险是根据用户的历史访问行为记录进行计算的,因而在风险值的产生和访问过程中有可能存在一定的窗口期,在此期间,用户有可能会一次性地将分配给他的风险阈值用完,继而产生一定程度的隐私泄露,为了将此隐私泄露的程度降到可控的范围之内,对风险值的波动程度进行追踪,并最后设定系统的波动可以容忍的波动阈值,如果用户的波动范围超过该阈值,则系统禁止其访问。

首先,建立一个追踪链S用来存储系统中所有访问用户的风险值,表示用户一段时间内的风险值,且其中,表示用户在时间的风险值波动幅度,且其值为用表示用户这段时间的波动幅度,则

其次,规定系统可以容忍的波动幅度为θ,得到用户和系统容忍度的一个判断函数

2.4风险访问控制模型

结合风险值的计算以及风险值的波动范围来对系统中的敏感数据进行保护,当用户的风险阈值小于0时,系统会禁止其访问系统中的数据,另外,由于风险值的计算系统中会存在一定的窗口期,因而会定时地跟踪风险值的波动幅度,当其超过系统规定的幅度时,系统同样也会禁止其访问,从中可以看出,当用户访问系统时

当access=2时,系统允许其访问系统中的数据,当access<2时,可以判断出用户可能是风险阈值小于0或者其风险值的波动范围超过了系统容忍范围从而导致其小于2,因此对于这些授权用户的访问行为进行了约束。具体的风险访问控制模型如图1所示。

3 基于风险访问控制模型用于Hadoop平台

图1 风险访问控制模型

基于Kerberos认证协议的Hadoop访问控制模型是一种关口式的访问控制,根据用户的身份,系统会颁发票据,用户持此票据便可以访问Hadoop集群,并对集群中的数据进行分布式读取和计算,但对于用户在集群中的操作行为并没有进行监控,这样就会导致授权用户在集群中的操作不受约束,本文基于此,将风险的访问控制模型结合Kerberos协议用于Hadoop的访问控制模型中,来实现对已经授权用户的访问行为进行约束,进而达到对平台中隐私数据的进一步保护。

3.1基于Kerberos认证协议的Hadoop访问控制模型

Hadoop1.0.0版本之后,才在其中加入了基于Kerberos认证的访问控制,在集群运行时,集群内的节点使用密钥进行认证,只有通过认证之后才能正常访问节点,这种认证确保了Hadoop集群的可靠安全。

Kerberos机制解决了客户端到服务器和服务器到服务器端的认证,在其KDC上会产生客户端、主节点和子节点之间相互通信的密钥Keytab,通过这些Keytab,节点之间就可以进行互相的认证,并提供相应的服务,防止了被冒充的可能性。具体的访问控制分为两级:服务层授权控制(service level authorization)为系统级,用于控制用户是否可以访问集群;另一级包括控制mapred队列权限访问(access control on job queues)和控制文件权限访问(DFSPermmision),分别用于控制Hadoop平台中的mapreduce计算和文件的读取权限。在Hadoop平台中,包括master节点和slave节点,master节点根据用户的访问令牌完成身份的验证工作;slave节点分为Datanode节点和Jobtarcker节点,分别完成分布式计算和分布式读取数据的验证,在Datanode节点,用户持有block access token访问令牌来对数据进行数据的读取等操作,如果DFSPermmision验证通过,则可以进行数据的读取操作,在Jobtarcker节点,用户持有job token进行数据的计算等操作,如果access control on job queues验证通过,则允许用户的计算任务放入到计算序列中,等待mapreduce的计算,图2给出具体的访问控制流程。

3.2Hadoop平台加入风险的访问控制新模型

基于原有的Hadoop访问控制模型,结合本论文讲述的风险访问控制模型用于其中,当用户访问集群时,持访问令牌访问集群,master节点不再仅仅充当验证身份的作用,还可以通过信任值数据库计算用户的风险值,并结合追踪链中的风险值的波动幅度,来判断用户是否可以访问系统中的数据,由于对风险值的计算是根据用户的历史访问行为,因而可以充分利用Hadoop的心跳机制来实现对用户操作行为的收集。其中关于标签的设定以及相关的算法定义如下。

图2 基于Kerberos的Hadoop访问控制模型

算法1用户的访问行为记录收集算法(behavior collecting)

该算法首先会判断有没有用户访问集群,有用户访问集群,根据访问目的和访问数据的标签,结合系统中时间,会在Hadoop集群中相关的slave节点生成一条访问记录,继而通过心跳机制,可以将这些访问记录周期性地传送到master节点,master节点在收集到这些信息后,会将其写入到信任值数据库。

算法2风险访问判断算法(risk computing)

该算法首先是从信任值数据库中遍历用户的访问行为,如果是第一次访问集群,则对用户的风险阈值进行初始化,如果不是,则计算用户的风险值,更新风险阈值,并将此次访问中的风险阈值和风险值存储到追踪链s中,最后,通过AccessCheck(risk)和RiskCheck(clientID)2个判断函数分别对用户的风险值和波动幅度进行检验,如果验证通过,则用户可以继续访问集群。图3是风险访问控制模型用于Hadoop现有的访问控制机制。

4 仿真实验

4.1实验设置

在实验中,以医疗数据用于Hadoop平台来实现对医疗数据的隐私保护,这里的数据来源于真实的医疗数据,包括对1500个病人的访问事件,在本实验中,医生分为诚实者和恶意者,在Hadoop平台中,信任值数据库中存储的是每一个医生的访问记录,对于每一个访问记录,包括用户的信息、问主体标签(通过医生所在的科室)和数据标签,对于每一个访问主体标签的产生,都会对应一系列的数据标签,病人的数据标签可以通过ICD-10疾病编码进行设定,在这里,设定医生表示因为某一个访问目的访问数据的疾病编码,另外用和来表示在疾病代码中属于的主类和子类,因而并且D表示所有的疾病代码集合,如表1所示。

图3 加入风险之后的Hadoop访问控制模型

最后,根据医生的访问记录通过风险访问控制模型来对风险值进行计算,每一个用户的风险值即根据用户所属的科室(访问目的)和ICD10(数据标签)之间的关系结合信息量来进行确定。

4.2实验结果

实验设置500个医生,500个医生都可以授权访问集群,即每一个医生都持有合法的访问令牌访问集群,并设定其中10%的医生为恶意医生,这些恶意医生的定义为以超过5%的概率来访问系统中不属于自己主类的数据,通过对平台中的信任值数据库进行风险值的计算,可以得出其中诚实医生和恶意医生的平均风险值如表2所示。

表1 疾病代码及医生科室关系

表2 诚实医生与恶意医生的平均风险值

从表2可以看出,诚实医生比恶意医生的风险值明显要低,即在系统允许所有医生访问集群的情况下,通过风险值的计算,可以发现恶意医生平均的风险值明显大于诚实的医生,即将风险的访问控制用于Hadoop大数据平台,可以有效地降低授权用户进行不合法的操作。

5 结束语

本文提出了一种基于风险的访问控制模型,并将其用于现有的Hadoop平台的访问控制框架中,其优点在于:

1)通过设置访问控制中主体和客体的标签,并基于用户的历史行为操作记录,利用信息熵的计算方法来计算出用户的风险值,使该访问控制模型不再是一个“关口模式”,而是一种动态的、更加细粒度的模型;

2)在用户允许访问的同时,系统会通过风险值追踪链来实时记录风险值的变化幅度,使用户在访问系统和风险值计算的窗口期期间,有效地降低系统中数据隐私泄露;

3)基于Hadoop原有的访问控制模型,以及master节点通过心跳机制实时收集每一个slave节点的信息,可以有效地收集用户的操作记录,实现了将基于风险的访问控制模型用于Hadoop大数据平台中,在master节点验证完身份之后,基于风险值的计算及风险值幅度的变化,验证用户的访问风险,从而在合法的用户可以进入到Hadoop集群的前提下,能对授权用户的访问行为进行进一步约束,继而可以保护平台中的隐私数据。

本文由于实验数据所限,因而对实验误差会有一定的影响;另外,在风险访问控制模型的基础上,如何对风险阈值和风险值波动容忍度进行合理的设定是下一步研究重点。

算机科学,2014,41(5):155-163.LIU S,TAN L.A access control model based on trust in Hadoop cloud platform[J].JournalofComputerScience,2014,41(5):155-163.

[2]CHENG P C,ROHATGI P,KESER C,et al.Fuzzy multi-level security:an experiment on quantified risk-adaptive access control[C]// IEEE Symposium on Security and Privacy.c2007:222-230.

[3]NI Q,BERTINO E,LOBO J.Risk-based access control systems built on fuzzy inferences[C]//The 5th ACM Symposium on Information,Computer and Communications Security.c2010: 250-260.

[4]KIRKPATRICK M S,GHINITA G,BERTINO E.Privacy-preserving enforcement of spatially aware RBAC[C]//IEEE Transactions on Dependableand Secure Computing.c2012:627-640.

[5]PASHALIDIS A,PRENEEL B.Evaluating tag-based preference obfuscation systems[C]//IEEE Transactions on Knowledge and Data Engineering.c2012:1613-1623.

[6]冯登国,张敏,李昊.大数据安全与隐私保护[J].计算机学报, 2014,37(1):246-258.FENG D G,ZHANG M,LI H.Big date security and privacy protection[J].Journal of Computers,2014,37(1):246-258.

[7]WANG Q,JIN H.Quantified risk-adaptive access control for patient privacy protection in health information systems[C]//The 6th ACM Symposium on Information, Computer and Communications Security.c2011:406-410.

[8]李凤华,苏铓,史国振,等.访问控制模型研究进展及发展趋势[J].电子学报,2012,40(4):805-813.LI F H,SU M,SHI G Z,et al.Research progress and developing trends of access control model[J].Journal of Electronics,2012, 40(4):805-813.

[9]刘逸敏,周浩峰,王智慧,等.Purpose融合:基于风险 purpose的隐私查询访问控制[J].计算机学报,2010(8):1339-1348.LIU Y M,ZHOU H F,WANG Z H,et al.The purpose convergence: privacy query access control based on risk purpose[J].Journal of Computers,2010,(8):1339-1348.

[1]刘莎,谭良.Hadoop云平台中基于信任的访问控制模型[J].计

Risk access control model for Hadoop

LI Jia-shuai1,2,PENG Chang-gen2,3,ZHU Yi-jie1,2,MAHai-feng1,2

(1.College of Computer Science&Information,Guizhou University,Guiyang 550025,China; 2.Institute of Cryptography&Data Security,Guizhou University,Guiyang 550025,China; 3.College of Science,Guizhou University,Guiyang 550025,China)

Traditional access control models are hard to restrain the malicious behavior of authorized users.Accordingly,Hadoop platform with this access control model is difficult to prevent the risk of privacy disclosure.A model of access control based on risk was proposed.A risk function of information entropy was designed from users’historical behavior based on setting the tags of subject and object.Furthermore,the tracking chain of risk was built,which could adjust the users’access authority dynamically according to the risk value and its volatility.Combining with access token and risk supervision,the risk access control mechanism for big data privacy protection was realized,which could be applied to enhance the security of Hadoop Kerberos protocol.Finally,the experiment result shows that the model can constrain the authorized users’access behavior effectively.

risk access control,Hadoop,privacy protection,information entropy,big data

TP309

A

10.11959/j.issn.2096-109x.2016.00015

2015-11-03;

2015-12-02。通信作者:彭长根,peng_stud@163.com

国家自然科学基金资助项目(No.61262073,No.61363068);全国统计科学研究计划基金资助项目(No.2013LZ46);贵州省统计科学研究课题基金资助项目(No.201511)

Foundation Items:The National Natural Science Foundation of China(No.61262073,No.61363068),The National Statistical Scientific Research Project(No.2013LZ46),The Guizhou Province Statistical Scientific Research Project(No.201511)

李甲帅(1989-),男,山西运城人,贵州大学硕士生,主要研究方向为密码学与可信计算。

彭长根(1963-),男,侗族,贵州锦屏人,博士,贵州大学教授、博士生导师,主要研究方向为密码学、信息安全。

朱义杰(1989-),男,山东临沂人,贵州大学硕士生,主要研究方向为密码学与可信计算。

马海峰(1990-),男,四川乐山人,贵州大学硕士生,主要研究方向为密码学与可信计算。

猜你喜欢

访问控制集群标签
海上小型无人机集群的反制装备需求与应对之策研究
无惧标签 Alfa Romeo Giulia 200HP
一种无人机集群发射回收装置的控制系统设计
不害怕撕掉标签的人,都活出了真正的漂亮
Python与Spark集群在收费数据分析中的应用
ONVIF的全新主张:一致性及最访问控制的Profile A
勤快又呆萌的集群机器人
动态自适应访问控制模型
浅析云计算环境下等级保护访问控制测评技术
标签化伤害了谁