中间件与软件构件安全性研究毕业论文
2020-02-19 18:14:47
摘 要
Abstract II
第一章 绪论 1
1.1 引言 1
1.2 国内外研究现状 2
1.2.1 CORBA安全研究现状 2
1.2.2 J2EE安全研究现状 2
1.2.3 Web Service安全研究现状 3
1.3 论文主要研究的内容 4
第二章 三种体系结构的描述 5
2.1 CORBA体系结构 5
2.1.1 CORBA概述 5
2.1.2 CORBA安全体系结构 5
2.1.3 ORB核心 7
2.2 J2EE体系结构 8
2.2.1 J2EE架构和它的逻辑层 8
2.2.2 组件与容器 10
2.2.3 J2EE持久化层 10
2.3 Web Service体系结构 11
2.3.1 Web 服务简介 11
2.3.2 Web Service架构及其构件 12
2.4 本章小结 14
第三章 体系结构安全性措施研究 15
3.1 CORBA安全性研究 15
3.1.1 CORBA穿透防火墙 15
3.1.2基于参考模型的安全策略 16
3.1.3对SSL安全技术分析 19
3.2 J2EE安全性研究 20
3.2.1J2EE认证 20
3.2.2 J2EE授权 21
3.2.3 J2EE中的SSL协议 21
3.2.4 基于容器的J2EE安全 22
3.3 Web Service安全性研究 23
3.3.1 Web Service安全基础 23
3.3.2 Web Service相关安全技术 24
3.4 本章小结 25
第四章 J2EE应用RSA加密实现 26
4.1 RSA加密算法的介绍 26
4.2 J2EE系统描述 27
4.2.1 开发工具及环境的介绍 27
4.2.2 功能模块描述 27
4.2.3 测试截图 28
4.3 系统使用的安全措施 35
4.4 本章小结 38
第五章 总结 39
参考文献 40
致谢 41
摘要
中间件和软件组件架构屏蔽异质性和底层网络通信的复杂性,提供透明的发展和用于分布式计算测试平台。为应用系统提供多种通信机制和相对稳定的高层应用接口,但是,中间件服务仍然面临很多问题。其中安全问题一直是设计中间件与软件构件体系结构的一个核心问题。解决中间件安全问题,使得信息安全具有重要的保障,它不仅具有很强的经济意义,而且具有深远的政治和军事意义。针对中间件与软件构件体系结构的安全问题的研究也一直在前进着。本文将对CORBA, J2EE和 Web Service三种中间件体系结构进行分析和研究,从安全体系结构的几个基本的安全服务入手,研究保密性、完整性、认证性以及不可抵赖性等几个特性。列出这三种中间件体系结构内建的安全方案,然后分析这些方案的不足与局限性,提出新的方案,并进行比较讨论。
关键字:中间件;安全;CORBA;J2EE;Web Service。
Abstract
Middleware and software component architectures shield heterogeneity and complexity of underlying network communications, providing transparent development and testing platforms for distributed computing. Providing various communication mechanisms and relatively stable high-level application interfaces for application systems, however, middleware services still face many problems. Security has always been a core issue in designing middleware and software component architecture. Solving the problem of middleware security makes information security an important guarantee. It not only has strong economic significance, but also has far-reaching political and military significance. Research on the security of middleware and software component architecture has also been advancing. This paper will analyze and study the three middleware architectures of CORBA, J2EE and Web Service. Starting from several basic security services of the security architecture, it will study several characteristics such as confidentiality, integrity, authentication and non-repudiation. List the security schemes built into these three middleware architectures, then analyze the shortcomings and limitations of these schemes, propose new schemes, and make comparative discussions.
Key Words:Middleware;Security;CORBA;J2EE;Web Service.
第一章 绪论
1.1 引言
软件构件化(Software Component)技术从大工业生产的灵感涌现,构件技术引入一套更好的体系,它能体现面向对象软件实体本身,给出了将软件实体组装成完整应用程序的方法。这种技术能将大规模软件开发负担减轻,维护成本也相应减少,也大大提升了可重用性。中间件也属于软件构件的其中一种。我们熟知的CORBA、J2EE、Web Service三种中间件体系结构在很多地方得到了广泛的应用,如何保证系统的安全性并且让它们可以稳定安全的运行,是我们值得关注的问题。接下来我们将对这三种中间件体系结构就行分析,找出其中存在的不安全因素,结合相关的安全技术解决安全问题。
CORBA、J2EE和Web Service提供的安全服务能够保证应用系统的安全性,但是这些体系结构仍有关于安全的薄弱环节,在一些系统中,传输的信息要求保密度是非常高的,无论出现什么样的安全问题都会带来难以预料的后果。外国的相关安全产品会存在一些不安全不合法的漏洞,且对高科技产品还控制出口。使得我们很难得到与使用他们的安全技术。而我们国家拥有自主版权的很少,加上技术还不是很成熟,安全技术的开发与研究还在探索当中。因此,对CORBA, J2EE和 Web Service三种中间件体系结构的安全性的分析与研究有一定的实际意义。
在CORBA环境中安全性是复杂但却十分重要的,理论上CORBA规范的每一个环节都和安全有关。在CORBA中,存在着很多安全问题,例如不同ORB之间的互操作性很难实现,防否认依赖于其他组件等等。在应用了CORBA的系统中,有些安全方案可能存在不足之处,为了保证该系统的安全性,必须基于某些现有的规范或者安全技术提出更加可靠的安全方案,来弥补这些不足。我们将通过分析CORBA安全参考模型和对PKI以及SSL安全技术的研究,找出可以弥补这些安全缺陷的安全解决方案。
J2EE提供安全服务是它的安全模型的核心,它为容器和组件提供安全认证、授权、审计服务。基于J2EE开发的系统为企业级应用提供的安全服务有:安全认证、访问控制、数据安全性,J2EE结合了JAAS、JCA/JCE等技术为其系统提供安全保证。但是在审计和数据不可否认性这两项安全服务上并不是很好。
Web Service在英特网上进行分布式计算的应用程序集成平台。中间件技术经过多年的发展,它已成为一种趋势。SSL协议与TLS协议提供传输层的Web Services安全,保证其保密性和数据完整性。通过一些安全技术如SOPA、WSDL、SSL/TLS、XML加密和XML签名来研究其安全需求的解决方案。
中间件的安全对我们来说是很重要的,只要安全得到了保障,才能使我们的信息不被泄露,所以研究这些中间件体系结构是有很深意义的。
1.2 国内外研究现状
1.2.1 CORBA安全研究现状
CORBA安全服务中的一组安全功能实现它的安全性,在CORBA2.0规范之前并没有支持安全服务,CORBA1.8规范只是对安全服务的标准进行了定义。后来明确了在CORBA系统中安全服务是非常重要的。 因此从CORBA2.0开始支持安全服务,并不断修复和完善这些安全服务规范。尽管国内外很多机构都对CORBA的安全性进行研究,但CORBA技术仍然处于发展阶段。
在国外,CORBA的最新研究方向之一是实时CORBA的动态调度,相关的研究还不多,其中具有代表性的有TAO、NRaD/URI实时CORBA以及EPIQ。Douglas C. Schmidt教授已经在开发的TAO系统加入了安全服务的功能,现在TAO系统实现了许多安全性功能。Orbacus基于OpenSSL的FreeSSL插件提供了安全认证、消息完整性及加密等安全服务,功能非常有限。开源项目JackORB实现了SSL服务和通用安全互操作规范中的SAS 服务,也只是给出十分简单的身份验证和授权服务。其他的ORB实现或者CCM平台也都没有提供一个完备的安全服务。除了以上这些,MITRE公司、Rhodes Island大学、SPAWAR系统中心以及Tri-Pacific软件公司对CORBA都有深入的研究,并且取得很多重要的成果。
在中国,东南大学和国防科技大学在CORBA安全服务研究方面是首屈一指的。当时,东南大学在其分布式计算平台ORBUS中按照CORBA安全服务规范V1.5实现了CORBA安全服务。 但其安全功能还很欠缺,其安全服务还有待完善。 国防科技大学在CORBA安全研究方面取得了很多成绩,其中StarBus获得了国家科技进步二等奖,与此相关的许多论文成为高度引用的文章。 他们开发的StarBus也在中国广泛使用。 他们在StarBus和StarCCM平台上开发安全服务,对CORBA服务进行了适当扩展。其传输层支持SSL机制:身份验证层使用通用安全服务中的用户名/密码(GSSUP)机制;属性层支持基于Principal Name类型的标识属性的代理。安全级别1和安全级别2中的某些功能已经实现。访问控制模块使用基本RBAC模型作为授权策略,但它不实现不可否认性。当前版本也不完全符合CORBA安全服务标准。近年来,对CORBA的研究热度有所减少。国内的学者大多都是基于原有的安全机制去改进与实现相关安全性。
1.2.2 J2EE安全研究现状
Sun公司最先提出J2EE规范,并且一直在修改和推广这个规范,国外很多大型公司都很支持J2EE规范并且基于J2EE研发自己的中间件产品同时深入研究。随着J2EE应用的广泛普及,因此J2EE安全技术的研究进一步深入。
在国外,对于J2EE安全性的研究一直有很多丰厚的成果。早些年,外国的很多研究中间件以及相关产品的公司便提出了一些安全解决方案。对于J2EE安全性他们一般从访问控制入手。对类实例级访问的研究就有IBM公司以及Sun公司,后来瑞典皇家理工学院提出了OBJ系统,更提升了J2EE访问控制的安全性。对于JDK中也提供了相关的安全策略,对于JDK的开发除了Sun公司,其他公司与组织也相继发布自己的JDK版本,各有各的优势。其中JDK支持数字签名等功能,再后来便包含了很多的加密算法,为J2EE提供了更高的安全性。
在国内有很多专家学者对J2EE的安全服务做深入的研究,中国人民大学的方美琪教授对J2EE的研究很有权威性,她还基于J2EE开发了很多个项目。第一个国内自主研发的J2EE应用框架是jdon网站推出的,其采用了过滤器与监听器这些组件。对于J2EE安全性验证的研究,刘万军教授采用Spring AOP技术有效的提出了方案来解决相关安全性问题。梁娜研究了J2EE中安全传输与组件安全,她主张利用SSL代理实现安全传输。武汉理工大学的学者李祎对J2EE中的消息中间件安全性进行研究,对身份认证进行实现。我国很多综合性网站都使用单点登录。它提供基于cookie机制的通行证服务,但是这种机制会存在登录证书失效的可能,对于高安全需求的用户存在这很大的隐患。总的来说,在国内对于J2EE的安全性研究还是比较欠缺的,相对的一些先进的技术,国外一直都在掌握着。因此对于其安全性的研究,应该投入更多的时间与精力。
1.2.3 Web Service安全研究现状
Web服务安全模型的研究主要涉及基于XML签名,XML加密和WS-Security规范等等。关于Web服务安全模型,它包含了很多标准和安全技术,例如,XML技术、SOPA以及UDDI。通过上述的这些技术标准来分析和实现安全性。
在国外,关于Web服务的安全性研究的成果很多,例如,佐治亚理工学院计算学院Lenin Singaravelu、Jinpeng Wei、Calton Pu等人提出解决保护安全敏感信息流的问题的方法,一种用于Web服务的中间件体系结构ISO-WSP。David C设计的Web Services安全模型很大程度上保证了一些重要的安全需求。Konstantin Beznosov等人设计的安全模型,介绍了SAML和XACML,在WS-Security安全规范的基础上,在一定程度上确保访问控制的安全。国外对于Web服务安全性的研究一般都关注安全技术核心问题。
我们国家对于Web服务安全模型的研究掌握的技术还有待提高,国内的很多学者都是通过已经存在的安全机制来设计安全模型,或者利用XML等安全技术来实现相关的安全性。在基于SOAP提出的安全模型以及方法中,李慧盈、张长海、李德昌提出一种可以实现安全信息交换的方法,卢文峰教授也对SOAP安全模型进行了研究,在实验中用WSE组件来完成实现,SOAP安全模型可以确保传输的安全,从而提高了Web服务的整体安全性。现在有很多学者对Web服务的安全性进行研究。大部分集中于XML 签名与加密和WS -Security安全协议。
Web服务的安全性对于我们来说是非常重要的,国内外的学者也在积极探索着,希望随着技术的进步,可以满足我们更多的安全性需求,使得信息的安全得到保障。
1.3 论文主要研究的内容
本文主要是对CORBA, J2EEE和 Web Service三种中间件体系结构有关安全性的研究。安全服务是为了加强系统的安全性,防止不正当的安全攻击以及篡改和截取原来的信息。主要有一下几种安全服务:认证(鉴别)、访问控制、保密性、完整性、抵赖性、安全审计以及安全监察。通过细致的分析,找出这三种体系结构内建的安全方案,分析CORBA, J2EEE和 Web Service提供的安全服务中的不足与局限性,提出新方案。
本篇论文分别对CORBA, J2EEE和 Web Service三种体系结构上述的5个主要安全服务进行分析与研究,通过对安全技术和安全规范的运用,例如:XML签名、WS-Security规范、SSL/TLS协议等等,针对它们的安全方案存在的不足,提出新的安全解决方案。以满足信息系统更高的安全需求。为了加深对安全性的理解,还使用了RSA加密算法做了一个小小的实现。
本篇论文的结构如下:
第一章为绪论部分,主要描述了三种中间件体系结构的研究现状。
第二章对CORBA、J2EE、Web服务三种体系结构进行详细描述。
第三章对已有的安全措施进行分析,找出这些安全方案的问题所在。会导致怎样的不安全事故发生。
第四章基于J2EE开发一个员工管理系统,然后用RSA加密用户名及其密码,确保安全性。
第五章是对本篇论文做一个总结,论述工作完成情况。
第二章 三种体系结构的描述
2.1 CORBA体系结构
2.1.1 CORBA概述
CORBA是OMG推出的重要规范,全称为对象请求代理体系结构。OMG为面向对象的应用提供一个公共的框架,当满足这一框架时,就可以在硬件平台和软件系统建立异质的分布式环境用以解决相关问题。OMG采用的技术具有开放性的特点,其方法是:针对某一领域发出Request For Proposal,然后以多方的提议为基础,经过反复的讨论与协商,产生一个通用的标准,CORBA就是经过这样的方式产生的。
CORBA经过了很多阶段的发展,CORBA1.0于1991年被推出,后来经过不断地发展,对其中一系列内容的增强与完善,又陆续发表了CORBA2.0和CORBA3.0。开始对安全服务的支持也始于CORBA2.0版本。对象请求代理(ORB)是CORBA中非常重要的组成部分,为分布式中间件提供服务,ORB主要责任是负责客户和服务器之间的交互,它能让对象相互查找、相互调用。图2.1为CORBA的主要组成部分。
图2.1 CORBA主要组成部分
CORBA的安全参考模型提出的同时,还提出了自己的安全体系结构。CORBA安全参考模型从不同角度定义了安全服务,安全体系结构则是解释如何来实现CORBA安全参考模型的。CORBA还将安全服务移到ORB中,解决了很多分布式对象的安全问题。在后续中我们将主要对CORBA安全服务做分析,研究其安全性问题。
2.1.2 CORBA安全体系结构
为了详细描述,图2.2给出了 CORBA的结构。CORBA分为四层结构,对象的安全调用从从应用组件、安全服务、安全技术和通信保护上实现。
图2.2 CORBA安全体系结构
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示: