




已阅读5页,还剩78页未读, 继续免费阅读
(机械制造及其自动化专业论文)基于web应用的用户验证与授权在erp中的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 目前基于w 曲应用的e i 冲系统已经成为主流,在构建系统时,安全问题是每 个架构师必须考虑的问题。w 曲应用的安全性主要有两个组成部分:验证和授权。 不同的用户对不同的资源拥有不同的访问权限,如何对众多的用户进行验证和授 权是成功构建系统的一个关键。 基于w 曲应用的e i 冲系统中,由于系统的开放性,为了防止用户的误操作或 恶意越权行为,必须对登录系统的用户进行验证和授权。因为在w 曲应用中,所 有的资源都是在浏览器中以u i 也的形式呈现给用户。用户在登录系统时有可能饶 过登录页面而直接进入一个他没有权限访问的页面;或者在登录系统后无意或有 意的在浏览器地址栏中输入他没权访问的地址;另外随着企业的发展和业务的需 要或者由于用户需求的变化,必将引进新的验证授权机制,系统管理员必须保证 在不影响已有安全机制的前提下,加入新的安全机制,最大程度地利用现有资源 和遗留系统。 本文正是针对上述问题,研究了在j 2 e e 平台下利用w 曲容器内在的安全机制 和j a a s 框架如何对用户进行验证和授权。具体研究了j 2 e ew 曲容器提供的三种 验证机制:基本的、基于表单的、交互式身份验证,并分析了他们的优缺点;详 细介绍了如何通过部署描述符对w 曲资源进行保护和限制;通过深入研究j a a s 框架提供的验证和授权机制,描述了j a a s 验证和授权的详细流程。 在某油田公司的e i 冲系统中,公司要求登录系统的用户为数据库中的真实用 户,以便记录用户的操作日志。实际开发时,选用了b e s 作为应用服务器,利用 它提供的l o 舀1 1 m o d u l e 与j 2 e ew 曲容器内在的安全机制,采用基于表单的验证方 式并协同o r a c l e 的数据库验证,实现了对e i 冲系统内部用户的验证和授权。把用 户能访问到的资源控制到了页面级,避免了用户通过浏览器的地址栏进行越权访 问。将开发阶段需要考虑的安全问题转移到部署阶段,实现了应用逻辑与安全逻辑 的彻底分离。结果表明,使用j 从s 框架提供的l o 百i 州o d u l e 可以提高整个系统的 开发效率,降低开发成本。而w 曲容器提供的验证与授权可以很好的和数据库安 全域相结合。对大中型企业实施e i 强、网上电子商务、办公自动化和构建企业信 息化系统的安全模块时,有很强的借鉴意义。 关键词:w 曲应用,j 2 e e w 曲容器,验证,授权,j a a s ,e i 冲 a b s t r a c t a b s t r a c t c u r r e n t l y t 1 1 ee r ps y s t e m sb a s e do nw 曲a p p l i c a t i o n sh a v eb e e i lw i d e l yu s e di i la l l k i r l d so fe n t e 叩r i s e s i m p l 锄e n t i i l gs e c u r i t yf o rw r e b 印p l i c a t i o n si sa m a n d a t o r yt a s kf o r 缸c h i t e c t sa n dw e ba p p l i c a t i o nd e v e l o p e r s t h e r ea r et w om a j o rc o m p o n e n t so fw e b 印p l i c a t i o ns e c u r i t y :a u t h 训c a t i o na n da u m d r i z a t i o n d i 讯= r e n tp e o p l eh a v ed i 脓e n t a c c e s sc 0 n 仃0 lr i g h t st 0d i 依t e n tr e s o u r c e s h o wt oa u t l l e i l t i c a t ea n da u m o r i z eu s e r si s 廿l ek e yt ob u i l das t a b l es y s t e m f 0 rt h eo p e i 血l go fm ew e ba p p l i c a t i o l l s ,u s e r si n i s s o p e r a t i o na i l dd e l i b e r a t e b e h a v i o rm a yg ob e y o n dl l i s g h t s s ou s e rw h ow a n t st ol o 舀ni n t ot l l es y s t 锄m u s tb e a u t l l e l l t i c a t e d 姐da u m o r i z e d i naw 曲a p p l i c a t i o n ,l l s e ra c c e s s e sa l l r e s o u r c e si 1 1m e f o mo fu r li naw e bb r o w s 既s o m eu s e r sm a yt y p eap r o t e c t e dp a g c su r la d d r e s s 计l i c hh eh a l sn o te 1 1 0 u 曲r i 曲t st oa c c e s sw i m d u tp 嬲s i n g o u 曲t l l el o 百np a g e o r w h e nu s e rh a sl o 酉ni i l t 0t l l es y s t 锄,h em a y d e l i b e r a t e l yt y p eap r o t e c t e du r l w h i c hh e h a l s1 1 0d 曲t st oa c c e s si t i na d d i t i o i l w i t l lt h ee x p a n d i i l go f 1 eb u s 证e s s ,m e r ea r e p r o b a b l yn e wa u t l l 训c a t em e c h a n j s m sn e e dt ob ep l u g g e di n t om es y s t e i l l 1 l l i sp a p e ri sf b c u so nm e s ep r o b l e m s o nm ej 2 e ep l a t f l 0 肌,t h ew 曲c o n t a i n e r s i i l i l e rs e c 嘶锣m e c h a m s m 锄dt h ej a a sm i i l l e w o r kh a v eb e e i ls t u d i e d f i r s t l en l i 优 t ) ,p e so fa u t l l e n t i c a t i o nm e c h a l l i s m so f i e r e db ym ej 2 e e b a s e dw 曲c o n t a i n e r sh a v e b e e n 砷加d u c e d t l l e i l ,t l l ed e t a i lt h a th o wt op r o t e c tr e s o u r c e sb yd e p l o yd e s 嘶p t o r h 觞 b e 饥d e s 面b e d a tl 嬲t ,m em e c h a i l i s mo fa u m e n t i c a t i o na i l da u l o r i z a t i o np r o v i d e db y j a a sh a sb e e ns t u d i e da n dt l l es e q u e i l c ed i a 孕a mi nu m lo fw 1 1 i c hh a sb e e n 西v e l l h lao i lc o m p a n y se r p s y s t e m ,f o rn l ec o m p a i l yr e q u i r e sm a tm et 锄i n a lu s e ri s t l l ee x a c tu s e ri i ld a t a b a s e ,s ow em a l 【eu s eo fb e s sj d b c l o 西r 讧o d u l ea n dj 2 e ew r e b c o n t a i l l e r sf b n i l - b 嬲e da u m e n t i c a t i o n ,c o m b i l l i n g 谢t l lo r a c l e ss e l fa u m e l l t i c a t i o n ,t 0 a u t h 饥t i c a t e 锄da u t l l o r i z eu s e r sw h ow a n tt oa c c e s s 廿l ew 曲叩p l i c a t i o n a sar e s u l tt 1 1 e r e s o u r c e sm a tau s e rc 孤a c c e s sa r el i i n i t e da tw 曲p a g e1 e v e la i l dt l l es e c u r i t yi s s u e c 0 n s i d e r e di nd e v e l o p m e n tp h a s ei sm o v e dt od 印l o ) ,i i l e n t t h eb u s i i l e s s1 0 百ca n dr i 曲t s m a l l a g e m e i l ta r ei s 0 1 a t e ds ot l l a tp r 0 留枷e r sa r ei l on e e dt 0w r i t ec o d e si i le a c hp a g et 0 e x 锄i n ew h e m e rt l l eu s e rh a v er i g l l t st oa c c e s si t t h er e s u l t ss h o wt 1 1 a tu s i n gj a a s s a b s 臼a c t l 0 百n m o d u l ec 孤e n h a n c e 也ee n t i r es y s t e m sd e v e l o p m e n te m c i e n c ya j l dr e d u c et 1 1 e c o s t s o ,m es e c u r i t ym e c h a i l i s mp r o v i d e db yw 曲c o n t a i n e rc a i lw o r kw i mt l l e d 撕b a s e ss e c 嘶够r e a l mw e l l k e y w o r d s :w 曲a p p l i c a t i o n ,j 2 e ew 曲c o n t a i l l a u 廿1 e n t i c a t i o n ,a u t h o 矗z a t i o n , j a a s ,e r p 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 为获得电子科技大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明 确的说明并表示谢意。 签名:日期:z 口d6 年弓月z9 日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁 盘,允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文 的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或 扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:耳导师签名: 日期:加o 年弓月2 0 日 第一章绪论 1 1 研究背景 第一章绪论 目前国内的e r p 市场正在走向成熟,随着企业现代化水平的不断提高和管理 机制的不断完善,那些处理财务、员工福利以及其他类似敏感信息的自动化系统 的应用也在不断增加。而随着这些信息化系统的出现,来自外部入侵者的攻击和 损害在不断增加,同时来自内部欺诈和滥用系统权限的机会也在呈指数级的增长。 对外,企业有网络防火墙等安全系统来抵御外界的攻击;对内,e l 心系统把安全 的焦点放在用以限制用户的行为和特权上。 随着企业级运算平台的不断成熟,e i 冲系统从传统的c s 结构逐步过渡到目 前的b s 结构。经济全球化的发展促使企业的地理位置将分布在全球各地,新型 的e i 冲系统不仅要支持局域网下各个分公司和部门的业务管理和应用,更要建立 起基于i n t e n l e t 的信息交互和共享管理平台。不同部门不同分公司要求能在统一的 平台上进行业务处理,实现分散机构的统一管理。因此在构建e r p 系统时,要针 对企业特点及资源现状,考虑如何有效的利用现有资源,避免重复建设,构建最 佳的企业信息化系统。 在构建e i 心系统时,安全模块的可重用性和可伸缩性也是构建e i 心系统的核 心。系统采用的安全机制必须有向后兼容性,随着企业的发展和业务的变化,必 将引进新的安全机制。我们要保证在不影响已有安全机制的前提下,加入新的安 全机制,最大程度的利用现有资源和遗留系统。而且目前很多中小企业在建立自 己的企业信息化系统时,必须要和总公司已有系统的接口保持一致。这就要求新 系统的安全机制必须建立在原有系统已有的安全机制之上,并且不影响原有系统 的运行。这样有利于和已有系统有机的结合,降低开发成本,提高开发效率。 构建基于w 曲应用的e r p 系统时,其安全性主要包括以下主要技术和方案: 身份验证、授权( 或访问控制) 、传输过程的安全、c a 安全认证技术、网络防火 墙等。 本文只讨论在j 2 e e 平台下w 曲应用中对e r p 内部用户的验证与授权。验证 ( a u m e n t i c a t i o n ) 表示确定一个用户就是他所声称的那个人;授权( a u t h o r i z a t i o n ) 或访问控制,表示已通过验证的用户只能访问那些允许他访问的资源。验证和授 1 电子科技大学硕士学位论文 权是两个密不可分的部分,没有通过验证就谈不上授权。不同的用户对不同的资 源有不同的访问权限,如何对众多的用户进行验证和授权是构建系统的一个关键。 在早期c s 结构下的e i 冲系统中,对用户的验证和授权是以代码的形式写在 应用程序中的。一旦将应用程序打包安装到客户端后,如果用户的权限发生变化, 任何一点的更新都要对每一个客户端进行部署。维护和更新及其不方便。 目前基于w 曲应用的e r p 系统已成为主流,但在实际应用中,其安全性和易 操作性有待进一步加强。基于w 曲应用的e i 心系统中,由于系统的开放性,这就 对b s 结构下的e r p 系统的安全性提出了更高的要求。为了防止用户的误操作或 恶意越权行为,必须对登录系统的用户进行验证和授权。在w 曲应用中,所有资 源都是以u i u 的形式呈现给用户,用户在登录系统时有可能饶过登录页面而直接 进入一个他没有权限访问的页面;或者在登录系统后无意或有意的在浏览器地址 栏中输入他没权访问的地址;或是用户登录系统后,在规定时间内没有操作,服 务器端将有权将该用户自动注销,以防止用户在离开时被其他人利用该账户做出 恶意行为。针对以上这些情况,基于w 曲的e i 冲系统必须考虑和解决。 为此我们要使用一种安全机制,保证用户有适当的权限完成他自己的业务, 同时又不能越权去看到或操作其他分公司和部门的业务数据,这就要求针对不同 的用户对其进行验证和授权,保证他只能做自己权限范围之内的事。而且当公司 业务变更,需要加入新的验证授权机制时,当前应用能在保持已有验证机制不变 的情况下加入新的验证方式,而不必更改应用程序级的代码。 本文针对某油田公司的实际e r p 系统,在实现其安全模块时利用j 2 e ew 曲 容器内在的安全机制和j a a s 满足了上述要求。 1 2 国内外研究现状 目前国内多数企业在构建e i 冲系统时,逐步从以前的c s 结构过渡到b s 结 构。文献 1 】中,作者讨论了基于j 2 e e 的e i 冲系统的设计和实现,还提出了使用 j 2 e e 设计模式对系统进行性能优化;文献 2 】中在j 2 e e 平台下,利用先进的开发 工具对某制造业企业开发了一套信息管理系统,并分析了在制造业中实施e i 冲的 可行性;文献 3 】中,作者结合m v c 设计模式和j 2 e e 多层结构,给出造纸企业e i 冲 库存模块入库子模块的设计以及实现,并提出对其性能进行改进的方法;文献【4 中, 作者采用j 2 e e 企业应用开发平台,建立了一个基于组件技术的易于管理、可重用、 可伸缩、健壮的分布式库存管理子系统;文献 5 】中,作者详细分析了e i 冲在电网 2 第一章绪论 公司运行的主要功能,最后提出了电网公司e i 冲模式的实现过程。文献 6 】中,论述 了半导体制造业e i u 系统的模块结构、这些模块之间的主要信息流以及e i u 系统 中销售管理系统的需求分析。文献 7 中,作者根据实际调研结果,结合企业实际 情况,运用j 2 e e 架构开发了东特钢铁集团生产计划管理系统。 通过对上述文献的阅读和研究可以发现,目前国内j 2 e e 平台已经被广泛应用 于各个行业的企业信息化建设。也证明了j 2 e e 平台的稳定性和可靠性。上述文献 中也普遍提到了e r p 的安全问题,但主要是针对防范外围网络的攻击,比如采用 网络防火墙和入侵检测系统等。但是,关于如何构建e r p 系统内部的安全模块以 及如何对内部用户进行验证和授权的研究甚少,这也有其实际原因,如下所述: 目前多数基于w 曲应用的e i 心系统中,为了限制用户对某些敏感资源的访问, 通常在每个页面中编写检查权限的代码。虽然所有页面都保存在服务器端,当更 改了某个特定页面的权限时只需在服务器端重新发布应用即可,不必对每个客户 端进行更新。但是这样也存在问题,每当员工升职、转岗、退休或被解雇时,系 统中相对的数据就需要更新;如果有了新的生意合作伙伴,或是企业内部成立了 新的业务部门,或是企业开拓了新的市场时,同样要对系统中的权限控制程序进 行调整。这样就给系统的维护带来了很大的困难。例如:当某个用户对一些页面 的访问权限发生变化时,需要对这些页面中的权限控制代码进行修改。如果这个 用户拥有多种角色,而每种角色拥有不同的访问权限时改动将会更大。另外还存 在的一个问题是:系统发布运行起来之后,由于业务的需要,当系统管理员决定 改变一个员工的权限时,他知道该员工将授予什么新的权限,将被撤消哪些权限。 但他可能不知道具体如何修改页面中的代码以便让修改后的权限生效。因为在开 发阶段,开发人员已经把对应的权限控制代码硬编码到了页面中。这样的e r p 系 统其维护费几乎是无止境的。 因此,多数企业在构建他们的e r p 系统时,为了使每个页面中的权限控制代 码改动最小,往往把权限分配和控制模块放到最后来做。而e i 冲系统总是耗资巨 大,一般情况下项目进度总是落后于时间表,所以为了节省开支或赶进度,系统 内部的权限控制往往是凑合着做。但文献 8 】中有数据表明,由于企业内部的欺诈 行为导致企业平均交易年收入损失3 到6 ,更糟糕的是,常常由于重复支付的 错误会导致额外的损失。在一般企业中,重复支付的比率一般占其总支付的2 。 而对于这种重复支付,约有1 0 根本不会被发现,从而导致了总支付额0 2 的损 失。所以对e r p 系统内部用户的验证和授权是个不能回避的问题。 自s e r v l e t 规范2 3 起,j 2 e ew 曲容器提供了内在的安全机制,所有对页面权 3 电子科技大学硕士学位论文 限的访问控制都可以通过在部署描述符中来定义,这样使得保护w 曲应用中的各 种敏感资源变得简单易维护,并把开发人员从权限的困扰中解脱出来。另外w 曲 容器提供的安全机制可以很好的和其他安全域相结合,这就为企业在实施企业信 息化系统选择安全方案时提供了更多的选择。 j a a s 的出现使得对用户的验证和授权更加灵活。用户可以使用应用服务器提 供的l o 西n m o d u l e 或者编写自己的l o 西n m o d u l e 对用户进行验证和授权。当需求 或业务发生变化,需要加入新的安全机制时,j a a s 的可插入和可堆叠特性使得系 统的升级和维护非常方便。 1 3 研究内容与意义 本文研究了j 2 e ew 曲容器提供的身份验证机制,以及如何利用声明性授权来 保护w 曲资源,同时研究并分析了j 从s 验证与授权的机制和流程。对j a a s 进 行详细深入的分析有助于开发人员为实际系统选择合适的登录模块,有利于为系 统提供灵活的安全机制。 在早期的w 曲应用中,程序员在每个页面编写检查权限的代码来实现对页面 的保护。如果权限发生变化,则需对应用程序级的代码进行修改,整个系统的可 维护性和代码可重用性不高,开发效率较低。 而利用w 曲容器内在的安全机制和j a a s 提供的验证授权机制,可以在部署 阶段来实现对用户的授权,并能借助其他安全域( 如数据库) 来协同实现系统的 安全性。整个系统的安全性都由系统管理员通过配置来实现,应用的开发人员无 需关心权限问题,把权限问题从表示层和业务层分离开来。提高了系统的开发效 率和代码的可重用性、可维护性。对大中型企业实施e r p 系统、网上电子商务、 办公自动化和构建企业信息化系统的安全模块时,有很强的借鉴意义 1 4 论文组织 全文共分六章,各章内容如下: 第一章为绪论,介绍了本文的研究背景、国内外研究现状以及研究内容与意 义。 第二章介绍了j 2 e e 平台和j 2 e e 容器的基本概念以及使用j 2 e e 开发企业级应 用带来的好处。并介绍了基于j 2 e e 平台下w 曲应用中的核心概念以及m v c 设计 4 第一章绪论 模式。 第三章分析了w 曲容器提供的身份验证和授权机制,分析了他们的优缺点。 总结了使用w 曲容器内在的安全机制带来的好处。 第四章研究了j a a s 验证授权框架,详细描述了j a a s 验证和授权的流程。并 介绍了如何把j a a s 运用与j 2 e e 平台中。 第五章针对某油田实际的e i 心项目,提出了系统的验证授权安全模型,给出 了实现的关键步骤以及对用户的验证授权流程。 第六章总结了全文的工作,提出了下一步的工作。 5 电子科技大学硕士学位论文 2 1j 2 e e 2 1 1j 2 e e 平台概述 第二章w - e b 应用模型 1 j a v a 体系结构 j a v a 体系结构包括四个独立但相关的技术【9 】: j a v a 程序设计语言。 j a v a d a s s 文件格式。 j a v a 应用编程接口( a p p l i c a t i o np r o 伊a n l r n i n g1 1 1 t e r f a c e ,a p i ) 。 j a v a 虚拟机。 2 j a v a2 平台 j a v a 虚拟机和j a v aa p i 一起组成了一个“平台 ,所有j a v a 程序都在这上面 编译运行。j a v a 虚拟机和j a v aa p i 的组合除了被称为运行时系统之外,还被称为 j a v a 平台( 从版本1 2 开始,称为j a v a 2 平台) 目前,j a v a2 平台有3 个版本,它们是适用于嵌入式设备和智能卡的j a v a2 平 台m i c r o 版( j a v a2p 1 a t f o 肌m i c r oe d i t i o n ,j 2 m e ) 、适用于桌面应用系统的j a v a2 平台标准版( j a v a2p l a t f o ms t a n d a r de d i t i o n ,j 2 s e ) 、适用于创建企业级应用程序 和服务的j a v a2 平台企业版( j a v a2p l a t f o m le r l t e 印r i s ee d i t i o n ,j 2 e e ) 。 3 什么是j 2 e e j 2 e e 是开放的、基于标准的平台,用于开发、部署和管理n 层结构、面向 w 曲的,以服务器为中心的企业级应用。 j 2 e e 平台的目标主要是提供一个与平台无关的、基于组件的、可移植、多用 户、安全和标准的企业级j a v a 服务器端部署平台。 j 2 e e 是一个规范,从实质上消除了对一家公司的产品的依赖、并支持跨平台 的应用部署。j 2 e e 的核心是e j b 规范。 4 多层模型 j 2 e e 平台提供了一个多层分布式应用程序模型,这也就意味着应用程序的各 个部分能够运行在不同的设备上。j 2 e e 结构中分别定义了客户层、中间层( 由一 6 第二章w 曲应用模型 个或多个子层组成) 和后端系统层。图2 1 展示了两个多层次j 2 e e 应用【1 0 1 。 尽管j 2 e e 应用程序可以包含图2 一l 中所示的3 或4 个层次,但是人们通常认 为j 2 e e 多层次应用程序是3 层应用程序,因为他们分布在3 个位置:客户端计算 机、j 2 e e 应用服务器和后台数据库。以这种方式运行的3 层应用程序通过在客户 端应用程序和后台存储之前放置一个多线程的应用服务器,从而扩展了标准的c s 结构。 j 2 e e 应用程序lj 2 e e 应用程序2 圄圄 2 1 2j 2 e e 容器 客户端鼍 客户端计算机 二:月忆e e 应用服务器 日s 层 数据库服务器 图2 1 多层j 2 e e 应用程序 1 容器概念 通常瘦客户端多层次应用程序难于编写,因为它们涉及许多复杂代码,比如 事务处理、状态管理、多线程、资源池以及其他复杂的底层细节【1 1 】。基于组件和 独立与平台的j 2 e e 体系结构使得j 2 e e 应用程序易于编写,因为业务逻辑被组织 到可重用的组件里,j 2 e e 服务器以容器的形式为每一种类型的组件提供底层的服 务。 2 组件容器结构 j 2 e e 平台将底层常用的、且通常是比较复杂的服务打包在容器中,由容器向 其中的组件提供一种运行环境。使得开发者不必开发这些服务,可以集中精力解 决手边的业务问题。组件容器结构如图2 2 所示。 7 电子科技大学硕士学位论文 j 2 e e 应用程序就是由组件构成的。组件是具有独立功能的软件单元,是预先 编译好的程序代码块,可把它们组合成一个应用程序。该应用程序只需通过组件 的公共接口就可以使用各类组件来实现一定的功能。 $ u 。j 2 e e 容器t 图2 - 2 组件容器结构 j 2 e e 规范中定义了以下的j 2 e e 组件【1 0 】: 客户层组件:应用客户端程序和a p p l e t s ; w 曲层组件:j a v as e r v l e t 和j a v a s e e rp a g e s ( j s p ) ; 业务层组件:e n t e 印r i s ej a v 扭e a l l s ( e j b ) 。 使用组件技术的好处是: 可插入到任一个应用程序中; 把应用程序分成各个组件,分工明确,便于程序的设计开发; 更好的复用,特别是针对已开发的业务逻辑; 方便的更新,因为只需要更改部分组件; 组件的实现与接口分离,提供标准的接口方便组件间的访问; 开发更容易,因为只需以组件为单位进行开发,便于进行编码和测试。 3 容器的类型 j 2 e e 应用组件可以安装部署到以下几种容器中去: e j b 容器:管理所有j 2 e e 应用程序中企业级b e a i l 的执行。e n t e 印r i s eb e 距和 它们的容器运行在j 2 e e 服务器上。 w 曲容器:管理所有j 2 e e 应用程序中j s p 页面和s e l e t 组件的执行。w 曲组 件和它们的容器运行在j 2 e e 服务器上。 应用程序客户端容器:管理所有j 2 髓应用程序中应用程序客户端组件的执行。 应用程序客户端和它们的容器运行在j 2 e e 服务器上。 第二章w 曲应用模型 a p p l e t 容器:是运行在客户端机器上的w e b 浏览器和j a v a 插件的结合。 j 2 e e 服务器和各种类型的容器如图2 3 所示【1 1 1 。 厂、 j 2 e e 服务器 厂、 f 浏览器l ,、 w e b 容器 应用程序 ,、 、一 客户端 ? 数据库 、 应用程序 申e n t 唧妇b e 姐 7 客户端容器 i 客户端计算机 e 喝容器 l 图2 3j 2 e e 服务器和容器 2 1 2j 2 e e1 4 平台技术和a p i j 2 e e 是多种j a v a a p i 、一个应用编程模型以及一个测试套件的结合体。这些 a p i 先前作为单独的包已经发行;应用编程模型( a p p l i c a t i o np r o 盯a m 加i n g m o d e l ,a p m ) 也称为j 2 e e 蓝本( j 2 e eb l u 印r i n t s ) ,它描述了如何结合多种a p i ; 而测试封装套件则可由j 2 e e 开发商用于测试其产品兼容性。自1 9 9 9 年以来,j 2 e e 已经经历了多次修订,最新版包含以下特定于企业的a p i 【1 2 】: 1 j d b c ( j a v ad a t a b a s ec o l l n e c t i v i 劝:j d b c a p i 为访问不同的数据库提供了一 种统一的途径,象o d b c 样,j d b c 对开发者屏蔽了一些细节问题,另外,j d c b 对数据库的访问也具有平台无关性。 2 j n d i ( j a v an 锄ea 1 1 dd i r e c t o 巧1 1 1 t e r f a c e ) :d ia p i 被用于执行名字和目录 服务。它提供了一致的模型来存取和操作企业级的资源如d n s 和l d a p ,本地文 件系统,或应用服务器中的对象。 3 e j b ( e r l t e 叩r i s ej a v a b e a n ) :j 2 e e 技术之所以赢得某体广泛重视的原因之一就 是e j b 。它们提供了一个框架来开发和实施分布式商务逻辑,由此很显著地简化了 具有可伸缩性和高度复杂的企业级应用的开发。e j b 规范定义了e j b 组件在何时 如何与它们的容器进行交互作用。容器负责提供公用的服务,例如目录服务、事 9 电子科技大学硕士学位论文 务管理、安全性、资源缓冲池以及容错性。但这里值得注意的是,e 喝并不是实现 j 2 e e 的唯一途径。正是由于j 2 e e 的开放性,使得有的厂商能够以一种和e j b 平 行的方式来达到同样的目的。 4 r m i ( r e l l l o t em e m o di l l v o k e ) :正如其名字所表示的那样,r m i 协议调用远 程对象上方法。它使用了序列化方式在客户端和服务器端传递数据。i 洲i 是一种 被e j b 使用的更底层的协议。 5 j a v ai d l c 0 r b a :在j a v ad l 的支持下,开发人员可以将j a v a 和c 0 r b a 集成在一起。他们可以创建j a v a 对象并使之可在c o r b ao r b 中展开,或者他们 还可以创建j a v a 类并作为和其它0 l m 一起展开的c o r b a 对象的客户。后一种方 法提供了另外一种途径,通过它j a v a 可以被用于将你的新的应用和旧的系统相集 成。 6 j s p ( j a v as e r v e rp a g e s ) :j s p 页面由h t m l 代码和嵌入其中的j a v a 代码所组 成。服务器在页面被客户端所请求以后对这些j a v a 代码进行处理,然后将生成的 h t m l 页面返回给客户端的浏览器。 7 j a v as e r v l e t :s e r v l e t 是一种小型的j a v a 程序,它扩展了w 曲服务器的功能。 作为一种服务器端的应用,当被请求时开始执行,这和c g ip 甜脚本很相似。s e r v i e t 提供的功能大多与j s p 类似,不过实现的方式不同。j s p 通常是大多数h t m l 代 码中嵌入少量的j a v a 代码,而s e r v l e t s 全部由j a v a 写成并且生成h t m l 。 8 x m l ( e x t e n s i b l em a r k u pl a j l g u a g e ) :x m l 是一种可以用来定义其它标记语 言的语言。它被用来在不同的商务过程中共享数据。x m l 的发展和j a v a 是相互独 立的,但是,它和j a v a 具有的相同目标正是平台独立性。通过将j a v a 和x m l 的 组合,您可以得到一个完美的具有平台独立性的解决方案。 9 j m s ( j a v am e s s a g es e i c e ) :m s 是用于和面向消息的中间件相互通信的应 用程序接口( a p i ) 。它既支持点对点的域,有支持发布订阅0 u b l i s s u b s 面b e ) 类型 的域,并且提供对下列类型的支持:经认可的消息传递,事务型消息的传递,一致 性消息和具有持久性的订阅者支持。j m s 还提供了另一种方式来对您的应用与旧 的后台系统相集成。 1 0 j t a ( j a v at r a l l s a c t i o n 心c h i t e c t u r 。e ) :j t a 定义了一种标准的a p i ,应用系统 由此可以访问各种事务监控。 1 1 j t s ( j a v at r a i l s a c t i o ns e r v i c e ) :j t s 是c o r b ao t s 事务监控的基本的实现。 j t s 规定了事务管理器的实现方式。该事务管理器是在高层支持j a v at r 锄s a c t i o n a p i ( j t a ) 规范,并且在较底层实现o m go t ss p e c m c a t i o n 的j a v a 映像。j t s 事务 1 0 第二章w 曲应用模型 管理器为应用服务器、资源管理器、独立的应用以及通信资源管理器提供了事务 服务。 1 2 j a v a m a i l :j a v a m a i l 是用于存取邮件服务器的a p i ,它提供了一套邮件服 务器的抽象类。不仅支持s m t p 服务器,也支持咖服务器。 13 j t a ( j a v a b e a l l sa “v a t i o nf r 锄e w o r l ( ) :j a v 州a i l 利用j a f 来处理m i m e 编 码的邮件附件。m i m e 的字节流可以被转换成j a v a 对象,或者转换自j a v a 对象。 大多数应用都可以不需要直接使用j a f 。 2 1 3 为什么选择j 2 e e j 2 e e 技术的基础就是核心j a v a 2 平台的标准版,j 2 e e 不仅巩固了标准版中的 许多优点,例如”编写一次、随处运行”的特性、方便存取数据库的j d b ca p i 、 c o r b a 技术以及能够在h n e n l e t 应用中保护数据的安全模式等等,同时还提供了 对e j b 、j a v as e r v l e t s 、j s p 以及x m l 技术的全面支持。其最终目的就是成为一个 能够使企业应用开发者大幅缩短投放市场时间的体系结构。 j 2 e e 体系结构提供了中间层集成框架用来满足无需太多费用而又需要高可用 性、高可靠性以及可扩展性的应用需求。通过提供统一的开发平台,j 2 e e 降低了 开发多层应用的费用和复杂性,同时对现有应用程序的集成提供强有力的支持, 完全支持e n t e 印r i s ej a v a b e a i l s ,有良好的向导支持打包和部署应用,添加目录支持, 增强了安全机制,提高了性能。 j 2 e e 为搭建具有可伸缩性、灵活性、易维护性的企业级应用系统提供了良好 的机制: 1 保留现存的i t 资产:由于企业必须适应新的商业需求,利用已有的企业信 息系统方面的投资,而不是重新制定全盘方案就变得很重要。这样,一个以渐进 的( 而不是激进的,全盘否定的) 方式建立在已有系统之上的服务器端平台机制 是公司所需求的。j 2 e e 架构可以充分利用用户原有的投资,如一些公司使用的b e a ,i u x e d o 、m mc i c s ,i b me n c i i l a 、1 1 1 p r i s e s i b r o k e r 以及n e t s c a p ea p p l i c a t i o n s e e r 。这之所以成为可能是因为j 2 e e 拥有广泛的业界支持。每一个供应商都对 现有的客户提供了不用废弃已有投资,进入可移植的j 2 e e 领域的升级途径。由于 基于j 2 e e 平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的操作系 统和硬件也能被保留使用。 2 高效的开发:j 2 e e 允许公司把一些通用的、很繁琐的服务器端任务交给中 电子科技大学硕士学位论文 间件供应商去完成。这样开发人员可以把精力集中在如何实现商业逻辑上,相应 地缩短了开发时间。高级中间件供应商提供以下这些复杂的中间件服务: 状态管理服务让开发人员写更少的代码,不用关心如何管理状态,这样 能够更快地完成程序开发。 持续性服务让开发人员不用对数据访问逻辑进行编码就能编写应用程 序,能生成更轻巧,与数据库无关的应用程序,这种应用程序更易于开发与维护。 分布式共享数据对象c a c h e 服务一让开发人员编制高性能的系统,极大提 高整体部署的伸缩性。 3 支持异构环境:j 2 e e 能够开发部署在异构环境中的可移植程序。基于j 2 e e 的应用程序不依赖任何特定操作系统、中间件、硬件。因此设计合理的基于j 2 e e 的程序只需开发一次就可部署到各种平台。这在典型的异构企业计算环境中是十 分关键的。j 2 e e 标准也允许客户订购与j 2 e e 兼容的第三方现成的组件,把他们 部署到异构环境中,节省了由自己制订整个方案所需的费用。 4 可伸缩性:企业必须要选择一种服务器端平台,这种平台应能提供极佳的 可伸缩性去满足那些在他们系统上进行商业运作的大批新客户。基于j 2 e e 平台的 应用程序可被部署到各种操作系统上。例如可被部署到高端u n 与大型机系统, 这种系统单机可支持6 4 至2 5 6 个处理器。( 这是n t 服务器所望尘莫及的) j 2 e e 领域的供应商提供了更为广泛的负载平衡策略。能消除系统中的瓶颈,允许多台 服务器集成部署。这种部署可达数千个处理器,实现可高度伸缩的系统,满足未 来商业应用的需要。 5 稳定的可用性:一个服务器端平台必须能全天候运转以满足公司客户、合 作伙伴的需要。因为i n t e r n e t 是全球化的、无处不在的,即使在夜间按计划停 机也可能造成严重损失。若是意外停机,那会有灾难性后果。j 2 e e 部署到可靠的 操作环境中,他们支持长期的可用性。一些j 2 e e 部署在w i n d o w s 环境中,客 户也可选择健壮性能更好的操作系统如s u i ls 0 1 撕s 、m mo s 3 9 0 。最健壮的操作 系统可达到9 9 9 9 9 的可用性或每年只需5 分钟停机时间。这是实时性很强商业系 统理想的选择。 在e i 冲系统的建设过程中,各种信息技术很有可能是从不同的供应商处购买 的,从而导致了不同类型的环境并很难一体化。j 2 e e 平台通过提供一系列可互操 作并独立于平台的技术来消除彼此之间的差距。这样开发人员可以在某个平台上 编写和调试j 2 e e 应用程序,而在另一个平台上进行部署。 在应用的安全性方面,j 2 e e 通过提供一个开发和部署模型减轻了开发新的安 1 2 第二章w 曲应用模型 全应用程序的困难。这个模型把安全策略和应用程序的实现代码相分离,开发人 员不需要精通安全问题的设计与实现,安全配置策略可以被推迟到部署阶段由系 统管理员来完成。j 2 e e 容器提供宽泛的标准安全服务,这些安全服务可以在应用 程序的部署阶段来配置而不再嵌入在应用程序内部,从而使得改变企业安全策略 和升级安全服务变得非常简单。 2 2w e b 应用 w 曲应用是w 曲服务器的一种动态扩展。有下面两种类型的w 曲应用【l3 】: 面向表示的w 曲应用。在响应请求时,面向表示的w 曲应用产生交互式的 w 曲页面,这种页面包含了各种不同的标记语言( 如h t m l 、x 】l 等) 和动态内 容。 面向服务的w 曲应用。面向服务的w 曲应用实现了某w 曲服务的终端。面向 表示的w 曲应用程序通常是面向服务的w 曲应用程序的客户端。 本文中所有示例和应用都是基于面向表示的w 曲应用。 在j 2 e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 月亮姐姐快下来教学设计-2025-2026学年小学音乐人音版五线谱六年级上册-人音版(五线谱)
- 3.3 液晶与显示器说课稿-2025-2026学年高中物理沪教版2019选择性必修 第三册-沪教版2019
- 1.6.不同的季节 教学设计-2024-2025学年科学二年级上册教科版
- 课题1 空气教学设计-2025-2026学年初中化学人教版九年级上册-人教版2012
- 7《太阳与生活》(教案)一年级下册科学冀人版
- 2025年中考地理试题分类汇编:我国的经济发展(第1期)原卷版
- 2025年2月内科学模考试题与答案
- 初中数学考试试卷期末(2篇)
- 2025年全国健康管理师职业技能考试题库(含答案)
- 葡萄酒红酒知识培训
- 全媒体运营师-国家职业标准(2023年版)
- 小学英语教学经验体会分享
- 四年级英语 4AM3U2 Around my home同课异构
- 超限货物运输安全
- 2024年江苏省对口单招英语试卷及答案
- 国家临床版3.0手术操作编码(ICD-9-CM3)
- 学校矛盾调解工作制度模版
- 小学一年级上册体育全册教案
- 学习中心教学论
- 《学习共同体-走向深度学习》读书分享
- 2024年高考法语核心词汇全突破
评论
0/150
提交评论