企业信息管理系统安全机制的研究与实现
洁具品牌
企业信息管理系统安全机制的研究与实现
白光禹,谭文燕,寿国础,胡怡红
抗美援朝英雄
北京邮电大学通信网络测试技术研究中心,北京(100876)
E-mail:baiguangyu@gmail
摘  要:本文从VPN(虚拟专用网)、数据库以及SOAP(简单对象访问协议)安全等方面,分析了构建大型企业信息管理系统所面临的安全问题及采取的安全机制。通过采用相关安全机制,完成了ABC公司的信息管理系统,实现了企业信息数据的安全、完整传输,满足了企业及用户的需求。
关键词:企业信息管理系统,安全,VPN,数据库,SOAP,Web服务
1.引言
企业信息管理系统 (Information Management System for Enterprises -EIMS),指的是运用现代化的管理思想和方法, 采用电子计算机, 对企业管理、决策工作中的信息进行收集、存储、加工、分析, 以辅助企
业从日常的业务处理直到决策方案的制定和优选等工作, 以及跟踪、监督、控制、调节整个管理过程的人机系统[1]。企业信息管理系统对于企业尤其是大型跨国企业来说具有极其重要的作用,它能够在现有的计算机信息系统的基础上,建立统一的综合信息管理平台,更好地利用互联网的优势,高效、低成本地处理各类业务活动的全新网络化管理,提供多种不同的接入方式,合理配置各种模块的实现形式,最大限度的减少地域限制的问题,提高工作效率,规范化公司内部管理流程,大大提高了工作效率和节省运营成本。但在带来方便、经济的同时,信息管理系统相应的安全性问题也是不容忽视的。
2.企业信息管理系统的安全机制
2.1 VPN安全
现代企业多采用虚拟专用网(Virtual Private Network-VPN)技术来构建企业网络,其网络结构如图1所示。虚拟专用网指在公共网络中建立专用网络,数据通过安全的“加密通道”在公共网络中传播。企业只需要租用本地的数据专线,连接到本地的Internet,各地的机构就可以互相传递信息;同时,企业可以利用Internet的拨号接入设备,让自己的用户拨号到Internet上,就可以连接进入企业中。建立基于VPN的企业信息管理系统具有节省成本、提供远程访问、扩展性强、便于管理和实现全面控制等优点[2,3]。
图1 基于VPN的企业网络结构
虎皮凤爪做法
VPN主要采用四项技术来保证安全,这四项技术分别是隧道技术(Tunneling)、加解
密技术(Encryption & Decryption)、密钥管理技术(Key Management)、使用者与设备身份认证技术(Authentication)。
人生感言大全
隧道技术是VPN的基本技术类似于点对点连接技术,它在公用网建立一条数据通道(隧道),让数据包通过这条隧道传输。隧道是由隧道协议形成的,分为第二、三层隧道协议。第二层隧道协议是先把各种网络协议封装到PPP中,再把整个数据包装入隧道协议中。这种双层封装方法形成的数据包靠第二层协议进行传输。第二层隧道协议有L2F、PPTP、L2TP 等。第三层隧道协议是把各种网络协议直接装入隧道协议中,形成的数据包依靠第三层协议进行传输。第三层隧道协议有VTP、IPSec等。加解密技术是数据通信中一项较成熟的技术,VPN可直接利用现有技术。密钥管理技术的主要任务是如何在公用数据网上安全地传递密钥而不被窃取。现行密钥管理技术又分为SKIP与ISAKMP/OAKLEY两种。SKIP主要是利用Diffie-Hellman的演算法则,在网络上传输密钥;在ISAKMP中,双方都有两把密钥,分别用于公用、私用。使用者与设备身份认证技术最常用的是使用者名称与密码或卡片式认证等方式。
2.2 数据库安全
数据库安全通常通过存取管理、安全管理和数据库加密来实现。存取管理就是一套防止未授权用户使
用和访问数据库的方法、机制和过程,通过正在运行的程序来控制数据的存取和防止非授权用户对共享数据库的访问。安全管理指采取何种安全管理机制实现数据库管理权限分配,一般分集中控制和分散控制两种方式。数据库加密主要包括:库内加密(以一条记录或记录的一个属性值作为文件进行加密)、库外加密(整个数据库包括数据库结构和内容作为文件进行加密)、硬件加密等三大方面[4]。
数据访问过程中的安全威胁,主要来自于针对SQL注入的情况。SQL 注入攻击是指黑客在用户交互端, 精心编写一些SQL 语句, 把特殊的SQL 指令语句插入到系统实际SQL 语句中并执行它, 以获取用户密码等敏感信息, 以及获取主机控制权限的攻击方法。可以通过以下几种措施来防止SQL注入[5]:
1. 数据库的设置
用于程序连接数据库的用户不要使用服务器角组, 而应该使用数据库用户角组成员。开发人员应该根据应用系统的不同功能要求, 合理地配置好这些权限。如果是采用连接文件连接数据库的最好给连接文件加密。还有对系统一级进行设置, 例如使用防火墙关闭端口对外的连接;给系统和数据库打上最新的补丁;及时检查系统是否出现弱口令用户, 一旦发现要及时修改密码等等。
2. 功能代码端设置
首先, 要将应用系统中的密码字段进行加密(如最常见的MD5加密), 这不仅是为了隐藏用户信息、尊
重用户隐私, 更重要的是提高系统的安全性。其次就是在程序中要对用户输入的信息进行检验, 以达到SQL 攻击的防御效果。目前这种检验方法一般有替换或删除敏感字符/字符串检验法和在服务器正式处理前对提交数据进行检验法两种。
2.3 SOAP安全
SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境中交换信息的简单的协议,是一个基于XML的协议。基于SOAP的通信,系统中的SOAP消息总是与HTTP进行绑定,由HTTP传输,能够穿过防火墙很容易地实现企业应用间的互联,
但是对防火墙的穿透也带来了相应的安全问题。安全原型通过提供附加的安全过滤机制主要是对SOAP报头进行分析来识别、检查和过滤XML和SOAP通信,阻断异常消息。过滤器并没有实现对于SOAP主体代码的检查,这是因为首先分析大量的代码计算量太大,效率很低,并且这种实现也是无意义的,因为黑客总能到操纵和隐藏其恶意代码的“安全”方式,从而逃避防火墙或过滤器的检测。
为了防止在公用网络上传输的数据被窃听和修改, 可对线路上的数据加密, 并重新组合成新的信号发送给接收方。为保证系统传送的数据的准确性, 系统可采用SSL(Secure Sockets Layer)双钥加密的方法
进行数据加密[7]。SSL 运行于HTTP和TCP网络层之间,客户端和服务器端协商加密算法,然后用协商的会话密钥对数据进行加密。XML加密和XML数字签名规范是WS-Security 的中心内容,提供了在XML 文档中进行数据加密和签名的方法,支持通用的数据加密算法和技术,规范中包含了用于标识加密算法的XML元素,提供了与公钥相联系的统一资源指示器用于对发送方的身份进行确认。XML签名规范定义了用于表示数字签名的语法结构和处理规则,保证了数据的完整性和表明了数据的创建者。XML签名和XML加密结合在一起,可以确保数据发送和接收的一致性。可以通过WS-Security 对SOAP 进行扩展,在SOAP消息的头部加入安全数据实现加密和数字签名。
3.ABC公司企业信息管理系统
3.1 系统结构简介
芝麻GOABC公司是一个大型的跨国公司,总部在德国,公司在中国有六个分支机构,中国区的总部在北京,公司急需建立一个规范化的管理系统。公司大部分员工的登录方式是通过虚拟内部网的方式来登录系统,考虑到销售人员工作的流动性及公司客户需求,我们采用C/S 结合B/S结构来设计整个系统。开发工具为ASP.NET和C#,数据库选择SQL Server 2000。
图2 ABC公司企业管理系统框架
如图2所示,该图为ABC公司信息管理系统的框架示意图。我们将系统使用者分为三大类:User A 代表从Internet网通过VPN的方式连接到公司Web Server的人员,比如出差在外的销售人员;User B代表着在公司内部有Web 使用的人员,包括公司所有的员工;User C代表用WinForm的形式处理数据的员工,包括财务、培训、库房等部门的全体员工。整
个模型包括Web Service、Authentic Server、Web Server 和DataBase Server。Authentic Server 是身份验证服务器,是C/S架构下不可缺少的一部分,用户只有取得Authentic Server返回的一个合法的唯一标识序列号,才可以和Web Service之间正常通信,调用Web Service提供的服务。Web Server是为系统提供网络登陆、在线操作的服务。DataBase Server是数据服务器,数据库与Web Service之间通过ADO.NET(ADO.NET是一种数据访问方式,拥有自己的ADO.NET接口并且基于微软的.NET体系架构)通信。Web Service是整个系统的核心服务器,它提供用WSDL描述的服务,通过UDDI发布后,供客户端和系统内其他服务器通过SOAP进行调用。
3.2 安全机制实现
教师节祝福语英文
远程用户登陆采用VPN的方式,由于传输的是私有信息,VPN用户对数据的安全性都比较关心。本系统中的VPN通道,目前采用的是使用者名称与密码或卡片式认证技术,使用者通过发送本人的用户名和密码取得VPN网关的认证,从而可以登陆到内网Web服务器,进行系统操作。数据访问过程中,使用DPAPI加密数据库连接字符串,并将加密的密码文本存储在具有受限 ACL 的受保护的注册表项中;SqlConnection 对象在 Microsoft Visual C#® using 语句的内部创建,这可确保无论是否发生了异常,都断开方法内部的连接,降低拒绝服务攻击的威胁;数据访问代码放在 try/catch 块中,这是防止在出
现异常时将系统级信息返回到调用方所必需的,调用 ASP.NET Web应用程序或Web服务会处理异常,并向客户端返回适当的一般错误消息。系统使用正则表达式验证输入,检查所提供的产品ID,以便验证它只包含A–Z和0–9范围内的字符,而且不超过12个字符,并将参数化存储过程用于数据访问。
图3 基于Web服务的安全体系框架
我们的系统是基于Web Service实现的,系统分为基本信管理模块、产品设备信息管理模块、财务报表模块、商务、培训、演示等多个模块,本文不再多加叙述,不同等级的用户及不同部门的员工所能访问的系统功能不同,这在一定程度上保证了系统的安全。另外,由参考文献[7]和[8],我们从传输层和消息层来进一步采取安全机制,系统的整个安全体系框架如图3所示。在传输层选择HTTP基本认证Basic Auth和安全套接字层SSL作为组合安
全机制,用户名密码对用Base64进行编码能很容易地解码为明文,因此应当与SSL 组合使用。系统中的通信主要是基于SOAP的,考虑到执行效率的问题,我们只在简单基础业务中选择SOAP与HTTPS绑定。系统通过WS-Security对SOAP进行扩展,在SOAP消息的头部加入安全数据实现加密和数字签名,提供了在XML文档中进行数据加密和签名的方法,确保了数据发送和接收的一致性,有效地克服了SOAP消息通过HTTP穿过防火墙所带来的问题。C/S架构下用户登录之后,将用户密码发送到身份验证服务器,系统返回一个唯一标识序列号,我们称它为Ticket,只有取得合法Ticket的情况下,用户才可以和Web Service 之间正常通信,调用Web Service提供的服务。除此之外,安全日志系统负责记录用户对服务的成功访问以及用户对服务试图访问的请求,以便于系统的维护。
4.总结
本文从VPN、数据库以及SOAP的角度分析了企业信息管理系统的安全机制,并具体实现了ABC公司的企业信息管理系统,完成了企业信息数据的安全、完整传输,目前ABC 公司的信息管理系统运行状况良好,满足了企业内部员工、企业合作伙伴及用户的需求。
参考文献
[1]刘杰、沈荣芳,企业信息管理系统:概念、发展、问题及研究方向[J],系统工程,1994年,第6期
[2]绍良杉,基于VPN技术的企业管理信息系统的开发[J],计算机系统应用,2003年,11期
[3]诺里斯,全域网设计:Intrancet、VPN 及企业网[M],人民邮电出版社,2001年
[4]吴溥峰、张玉清,数据库安全综述[J],计算机工程,2006年,第12期第32卷
[5]徐陋、姚国祥,SQL注入攻击全面预防办法及其应用[J],微计算机信息,2006年第22卷第3-3期
[6]H.M.Deitel、P.J.Deitel等著,励志等译,Web服务使用技术教程[M],机械工业出版社,2004年
[7]钟秀玉,基于Web的MIS信息安全设计[J],微计算机信息,2006年,第22卷第6-3期
[8]刘开、李红辉、陈旭东,基于Web Service的分布式网管系统的安全机制[J],北京邮电大学学报,2006年5月,第29卷增刊
Research and Implementation of the Security Policy of Information Management System for Enterprises
Bai Guangyu, Tan Wenyan, Shou Guochu, Hu Yihong
BUPT Comtest R&D Center, BUPT, Beijing (100876)
Abstract
In this paper we analyze the security policy of the Information Management System for Enterprises (EIMS), by employing the security technologies of the VPN, Database and SOAP, we implement the Information Management System for ABC corporation, achieve secure data transferring, fulfill the need of the ABC corporation and its customers.
Keywords: EIMS, Security, VPN, Database, SOAP, Web Service
作者简介:白光禹,男,1981年生,硕士研究生,主要研究方向是接入网与通信测试技术。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。