论文部分内容阅读
Web服务作为一种新型的Web应用模式,以其平台无关性、松散耦合性、开放性等优良特性近年来在诸多领域被广泛应用。与此同时,Web服务也在应用中暴露出许多技术漏洞,使Web服务面临许多技术挑战,安全问题就是其中之一。为保证Web服务的正常使用,Web服务的安全是重中之重,但由于Web服务的安全需求包括数据机密性、完整性、不可否认性等多个方面,加之自身具有动态联合、分布性等特点,传统的安全技术如防火墙、SSL/TLS等无法满足Web服务整体的安全需求,因此Web服务中的安全问题越来越受到重视。本文主要对Web服务通信安全方面的问题进行了研究,主要工作如下:1.分析了Web服务的概念和特点以及Web服务方面的关键技术,包括XML技术和WSDL、UDDI以及SOAP等。分析了当前Web服务通信面临的安全挑战以及安全需求,对当前已有的Web服务安全通信技术进行了研究比较。分析了由于Web服务自身的动态联合、分布性等特点以及现有安全技术对保护Web服务通信安全的不足,详细论述了WS-Security规范以及XML数字签名和XML加密技术等通信安全技术,并对Web服务访问控制方面的安全规范SAML和XACML进行了相应的研究。2.以原有的基于SOAP的Web服务安全通信机制为基础,提出了Web服务安全通信模型,模型包括消息处理模型和访问控制模型两个子模型,用以解决Web服务安全通信中的问题。3.在消息处理子模型中,结合WS-Security规范和XML数字签名及XML加密规范设计实现了XML签名组件和XML加密组件;提出在SOAP消息头中添加安全序列号和双时间戳来防止重传攻击以满足不可否认性。XML签名组件主要为Web服务的通信提供数据完整性和身份认证,XML加密组件满足SOAP消息的机密性。消息处理模型解决Web服务信息在传输过程中的安全问题。4.分析了已有的访问控制模型,包括传统访问控制模型中的自主访问控制模型、强制访问控制模型和基于角色的访问控制模型,以及几种新型的访问控制模型,以基于角色的访问控制模型和基于属性的访问控制模型为基础,提出了基于属性的角色分级访问控制模型,并详细介绍了模型中元素的定义、策略规则等,为Web服务提供访问控制功能。基于属性的角色分级访问控制模型,将角色作为实体的一个属性来处理,并将角色分为服务级和资源级两级,访问控制模块解决消息到达后的身份认证问题。5.对Apache Axis2进行了分析,详细介绍了其工作方式和工作流程,并将所设计的组件通过Handlers在Axis上集成实现。本文的创新点是提出在SOAP消息中添加时间戳和双序列号,用以防止重传攻击,保证不可否认性。以基于属性的访问控制模型和基于角色的访问控制模型为基础,设计了一种基于属性的角色分级访问控制模型,模型继承了基于属性的访问控制模型的优点,并在访问控制模型中加入角色这一属性,使语义更加丰富,角色采用分级的方式,使访问粒度更细。