基于云环境CPK认证的研究

2017-08-24 14:32舒以婉秦军梁耀元谢丹鸿
计算机时代 2017年8期
关键词:访问控制云计算

舒以婉+秦军+梁耀元+谢丹鸿

摘 要: 从云计算的安全问题入手,引出了CPK认证系统和访问控制的概念,介绍了CPK认证的模式,通过分析比较CPK与PKI两种身份认证方法,探讨了CPK在云环境下的适用性,并对基于角色的访问控制模型作了详细的介绍,最后对基于角色的云平台访问控制构架的模型进行分析,提出了CPK认证方法与RBAC3访问控制模型相融合的方案。

关键词: CPK; 认证体系; 云计算; 访问控制; 基于角色的访问控制

中图分类号:TP309 文献标志码:A 文章编号:1006-8228(2017)08-06-04

Abstract: This paper begins with the security problem of cloud computing, to draw forth the concepts of CPK authentication system and access control, and introduces the CPK authentication mode. By comparing the CPK and PKI authentication methods, the applicability of CPK in cloud environment is discussed, and the role-based access control model is introduced in detail. Finally, the model of role-based cloud platform access control architecture is analyzed and the scheme which fuses the CPK authentication method and RBAC3 access control model is put forward.

Key words: CPK; certification system; cloud computing; access control; role-based access control

0 引言

云計算拥有庞大的用户数,然而云计算中数据的异地存储安全问题、用户隐私数据的保护、用户数据的安全以及用户身份验证等问题,是云计算发展过程中亟待于解决的问题。如何管理用户的隐私数据是一个十分复杂的问题,为此我们引入了CPK认证和访问控制的概念,CPK可以为无序的网络环境提供身份认证的技术,访问控制可以控制用户在访问过程中的权限,这样可以降低互联网泄密风险,为云计算提供一个安全的网络环境。

1 CPK简介

CPK标识认证算法是由我国学者南湘浩在1999年开始提出的[1],2007年在欧洲密码年会上得到国际的认可。该算法建立在非对称加密算法的基础上,产生密钥对组合依据的理论是椭圆曲线密码学(Elliptic

Curve Cryptography, ECC)密钥复合定理[2]。以此来管理标识密钥的产生和密钥复合,CPK密码体制的安全性可大大提高。CPK密钥管理体制是基于椭圆离散对数问题构建的,根据该原理产生公、私钥矩阵,并将用户标识映射到矩阵上而生成大量的公、私钥对,由此实现大规模的密钥分发。相关学者通过对不同认证方式的分析比较, 认为CPK认证方式有独特的优势,是一种新型的认证技术。

CPK标识认证采用集中产生,分散管理的模式,其运行过程[3]如下。①注册中心接收来自用户的申请审核其是否为标识惟一的合法用户,审核通过后把用户ID标识交给CPK认证系统核心——密钥管理中心KMC。②密钥管理中心KMC联系负责产生密钥的密钥生成中心分发密钥。③密钥生成中心将用户标识映射成序列并基于公私钥矩阵来生成用户独有的公钥、私钥。④密钥管理中心KMC调配已生成用户的公钥私钥对,并将生成信息返还给证书注册中心。⑤证书注册中心将相关信息制作成ID证书,返回给用户,用户申请得到处理并结束。

2 CPK在云计算中的适用性

因PKI认证技术成熟且支撑设备完善,所以目前大多数认证系统的设计与实现是针对PKI进行。表1给出了对CPK与PKI一些主要功能的比较。

由表可知,PKI密钥采用分散产生,集中管理的模式,用户私钥由自身产生保存,公钥是计算机随机计算生成的一组数据,因此公钥的产生不具备规模性。它依赖于CA链进行认证,而LDAP目录库一直处于在线运行状态,维护量巨大。在CA的处理能力到达极限时,一旦核心CA出现失败,则整个PKI认证系统将毁于一旦,多层结构的CA信任度会在推移过程中逐渐淡化,用户数据的安全堪忧。

CPK公、私钥矩阵是基于椭圆曲线密码学建立,实现了无须第三方参与的重大突破,且其密钥采用集中生成,分散管理的方式,在用户注册时就确认了认证关系,安全性得以提高。且CPK不需要外来设备和协议的支持,所以CPK具有运算速度快、占用存储空间小、安全性高等优势。所以CPK更适宜在云计算中使用。

3 基于角色的访问控制

许多企业已经广泛使用云计算,也推出了大量的云计算产品及平台。云计算的服务模式有公有云、私有云;公有云用于提供给大量的用户访问,私有云需要有更高的权限,通常是企业内部才能访问。云环境下的服务结构极为复杂和不稳定,需要对大量的用户进行身份认证和访问控制。有了访问控制,可以让拥有权限的合法用户访问受保护的内容,也防止了非法用户访问和使用非其权限的内容,这样可以更好地维护云计算环境的稳定。

访问控制系统一般包涵主体、客体和安全访问政策三个方面。常用的访问控制模型主要有角色访问控制模型[4](Role Based Access Control,RBAC)、自主访问控制模型(Discretionary Access Control,DAC)以及强制访问控制模型(Mandatory Access Control,MAC)这三种。其中,基于角色访问控制模型(Role Based Access Control,RBAC)在云计算中应用最为广泛。

基于角色访问控制模型RBAC的基本思想是:在用户与访问权限之间建立“角色”,有相对应的权限,且比较稳定;用户与角色之间存在映射关系,但不是惟一的,可以有多种映射关系。当用户分配到了一个角色时,该用户拥有该角色的全部操作权限。

与其他两种访问控制不同,基于角色访问控制不是将访问权限与用户直接建立关系,而是通过“角色”建立间接访问,这样基于角色的访问控制模型可以分配权限,可以通过角色更方便地拓展权限。

RBAC模型具有三大原则:最小特权、责任分离和数据抽象原则[5]。模型将用户与权限分离,加入角色这个中间映射关系,当用户被分配一个该权限相应的角色时,用户才拥有该权限。这种分布式结构化模型可以让管理员更好地管理维护,管理员不用负责管理和维护整个模型,只要负责其中一部分。类似于面向对象模型,图1显示了RBAC模型关系图,在图1中,用户与角色、角色与权限相互映射。用户与角色存在多对多关系,角色与操作权限也存在多对多关系。

RBAC96模型有RBAC0模型、RBAC1模型、RBAC2模型以及RBAC3模型这四种模型[6]。RBAC0是RBAC96最基本的模型,而RBAC1与RBAC2继承了RBAC0的所有特性,并分别在RBAC0上进行扩充,RBAC3是RBAC1与RBAC2的结合。

RBAC0由用户集合、角色集合、权限集合、目标集合、操作集合五个部分组成,五个部分相互映射存在关系。RBAC96模型核心思想是:将权限归类分配给各种角色,并为用户分配相应的角色,用户的访问权限由其角色决定。

RBAC1模型在RBAC0模型的基础上建立了一种角色层次关系,說明角色间的关系不再像RBAC0一样平等的,而是像面向对象一样,具有层次关系,可以继承。也就是说,一个角色可以拥有另一种角色的所有基础特征,并在此基础上设定该角色自身特有的性质。但有些角色并不是所以权限都能够继承,角色的公有权限能继承,而其私有权限则被自己保护保留。公有权限类似面向对象中类的共有属性,是低级角色中拥有的,能够被高级角色所继承的权限。私有权限类似于面向对象中的类的私有属性,该类权限仅能属于低级角色,不可以被高级角色继承。受限特征权限是指该类权限能否被继承有一定的不确定性,该不确定性取决于继承的方式和动态的特征取值范围。

RBAC2没有角色关系,它是在RBAC0的基础上,加入了约束集合。约束定义了强制性规则,这些约束限制条件[6]包括:角色互斥,即同一个用户不能同时担任的两个角色,称这两个角色互斥;角色数量的限制,即一个用户可以担任的角色数量有限,或者一个角色所拥有的访问许可数目有限;角色的时间限制,即一个用户被分配到角色的时间不是永久的,而是在一定的时间范围内行使该权限;先决条件角色,用户为获得某些高等角色必须首先拥有低等角色,则称低等级角色为高等角色的先决条件角色;运行时约束,一个用户具有两个角色,但是在运行时不可同时激活这两个角色。有了这些约束,可以对对云计算环境中用户访问资源的权限做了更细致的划分,可以更好得维持云计算的稳定与安全。

RBAC3同时在RBAC0上增加建立了一种角色层次关系与约束集合,是RBAC1与RBAC2的结合。

4 云计算环境下的访问控制

大数据时代,随着云计算的蓬勃发展,许多行业都开始应用这一技术来处理大量的数据。云计算对各个行业及领域都具有很大的影响。而云计算的安全性成为这项技术能否向前推进的关键。

云计算的安全问题本质上是访问控制的问题,即保证云计算的安全要做到禁止对信息资源的非授权访问和非授权操作,保证数据的完整性和保密性。访问控制是先确定访问者身份,再根据其身份进行分配权限,未分配的权限则禁止访问。两者目的相同。RBAC模型基于角色将用户与权限分离,在管理层面上简化了权限的管理,便于管理者理解与操作。比较其他的访问控制模型更具有优势。

基于云环境下角色的访问控制设计基于角色的云平台访问控制构架的模型如图2所示。该模型由交互平台、统一授权平台、基于角色的访问控制模块、服务目录、和云平台这五个功能模块组成。

从图2中可以分析出该模型的工作流程:当用户需要服务时,首先在交互平台登录并申请所需权限的角色,接着统一授权平台根据该用户的信息以及所拥有的角色与权限之间的关联对用户进行相应角色权限的分配。在基于角色的访问控制模块用户的访问资源需进行合法性检验,用户只可以访问其角色所对应的权限下的资源,否则检验无法通过。检验通过后,用户在服务目录中看到各种角色权限可以访问的各种资源,并选择所被允许的部分进行访问。最终,在云平台上,用户可以享受到在交互平台上所申请的服务。

一个完整的系统在进行访问控制之前,首先要先对其身份进行认证,本文提出了CPK与基于角色的访问控制的融合。我们选择RBAC3模型与CPK进行结合,该模型包含了RBAC96的两个关键技术—继承和约束。两项技术对云计算中的访问控制做了更为细致的描述,增强控制的力度,解决了云计算中访问控制过程中如重复指派角色、权限冲突等问题。这两者的结合将进一步解决云计算中的安全问题,如图3所示。

图3中,U表示用户集,P表示权限集,S表示会话集,R表示角色集。其中UA表示多对多的角色和用户的分配关系,PA表示从多对多的从角色和权限的分配关系,US表示用户和对话形成的一一对应的映射关系,SR表示会话和角色形成的一一对应关系,RH表示角色层次,即RBAC模型中的继承关系。

从图3中可看出,CPK和访问控制通过用户标识联系在一起,在CPK系统中,用户先向注册中心发出申请,在通过注册中心的审核后将标识发给密钥管理中心KMC,KMC联系密钥生成中心生成密钥对,返还给注册中心,注册中心生成用户ID证书返还给用户。访问控制中根据用户标识分配角色,并根据角色为用户分配相应级别的权限。再加上RBAC中继承和约束两个重要的技术,该融合使得云计算的安全性有所提高。

5 结论

本文首先对CPK的相关原理作了阐述,介绍了标识密钥的产生过程以及密钥的复合过程,对CPK体系结构作了简要介绍并将CPK与IBE、PKI作了对比分析,得出了CPK应用到云计算环境中是可行的结论。再以模型图的形式对基于角色的访问控制模型作了简要介绍,提出了基于云环境下CPK认证与访问控制模型的融合方案,设计了在云计算环境下将CPK认证技术与RBAC3模型相结合的访问控制模型,该模型可进一步提升基于角色的访问控制模型的安全性。

6 结束语

本文主要研究了将CPK组合公钥密码体制引入到云计算,用CPK身份认证方式解决云计算中身份认证方面的安全问题。介绍了CPK原理,分析了CPK在云计算中的适用性。

我们提出云环境下基于角色的访问控制方案,为了提高云计算的安全性,将RBAC3模型与CPK身份认证相结合。RBAC3模型对云计算环境下用户访问云资源时,在用户角色、可访问资源数量、先决条件等方面作了约束,结合CPK身份认证系统中用户标识的惟一性,实现云访问控制策略安全性。

在大数据时代,云计算在高速发展的过程中面临着巨大的安全性挑戰。我们在提出理论构想的同时,还需要后期进行仿真实验对我们所设计的访问控制模型进行实验,对比预期效果,来验证该模型在实际应用中的可行性。

参考文献(References):

[1] Dan Boneh, Matt Franklin. Identity based Encryption from Weil Pairing. In Proceedings of Cryptology-Crypto' 01, LNCS 2139.Berlin:Springer-Verlag,2001:213-229

[2] 南相浩.CPK密码体制与网际安全[M].国防工业出版社,2008.

[3] 刘巧瑜,鞠磊,李世岗.基于CPK的身份认证方法及应用研究[J].北京电子科技学院学报,2013.21(2):76-80

[4] Sandhu R,Coyne E J,Feinstein H L,et al.Role Based Access Control Models.Computer,1996.29(2):38-47

[5] 刘伟.基于角色的访问控制模型在安全操作系统中的实现[D].中国科学院研究生院(软件研究所)硕士学位论文,2003.

[6] 郭军.基于角色的访问控制分级授权管理的研究[D].西安电子科技大学硕士学位论文,2012.

猜你喜欢
访问控制云计算
ONVIF的全新主张:一致性及最访问控制的Profile A
志愿服务与“互联网+”结合模式探究
云计算与虚拟化
基于云计算的移动学习平台的设计
实验云:理论教学与实验教学深度融合的助推器
云计算中的存储虚拟化技术应用
动态自适应访问控制模型
浅析云计算环境下等级保护访问控制测评技术
大数据平台访问控制方法的设计与实现
基于岗位映射的应急组织间跨域访问控制研究