APP下载

一种基于J2EE平台的Web应用安全机制

2016-12-23刘玮玮

微型电脑应用 2016年9期
关键词:声明加密组件

刘玮玮

一种基于J2EE平台的Web应用安全机制

刘玮玮

通过一个网上银行应用研究了基于J2EE平台Web应用安全机制的实现。使用文件配臵实现EJB组件开发的业务逻辑层安全,SOAP协议保证系统信息交换安全,RSA算法的变形实现网上传输信息加密。在不借助Web应用专用防火墙时也能较好实现Web应用安全,具有一定的可借鉴性。

Web应用;安全机制;EJB;SOAP;RSA

0 引言

随着Web应用越来越广泛,它的开放性、易开发性和易用性使得解决其安全问题变得非常重要,尤其在一些安全性要求较高的情况下。本文通过一个网上银行系统,研究了一种基于J2EE平台Web应用安全机制的实现方法。

1 Web应用主要安全问题

根据Web 程序的工作原理,Web程序多是B/S 模式,通过浏览器运行客户端,浏览器首先向Web服务器发出请求,Web服务器对请求做出响应,将响应数据发送给客户端浏览器,通常是一个HTML文件,然后通过浏览器把HTML文件信息显示在屏幕上。Web应用可能会涉及的安全问题包括[1]:Web 平台软件的不安全性,拒绝服务攻击,SQL注入,跨站脚本攻击。

2 安全机制的实现

本文的网上银行基于 J2EE平台,涉及管理员操作界面和一般用户的网页客户端,涉及用户、银行事务和银行帐户3个实体,为了使用户能够实现安全的网上银行操作,安全性设计必须满足以下要求:用户创建及权限分配由管理员登录后台进行,普通用户通过身份验证后登录系统进行权限内查询、转账操作。系统采用4层结构:Web表示层对应网页客户端、数据存储层对应数据库、业务逻辑层用EJB实现、数据持久层用实体Bean实现。

2.1 EJB安全的实现

J2EE平台中通过具体化访问不同方法的角色来保证EJB的安全[2]。系统中定义了两个角色:银行管理员、普通用户,定义了两类操作:银行管理员操作、普通用户操作,这两种操作没有重复部分。

系统通过为用户管理会话Bean、帐户管理会话Bean、事务管理会话 Bean的方法设定权限来使不同用户根据权限调用相应方法。如只允许银行管理员调用帐户管理会话Bean中的创建帐户方法,不允许普通用户或其他任何类型的用户创建银行帐户,不同角色的使用及对角色的分组确保了客户端被授权,又不增加额外的授权功能[3]。

EJB的安全性通常都从组件代码中分离出来,通过配置的形式实现。有两种方法:声明式和编程式,一般情况下使用声明式安全性,可以实现业务逻辑与具体安全策略的松耦合,使得用户在修改安全性规则后,也不用修改EJB组件代码,此时安全性角色并没有硬编码在EJB组件逻辑中,从而保证了代码的简洁性。由于 EJB规范提供的声明式安全性设施还不够完善,它并不支持实例级授权、基于条件的授权,因此当在Bean类需要为不同的角色提供相应的业务方法,为各个安全性角色创建单独方法等安全性要求较为复杂的场合时,最好使用编程式来实现EJB安全[4]。本文采用声明式实现EJB组件安全,具体步骤为:

首先声明方法许可。在待保护的EJB业务方法声明许可信息,EJB容器会根据这些方法许可信息,为 EJB组件生成安全检查。以帐户管理会话Bean为例,注释声明了EJB的安全策略,相关代码如下:

接下来声明安全性角色。即在部署描述中声明 EJB组件使用的所有安全性角色,完成抽象安全性角色的定义,可借助部署描述符也可借助注释来声明。相关代码如下:

由于 EJB组件开发部署时需要实际安全角色,因此最后需要将声明的抽象安全角色映射到实际角色。相关代码如下:

2.2 系统信息交换安全协议和传输加密

Web应用的信息通过网络在服务器与客户端之间交互,需要采用一个共同遵循的信息交换安全协议来保证系统信息传输的可靠性、稳定性、不可否认性,同时由于用户通过浏览器登录系统时密码等信息以明文的方式在网络上传输,很容易被攻击者截获,进而可以假冒用户身份,身份认证机制就会被攻破,因此还要对在网络上传输的客户 ID和用户密码等信息的明文形式进行加密。本文采用 SOAP协议实现信息交换安全[5],SOAP简单对象访问协议是在分散或分布式的环境中交换信息的简单协议,是一个基于XML的协议;采用了RSA加密算法的一种变形 RSA_v1dot5来实现网上传输信息的加密[6],将明文信息传送到网络前先对其进行加密,经网络传输到达目的地之后再对加密信息进行解密,将其转换为可以识别的明文。信息交换安全协议和传输加密均采用XML部署描述文件实现。

使用SOAP协议实现信息交换安全的XML文档关键代码如下,其中指明了提供该协议的类、请求策略和响应策略等参数:

程序对请求和响应使用安全策略的身份验证模块。安全策略基于一组配置数据:策略元数据和 DD,策略元数据指定在加密、签名算法中所使用的密钥相关信息,DD是基于Sun指定的部署描述配置数据。

配置 RSA加密算法的变形实现网上传输信息加密时,XML文档中还包含了证书别名等一些参数,涉及到两种安全性需求:客户希望传入的消息以 X509令牌签名;客户签名输出请求,并要求添加经过身份验证的用户Username令牌。该文档基于XWSSSecurityConfigura-tion模式,关键代码如下:

3 总结

当前Web应用商务逻辑变化加快,业务逻辑要求更加多元化,安全性要求越来越高,对Web应用的开发提出了许多更高的要求。本文提出的Web应用安全机制实现方法:通过声明式安全性实现 EJB组件安全、通过SOAP协议实现信息交换安全、通过RSA加密算法的变形实现网上传输信息加密,在不借助第三方组件,如专用Web应用防火墙时也能较好地应对可能涉及的安全问题,降低了软件的开发成本,可用于如金融系统等一些对安全性要求较高的场合,是一种高效、简洁、易行的方法。

[1] 黄希. 浅谈 WEB应用安全问题及防范[J]. 信息技术, 2015:277.

[2] 刘恒. EJB 性能改进与实践[J]. 微计算机信息, 2006(09X).

[3] 全立新. 一种基于加密技术的 Web服务安全方法[J].制造业自动化, 2011(2):82-84.

[4] Rima Patel Sriganesh,Gerald Brose, Micah Silverman著,精通 EJB3.0[M].罗时飞,译. 北京: 电子工业出版社,2006:274-284.

[5] 颜瑞江. 浅谈Web Services技术的安全应用[J]. 信息科技, 2011(2):228.

[6] 符浩,陈灵科,郭鑫. 基于Web网络安全和统一身份认证中的数据加密技术[J]. 软件导刊.

图5 包投递率比较

从图5可以看出,随着节点运动速度的增加,网络拓扑结构变化加快,算法的包投递率都降低,而BD-ZRP算法在确定区域半径时考虑了带宽,减少了向不可用链路发送数据包的概率,提高了包投递成功率。

4 总结

本文在分析移动网络特点的基础上,依据带宽和时延,动态调整ZRP半径,适时改变路由结构,增强路由利用率,增加了节点的稳定性,提高了包投递成功率,尽可能减小时延,优化了ZRP协议。但是节点周期查询邻节点的时间以及经过多少个周期重新构置生成树等细节信息仍需进一步的研究。

参考文献

[1] Schulzrinne H, Casner S, Frederick R, et al. RTP: A Transport Protocol for Real-Time Applications[S]. RFC 3550, July 2003.

[2] 王力军,田静,洪涛,李健.智能建筑与无线网络设计[J].价值工程,2012,5:151-152.

[3] 郑四海.无线移动自组织网络QoS路由协议研究[D].武汉:武汉理工大学,2012.

[4] A bolhasan M. A review of routing protocols formobile ad Hoc network s[C]. Ad Hoc Networks, 2004 (2) :1222.

[5] Ververidis C N,Polyzos G C.Service discovery for mobile adhoc networks:A survey of issues and techniques EJ[J].Communications Surveys & Tutorials,2008,10 (3):30—45.

[6] 李琳武穆清.ZRP区域路由协议分析[J].数字通信世界,2007(11):52-55.

[7] Haas Z J , Pearlman M R , Samar P. The Zone Routing Protocol(ZRP) for Ad Hoc Networks [EB/OL] . 2002. Draft-ietf-manet-zone-zrp-04. txt .

[8] Marw aha S, Tham C K, Srinivasan D. A novel routing protocol using mobile agents and reactive route discovery for ad Hoc wireless networks. Networks[C], 10th IEEE International Conference on ICON 2002, 2002: 311-316.

[9] 沈亮光,汪学明.移动Ad hoc 网络ZRP路由协议的仿真分析[J].通信技术,2013,46(8):71-73.

[10] 王研.Ad-Hoc网络中的路由协议研究[D].南京:南京大学,2013:26-28.

(收稿日期:2016.02.02)

Approach of Web Applications Security Based on J2EE Platform

Liu Weiwei
(Faculty of Informatics, Fujian Vocational College of Agriculture, Fuzhou 350001, China)

This paper used a E-bank application to research the security mechanism implementation of Web application based on the J2EE platform. It used file configuration to implement the security of business logic layer which developed by EJB elements, used SOAP protocol to ensure the security of system information interchange, and used the transformation of RSA algorithm to implement the encryption of the online information. This method could realize the Web application security better without the specific Web firewall, and could be used for reference.

Web Application; Security Mechanism; EJB; SOAP; RSA

TP183

A

1007-757X(2016)09-0077-03

2016.02.23)

刘玮玮(1982-),女,福安人,福建农业职业技术学院,信息技术系,硕士研究生,讲师,研究方向:网络技术及应用研究,福州 350001

猜你喜欢

声明加密组件
本刊声明
本刊声明
无人机智能巡检在光伏电站组件诊断中的应用
新型碎边剪刀盘组件
U盾外壳组件注塑模具设计
本刊声明
一种基于熵的混沌加密小波变换水印算法
本刊声明
认证加密的研究进展
风起新一代光伏组件膜层:SSG纳米自清洁膜层