论文部分内容阅读
随着计算机通信技术的飞速发展和数据的爆炸性增长,我们步入了大数据时代。访问控制,作为一种重要的安全手段,对其判定评估引擎提出了越来越高要求,其中,判定评估的高效性是重要性能指标之一。然而,绝大多数的传统判定引擎面对海量用户及策略规模已经遭遇了瓶颈。尽管已经存在一些关于访问控制判定引擎性能优化的研究工作,但是,这些工作大多或者不是以大数据为背景,或者在实际部署时存在种种局限。 鉴于此,本文提出了一种新型的、基于XACML的访问控制引擎优化框架,该框架采用一种“两层架构”并采用多层次的聚类技术,通过预处理的手段,将系统中的实体完成聚类,进而基于聚类的实体簇将相关联的访问控制策略(policy)进行聚集,待评估时仅需判定较小规模的关联策略集合即可,以达到在大规模策略、细粒度要求下的高效判定评估。为实现该框架,本文从属性预处理模块、两阶段不同粒度的聚类设计、集合运算的优化模块等方面展开研究。其中,属性预处理模块是为了应对大数据背景下实体高维度属性可能造成的聚类“维度灾难”的挑战,而针对实体属性进行的预处理工作,是服务于两阶段聚类的前置处理。两阶段聚类设计是本研究的核心,也是聚集策略的关键环节,在该部分,本文分别针对“种类属性”(Categorical Attributes)和“数值属性”(Numerieal Attributes)的不同特点,基于不同的聚类技术,设计了两阶段的聚类工作,并形成了层次分明、并行度高的“两层架构”;同时,在该部分,我们还基于一阶逻辑设计了策略(policy)的多代推演规则,并做出了相应的形式化证明。集合运算优化模块是在策略聚集完成的情况下,基于XACML的策略语言特性及集合论所做的进一步削减策略的操作。此外,本文还对框架部署后的运维机制以及原型系统实现过程中的相关细节进行了研究和讨论。最后,基于实现的原型框架系统,本文将其应用于Sun XACML[3]以及Enterprise XACML[4]两大主流引擎上进行了实验,结果表明针对于大规模的策略集,本框架能够有效地削减访问控制策略规模并提升判定效率(对104量级的策略规模,在时间效率上提升约1~2个量级)。