论文部分内容阅读
Hadoop是一个开源的云计算平台,而云计算作为一种新的计算模式,是分布式计算、网格计算的延伸,通过将大规模的可利用的有效资源进行整合,把计算资源、存储资源等以服务的形式提供给用户。云计算通过高性能计算、大容量存储等改善了人们的生活,但云安全一直是云计算发展的瓶颈,在很多情况下,系统对安全的要求比计算更重要。本文针对Hadoop为基础的云平台作出以下工作。首先,本文针对用户与Hadoop云平台进行交互时在公共网络信道上进行数据通信存在不安全等因素的问题提出了基于身份认证与数据认证的混合认证方案。该方案从结构、性能、安全多方位进行了综合考虑与设计。结构方面针对云计算的特点与多方面的综合考虑采用B/S的方式,性能方面根据数据的密级进行分级加密以减少不必要的性能消耗,在安全方面既能保证用户身份的正确性同时也能确认云端接收到的数据的拥有者,保证数据确实来自对应用户。该方案包括了用户身份的认证,密钥的产生、分发、传送、获取,数据的加密、签名、抽样、检验、存储等多个子过程。每一步骤都进行了精心的考虑,使本方案最终能达到方便、高效、安全的通信效果。其次,针对Hadoop集群中可能出现合法用户对数据进行非法操作,提出在Hadoop节点上加入基于XACML的角色访问控制策略。用户数据上传到Hadoop后,Hadoop并没对数据进行严格的访问控制。Hadoop集成了Kerberos安全协议能有效防止非法用户对集群资源的访问,但并不能防止合法用户对资源的非法访问。在Hadoop节点中加入基于XACML的角色访问控制策略能有效阻止非法用户的访问与合法用户的非法访问,且策略被分布式地执行在数据节点上,除了能抵制外部攻击,还能防御内部攻击,保证整个Hadoop集群的安全性。最后,我们搭建了以Hadoop为基础的云平台,对提出的方案进行实验。通过功能测试与性能测试,我们证明了本文提出的方案虽然会带来部分性能消耗,但是可以提供预期的安全效果,且这种消耗对于系统来说是可以接受的。