基于ASP的Web数据库的安全机制

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:gengyuefeng009
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:通过叙述ASP连接Access或Sql Server数据库的几种方式,来分析访问Access和SQL Server两种Web数据库的安全机制。
  关键词:ASP;Web数据库;安全机制
  中图分类号:TP309文献标识码:A文章编号:1009-3044(2007)15-30621-01
  Safety Mechanism of Web Database Based on ASP
  XU Wei-ying
  (Suzhou Vocational University,Computer Engineering Department,Suzhou 215001, China)
  Abstract: Through narrating several ways for ASP to connect Access or Sql Server database, in order to analyze the safety mechanism of visiting Access or SQL Server Web database.
  Key words: ASP; Web data base; Safety mechanism
  
  1 引言
  
  使用ASP开发Web应用程序,通常需要Web数据库来存储和管理数据。在商务网站中,数据库里存储了商品和顾客等重要信息,为了确保数据库中这些信息的安全,必须防止非法用户使用,以防数据库的信息内容被更改或窃取。本文以一个购物网站的数据库为例,详细叙述ASP访问后台数据库时的几种连接方式,并以此来分析访问Access和SQL Server两种数据库时Web数据库的安全机制。
  
  2 ASP程序连接数据库的几种方式
  
  在实际开发Web网站的过程中,若要访问数据库,首先必须连接数据库,然后再实现对数据库的查询、插入、更新、删除等操作。ASP程序通常是通过内置的ADO(ActiveX Data Objects)组件访问Web数据库,ADO再通过ODBC(Open DataBase Connectivity)或OLE DB驱动程序来连接与访问数据库的。我们可以根据实际需要采用下列方式之一来连接数据库。
  2.1 通过ODBC设置系统数据源,连接数据库的核心代码如下:
  <% '利用Server对象的CreateObject方法建立Connection对象
  set conn=server.createobject("adodb.connection")
  '打开Access数据库,建立连接。DSN表示在ODBC上设置的数据源,UID表示用户账号,PWD表示密码,DataBase表示数据库上的一个表
  conn.open "DSN=dzlt; UID=sa; PWD=; DataBase=student"
  '或打开SQL Server数据库,建立连接。DSN表示在ODBC上设置的数据源,UID表示用户账号,PWD表示密码,DataBase表示数据库
  'conn.connectionstring="dsn=SQLmarket;uid=sa;pwd=123456;database=market"
  '断开连接
  set conn=nothing %>
  2.2 直接指定ODBC驱动程序,连接数据库的主要代码如下:
  <% set conn=server.createobject("adodb.connection")
  '直接指定ODBC驱动程序,连接Access数据库
  conn.connectionstring="driver={microsoft access driver (*.mdb)};dbq=" & server.mappath("market.mdb") & ";uid=sa;pwd=1234"
  '或直接指定ODBC驱动程序,连接SQL Server数据库
  'conn.connectionstring="driver={sql server};server=wwwfox-net;database=market;uid=sa;pwd=123456"
  conn.open
  set conn=nothing %>
  2.3 直接指定OLE DB驱动程序,连接数据库的代码如下:
  <% set conn=server.createobject("adodb.connection")
  '直接指定OLE DB驱动程序,连接Access数据库
  conn.connectionstring="provider=microsoft.jet.oledb.4.0;data source=" & server.mappath("market.mdb")
  '或直接指定OLE DB驱动程序,连接SQL Server数据库
  'conn.connectionstring="Provider=SQLOLEDB; Data Source=wwwfox-net; Initial Catalog=Market; User ID=sa;Password=123456;"
  conn.open
  set conn=nothing %>
  
  3 ASP程序访问数据库时的安全机制
  
  数据库的安全性包括对用户可以看到的信息进行控制。如购物网站上,我们希望对用户有以下限制:(1)每个用户必须注册,才能购物,否则只能浏览信息;(2)允许顾客获取与自己购买有关的信息,不允许顾客获取其他顾客或库存等相关信息;(3)允许顾客通过Web应用程序浏览或修改注册和购物的数据信息(如网上注册,购物等),但不允许使用其他方式修改数据库的这些信息。控制用户和应用程序对信息的访问有助于提高数据内容的可靠性,防止未授权用户的访问,以及授权用户的越权访问。
  3.1 Access数据库
  Access数据库和ASP常用于开发中小型Web应用程序。由于Access是文件数据库,它可以与ASP程序一起发布而不需要进行配置,具有很好的灵活性,但由此也带来了安全隐患。如果Access数据库文件在站点内部,用户通过猜出数据库路径则可以输入URL地址(如HTTP://IP地址/路径/Market.mdb)直接下载数据库,窃取数据库中信息或更改信息再上传。所以,确保数据库安全性的首要任务是防止用户下载数据库。一种方法是将数据库存放在虚拟目录以外的文件夹中,通过1.1中ODBC设置系统数据源连接数据库;另一种方法是将数据库存放在站点目录的上级目录中,在连接数据库文件时,通过2.2或2.3中的语句Server.MapPath(“../../Market.mdb”)将虚拟路径映射为物理路径。使用以上两种方法后,用户均不能下载数据库,从而有效地防止了数据库中信息内容的泄露。其次,我们可对数据库设置密码, 在Access中选择[工具]→[安全]→[设置数据库密码]设置密码。这样用户即使下载了数据库,也不能轻易地打开数据库。需要注意的是:设置密码后,在数据库连接字符串中就必须设置PWD=password。此外,在设计数据库时,我们可以把供用户访问的数据信息和供管理员访问的数据信息放在不同的数据库文件中,并存放在不同的文件夹中。如设计购物网站时,我们将允许用户访问的用户注册表、商品信息表、订单表等数据放在一个数据库中,而将不允许顾客访问的库存表及雇员表等信息放在另一个数据库中,这样供管理员进行后台管理的数据就又多了一道安全保障。
  3.2 SQL Server数据库
  SQL Server的安全机制可以划分为操作系统的安全性、SQL Server的登录安全性、数据库的使用安全性和数据库对象的使用安全性4个等级。在Web应用中使用SQL Server数据库,进行登录安全性验证的典型方法是把一组SQL Server登录名称和密码嵌入到Web服务器上运行的ASP程序中;然后,由Web服务器负责验证用户,应用程序则使用它自己的登录帐户供用户访问数据。下面通过设置全局组和数据库角色来分析数据库及其对象的访问安全机制。
  3.2.1 设置全局组
  购物网站的用户一般包括:普通用户(仅浏览网页)、购物顾客、数据库管理员等。每一组用户都有不同的数据库访问要求,即对数据库及其对象的使用权限是不同的。因此,对于每一组用户,我们分别为它创建一个满足该组用户权限要求的、域内全局有效的组,并定义组成员可以访问数据库的权限。在购物网站中,我们应该创建Data Users、Data Login Users、Data Managers等组。
  3.2.2 利用角色分配权限
  数据库角色能为某一用户或一组用户授予不同级别的管理或访问数据库或数据库对象的权限,这些权限是数据库专有的。而且,还可以使一个用户具有属于同一数据库的多个角色。作为应用程序角色使用的示例,假设用户 Sue 运行购物网站应用程序,该应用程序要求在数据库 Market 中的表 Login 和 Orders 上有 Select、Update 和 Insert 权限,但她在使用 SQL 查询分析器或任何其它工具访问 Login 或 Orders 表时不应有 Select、Insert 或 Update 权限。若要确保如此,可以创建一个拒绝 Login 和 Orders 表上的 Select、Insert 或 Update 权限的用户-数据库角色,然后将 Sue 添加为该数据库角色的成员。接着在 market 数据库中创建带有 Login 和 Orders 表上的 Select、Insert 和 Update 权限的应用程序角色。当应用程序运行时,它通过使用 sp_setapprole 提供密码激活应用程序,并获得访问 Login 和 Orders 表的权限。如果 Sue 尝试使用除该应用程序外的任何其它工具登录到 SQL Server 实例,则将无法访问 Login 或 Orders 表。
  通过实际应用及理论分析得出简化安全策略的经验规则如下:
  ·用户通过运行ASP程序获得服务器和数据库的访问权限;
  ·通过将用户加入全局组,而全局组再加入角色获得权限,角色直接拥有数据库的访问权限;
  ·需要多种权限的用户可通过加入多个全局组的方式来获得权限。
  只要规划恰当,就能够针对不同的Web用户完成所有的访问和权限的维护工作。
  
  4 结束语
  
  基于Web数据库的安全是一个系统性、综合性的问题,而且其涉及的范围很广,其中对于数据库及其对象的数据安全最为重要。还应看到,和其他技术一样,入侵者的手段也在不断提高,安全防范是一个永久性的问题,只有通过不断地改进和完善安全手段,才能保证系统的正常运行,才能提高系统的可靠性。
  
  参考文献:
  [1] 张晓晓.基于Web的数据库系统网络安全策略研究[J].中国科技信息,2005,(12):113.
  [2] 王惠琴,李明,王燕.基于Web的数据库安全管理技术与实现[J].计算机应用研究,2002,(3):61-64.
  [3] 高怡新. ASP网络应用程序设计[M]. 人民邮电出版社, 2005.
  [4] 赵莉萍.数据库系统原理[M]. 华东理工大学出版社, 2002.
  [5] 张鑫燕. SQL Server 2000程序设计[M]. 科学出版社, 2003.
  注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
摘要:本文在ASP中建立与Web数据库的连接,以数据库Student.mdb中的“学生”表为例,阐述本方法操作数据库添加新记录的整个过程,并与传统的方法进行比较和探究。  关键词:ASP;ADO组件;ODBC驱动程序;数据库   中图法分类号:TP311 文献标识码:A 文章编号:1009-3044(2007)15-30616-01  ASP Links with the Access Datab
期刊
摘要:本文主要介绍了基于DVD系统将CD格式文件压缩为MP3文件存储到U盘的方法和基本原理,充分利用DVD系统自身的播放功能获取CD上的PCM数字信息,经过硬件解码,压缩成MP3格式,通过文件系统的操作经USB传输将数据写入U盘。  关键词:DVD系统;FAT文件系统;CD_RIPPING  中图分类号:TP37文献标识码:A文章编号:1009-3044(2007)16-31135-01  Fil
期刊
摘要:P2P网络技术在使人们享受信息资源,增强网络可用性的同时,也带来了新的网络安全问题。本文对P2P网络的安全性进行了分析,并提出了相应对策。  关键词:P2P;网络安全;网络技术  中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)15-30653-01  Analyses and Countermeasures of P2P Network Security  MA
期刊
摘要:文章以Visual FoxPro 6.0数据库管理系统为软件平台,通过查询实例阐述结构化查询语言(Structured Query Language,简称SQL)如何反映关系数据库三级模式结构,如何体现关系代数和关系演算思想。  关键词:关系数据库三级模式结构;关系代数;关系演算;SQL   中图分类号:TP311文献标识码:A 文章编号:1009-3044(2007)15-30606-03
期刊
摘要:本文主要描述了中国铁路通信系统的几十年来的发展历史,并通过对GSM-R系统具体原理和即将投入运营的合宁高速铁路GSM-R系统的具体应用的介绍,充分说明了GSM-R系统是铁路未来通信发展的方向,是铁路跨越式发展,全面实现信息化建设的里程碑。  关键词:铁路通信系统;GSM-R;信息化;网络建设;业务功能;历史意义  中图分类号:TE46文献标识码:A文章编号:1009-3044(2007)15
期刊
摘要:为了更好地、灵活的开发数据库应用软件,我们需要深入的研究ADO.NET的数据库访问机制,理解ADO.NET数据库的连接方法、对数据的操作与访问。ADO.NET添加了许多新的对象,如Dataset、DataReader、DataAdapter等,使得对数据库的操作更加简单。本文通过对ADO.NET数据交换原理、数据访问对象模型的使用,介绍了使用ADO.NET方法的数据库访问技术。  关键词:A
期刊
摘要: ASP. NET作为微软的.NET构架中的一部分,业已成为开发新型电子商务系统安全解决方案的主流开发工具。主要讨论了与ASP相比,ASP.NET的优势,注入式攻击问题以及实现 ASP. NET应用程序级别安全性的策略和解决方案。  关键词:.NET;ASP;安全;注入式攻击  中图分类号: TP393文献标识码: A文章编号:1009-3044(2007)15-30676-03  The
期刊
摘要:随着企业网、校园网及宽带网的迅速发展,基于三层交换与路由技术的交换机的应用已从最初网络中心骨干层、汇聚层渗透到接入层。本文对三层交换和路由技术、VLAN技术的应用进行了全面介绍,并对基于CISCO交换机的局域网VLAN配量进行了详尽描述。  关键词:VLAN;第三层交换;路由器;交换技术  中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)15-30657-03  
期刊
摘要:中国加入WTO以后,烟草工业企业面对市场的压力越来越大,推进服务营销尤为重要。然而,在Internet时代客户比以前有了更多的选择,而且只需轻轻点击鼠标就可以贴近你或离你而去。因此,对于企业来说仅仅满足客户的需求已远远不够,更重要的是如何能让服务给客户留下深刻的印象。CSS作为一种前景广阔的企业解决方案,也越来越多地显示出其在以客户服务为中心的时代无可替代的重要地位。  关键词:烟草行业;.
期刊
摘要:TCP/IP协议现在用得非常广泛,但它本身也有一些安全上的缺陷。描述了各种各样针对这些缺陷的攻击,包括序列号攻击,SYN Flood攻击。提出了一些对这些攻击的防御方法。  关键词:TCP协议;网络安全;协议攻击;安全防御  中图分类号:TP393 文献标识码: A 文章编号:1009-3044(2007)15-30682-01  Security Problems Study in the
期刊