Web数据库安全技术与应用

来源 :硅谷 | 被引量 : 0次 | 上传用户:guohaohao
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要]数据库系统是计算机信息系统的核心部件,其安全性至关重要。结合工作中对数据库安全技术中三种模型的实际应用,分析它们各自的优点和缺点,并在此基础上得出这些模型合适的应用场合。最后通过一个应用案例,验证一种基于BLP 安全模型的实现方法。
  [关键词]数据库 安全模型 自主访问模型 强制访问模型 基于角色的访问模型
  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)1220036-02
  
  目前,数据库的应用相当广泛,在计算机世界,数据库存放着各类资源中最真实和最有价值的那部分,一旦遭受安全威胁将带来难以想象的严重后果。随着计算机数据库系统的广泛应用,数据库安全保护也越发重要。数据库安全是一个广阔的领域,从传统的备份与恢复,认证与访问控制,到数据存储和通信环节的加密,无不涉及。作为操作系统之上的应用平台,其安全与网络和主机安全息息相关。
  数据库系统的安全策略主要反映在数据库安全模型,依据存取控制策略、授权管理模式的不同,可以将数据库的安全模型分为三类,即自主访问控制模型(Discretionary Access Control,DAC)、强制访问控制模型(Mandatory Access Control,MAC)和基于角色的访问控制(Role-Based Access Control,RBAC)。[1]
  
  一、数据库安全技术
  
  Web数据库是数据库技术和Web技术的结合,其中存在诸多安全隐患,如通过网络传输的用户名和密码非常容易被人窃取。用户读取的数据可能被截取、篡改等。怎么才能确保和加强数据库的安全性已成为目前必须要解决的问题。
  (一)建立安全模型
  当用户访问数据库时首先通过数据库应用程式进入到数据库系统,这时数据库应用程式将用户提交的用户名和口令(口令密文)交给数据库管理系统进行认证,在确定其身份合法后,才能进入下一步的操作。当要对数据库中的对象(表、视图、触发器、存储过程等)进行操作时,也必须通过数据库访问的身份认证,只有通过了数据库的身份认证才能对数据库对象进行实际的操作。
  通过身份认证的用户,只是拥有了进入应用系统和数据库的“凭证”,但用户在应用系统和数据库中能进行什么样的操作,就要依靠“访问控制”和“存取控制”的权限分配和约束。其中“访问控制”和应用系统相关,决定当前用户能对应用系统中哪些模块、模块中的哪些工作流程进行管理;“存取控制”和数据库相关联,决定当前用户能对数据库中的哪些对象进行操作,及能进行何种操作。
  (二)审计追踪和数据备份
  目前还没有所有一种可行的方法来完全解决合法用户在通过身份认证后滥用特权的问题,但审计追踪仍是确保数据库安全不可缺的一道重要防线。
  审计是一种监视措施,跟踪记录有关数据的访问活动。审计追踪把用户对数据库的所有操作自动记录下来,存放在审计日志中(Audit Log)。记录的内容一般包括:操作类型(如修改、查询、删除),操作终端标识和操作者标识,操作日期和时间,操作所涉及到相关数据(如基本表、视图、记录、属性等),数据库的前象和后象等。利用这些信息,能进一步找出非法存取数据的库人、时间和内容等。
  (三)数据库备份恢复策略
  计算机同其他设备相同,都可能发生故障。计算机故障的原因多种多样,包括磁盘故障、电源故障、软件故障、灾害故障及人为破坏等。一旦发生这种情况,就可能造成数据库的丢失。因此数据库系统必须采取必要的措施,以确保发生故障时,能恢复数据库。数据库系统管理系统的备份和恢复机制就是确保在数据库系统出故障时,能够将数据库系统还原到正常状态。
  数据备份(建立冗余数据)是指定期或不定期地对数据库进行复制。能将数据复制到本地机制上,也能复制到其他机器上。恢复方法通常是能利用利用备份技术、事务日志技术、映像技术完成。
  (四)视图机制和数据加密
  为不同的用户定义不同的视图,能限制各个用户的访问范围。通过视图机制把要保护的数据对无权存取这些数据的用户隐藏起来,从而自动地对数据库提供一定程度的安全保护。不过视图机制的安全性保护不太精细,往往不能达到应用系统的需求,其主要功能在于提供了数据库的逻辑独立性。在实际应用中,通常将视图机制和授权机制结合起来使用,首先用视图机制屏蔽一部分保密数据,然后在视图机制上进一步定义存取权限。
  数据加密(Data Encryption)是防止数据库中数据存储和传输中失密的有效手段。加密的基本思想是根据一定的算法将原始数据(明文plaintext)加密成为不可直接识别的格式(密文,ciphertext),数据以密文的方式存储和传播。
  
  二、安全模型是Web数据库安全技术的核心
  
  我们通常建立安全模型来保障Web数据库安全运行,下面在分析三种安全模型的优缺点基础上,给出各种不同模型的应用场合,在此基础上提出一种基于BLP安全模型,并将其应用到售票系统数据库实例。
  (一)自主访问控制模型(DAC)
  自主访问控制模型是基于用户身份的访问和控制。在自主型访问安全模型中,每个用户都要被分配一定的权限,例如用户或者是被允许读取,或是被允许写入。也就是说,在自主型访问安全模型中,对资源对象的“拥有”是用户最核心的权限属性。当某个用户要求访问某个数据库资源时,系统检查该用户对该资源的所有权限,或衍生出来的访问权限,如果通过,则允许该访问在许可的方式下进行,如果不能通过,则拒绝继续访问系统。在自主型安全模型中,拥有某种权限的用户可以自主地将其所拥有的权限传授给其他任意在系统中登录的用户,它是该模型存在的致命缺点。自主访问安全模型的典型代表是存取矩阵。
  DAC 模型可对用户提供灵活和易行的数据访问方式,但安全性相对较低。在该模型中,尽管访问控制只在授权后才能得到,但攻击者也很容易越过访问的授权限制。如当一个用户有权对某数据进行读操作时,它可以把这个权利传递给无权读此数据的人,而数据的所有者并不知道这一切。一旦某个信息为用户所获得,那么该模型策略对信息的使用是不加任何限制的。也就是说,在该模型中,尽管有自主型控制,对于非授权的人来说,非法读取数据是可能的,这样一来,系统就很容易受到类似特洛伊木马的攻击。特洛伊木马可以改变系统的保护状态,使系统安全受到威胁。
  (二)强制访问控制模型(MAC)
  强制访问控制模型通过无法回避的存取限制来防止各种直接和间接的攻击。在强制访问控制之下,系统给主体和客体分配了不同的安全属性,这些属性在安全策略没有改变之前是不可能轻易被改变的。这一点与存取矩阵中的条目可以直接和间接地被修改的情况完全不同。系统通过对主体和客体的安全属性进行匹配比较决定是否允许访问继续进行。用户以及代表用户的程序/进程等都不能以任何方式修改自身的或任何客体的安全属性。显然,用户无权将任何数据资源,哪怕是属于自己的数据资源的访问权“赠送”给别的用户,因此也就不能简单地分配数据的访问权限了。强制访问模型包括BLP模型及其一些改进的BLP模型。
  1.BLP模型。强制访问模型的典型代表是Bell-LaPadula(BLP)安全模型。该模型是D.Elliott Bell和Leonard J.LaPadula于1973年创立的。现在大多数数据库安全系统都使用这种基于BLP模型的强制访问机制。该模型用主体(Subject)和客体(Object)来进行描述。一个客体可理解为一个文件、一条记录或一条记录中的某个字段。主体是一个请求访问客体的主动进程。每个客体被指派一个密级(Classification),而每个主体被指派一个许可证(Clearance)。密级和许可证结合起来作为安全类别(Class)并按偏序排列。
  BLP模型安全策略包括强制存取控制和自主存取控制两部分。强制存取控制部分由简单安全特性和“* -特性”组成,通过安全级来强制性约束主体对客体的存取;自主存取控制通过存取控制矩阵按用户的意愿来进行存取控制。BLP 还使用了可信主体的概念,用于表示在实际系统中不受“* -特性”制约的主体,以保证系统正常运行和管理。
  2.改进的BLP模型。由于传统BLP模型的这些缺点,人们提出了许多对BLP模型的改进方案[2],其中BLDM和MBLP是影响比较大的两种。
  (1)BLDM模型。BLDM(Bell&LaPadula Data Model)是T.Y.Lin等人对BLP模型改进后得到的。该模型提出了数据簇的概念,也就是要求不同安全级的原始数据必须存储在不同的物理卷中,即每个原始数据属于且仅属于一个簇,所有的簇物理地存放在一起,不同安全等级的数据占有不同的卷。这就意味着整个模型不再允许任何从高安全级向低安全级的数据流动,从而保证了系统的完全安全性。不过,如果完全强调系统的安全,那就牺牲了系统的可靠性,所以应用BLDM系统的时候,可以将下行的信息这样来处理:先将高安全级的信息删除,再将这个被删除的信息作为低安全级的信息插入。这项操作可以由不隶属于安全系统的工具软件辅助完成这种在BLP 模型下属于可信主体的功能。
  (2)MBLP模型。MBLP(Modified BLP)模型主要解决了BLP模型中存在的几个问题:
  ①针对BLP模型中可信主体不受“* - 特性”约束致使其访问权限太大,不符合最小特权原则的问题,MBLP对可信主体的操作权限和应用范围进行了进一步的细化。
  ②BLP 模型注重保密性,但缺少完整性控制,不能控制低安全级主体对高安全级客体的“向上写”,所以MBLP 对“向上写”操作作出限制。
  MBLP模型对于普通用户域的主体,BLP 模型的基本安全公理仍然成立。对于可信用户域的主体,满足二人原则。另外该模型可以有效地实现应用型病毒防护,还可以有效地限制隐藏通道。
  (三)基于角色的访问控制(RBAC)
  RBAC 是由美国George Mason 大学的Ravi Sandu教授提出[3],它提供了解决具有大量用户、数据库客体和访问权限系统中的授权管理问题。在RBAC中,权限是和角色相联系的,而用户则被指定到相应的角色作为其成员。这样就使权限的管理大大简化了。RBAC涉及用户(User)、角色(Role)、访问权(Permission)、会话(Session)这几个主要概念。角色是访问权的集合,当用户被赋予一个角色时,用户具有这个角色所包含的所有访问权。用户和角色是多对多的关系,角色与访问权也是多对多的关系。在RBAC 模型系统中,每个用户进入系统时得到一个会话,一个用户会话可能激活的角色是该用户的全部角色的子集。对此用户而言,在一个会话内可获得全部被激活的角色所包含的访问权。角色和会话的设置带来的好处是容易实施最小特权原则(Least-privilege Principle)。
  RBAC非常适用于数据库应用层的安全模型,因为在应用层内角色的逻辑意义更为明显和直接。RBAC在不同的配置下可显示不同的控制功能,它可以构造出MAC系统,也可以构造出DAC系统,甚至可构造兼备MAC和DAC的系统。RBAC流行起来的原因在于它与策略无关,可灵活适用于各种不同的安全策略。
  (四)一种基于BLP安全模型的实现
  在某市的车站售票管理系统的安全性设计中,应用BLP安全模型,取得了比较好的效果,该系统运行一年半以来,还没有出现任何安全性问题。该模型有售票员、票房主任、系统一般管理员、系统高级管理员几个主体。系统高级管理员负责完成权限的管理和分配,其他的主体被分配有不同的许可级别。被保护的客体,即系统中的文件、字段、表格等被指派一个敏感标记label,label{绝密,秘密,机密,公开},售票员、票房主任、系统一般管理员不能改变自身或者任何客体的安全属性,只有系统高级管理员可以确定用户和用户组的访问权限。当主体请求访问某个客体时,系统通过比较客体和主体的安全属性来决定主体是否可以访问客体。其访问流程图如图1所示。
  


  在车站售票管理系统中,由于用户比较少,很容易给所有的用户分配安全级别。客体数据的敏感级别也比较容易确定,所以在系统的安全性设计中采用了基于对系统中的主、客体进行分类的强制存取模型。该模型可以有效地防止特洛伊木马类的恶意进攻,同时还可以根据主体的不同权限,修改了“向上写”的特性,从而控制了因向上写而带来的安全隐患。
  
  三、结束语
  
  数据库安全模型在具体应用时,首先应分析清楚具体系统的特点,如果安全级别不是要求很高,可以用自主安全模型;如果很重视系统的安全性,则可以选用基于BLP的强制存取控制模型;RBAC模型则比较合适基于角色的大型系统。在实际应用中,还可以根据具体情况构造基于各种传统模型的复合安全模型来适应不同的需求。
  
  参考文献:
  [1]朱良根、雷振甲、张玉清,数据库安全技术研究,计算机应用研究,2004,9.127-129.
  [2]王元珍、冯超,数据库加密系统的研究与实现,计算机工程与应用,2005,8.170-172.
  [3]王正飞、王曼、汪卫等,数据库中加密字符数据的存储与查询,计算机研究与发展,Vol.41,Sup.2004;66~71.
  
  作者简介:
  程永奇,本科,合肥工业大学电力系统及其自动化专业;叶飞,男,本科,工程师,华北电力大学计算机系。
其他文献
[摘要]目的:研究大孔树脂分离和富集麦冬中总皂苷的工艺条件。方法:以麦冬中含量较高的麦冬皂苷A和麦冬皂苷B的富集量作为考察指标来确定富集效果。对5种不同类型的树脂进行评价优选。结果:D一101型大孔吸附树脂对麦冬中总皂苷有较好的分离富集能力。通过D一101大孔吸附树脂富集,麦冬提取物可以有效除去糖类等水溶性杂质,使麦冬皂苷A含量提高32倍,使麦冬皂苷B的含量提高36倍,富集效果好。  [关键词]麦
期刊
[摘要]在分析应变Si/应变Si1-YGeY/驰豫Si1-XGeX pMOSFET的在栅极电压作用下电荷在栅氧化层下面的分布情况的基础上,通过求解泊松方程,得到此器件的隐埋SiGe沟道阈值电压解析模型和表面沟道的阈值电压解析模型,并用典型参数对模型进行了模拟,得到的模拟结果与实验结果能够很好的吻合。  [关键词]SiGe MOSFET器件 阈值电压 解析模型  中图分类号:TM8 文献标识码:A
期刊
[摘要]介绍一种基于复杂可编程逻辑器件(CPLD)和数字信号处理器(DSP)的图像采集系统。系统采用增强型视频输入处理芯片SAA7111A完成视频信号的A/D转换,利用CPLD实现对视频前端译码后的视频数据的存储,以及完成前端采集与后端处理协调工作的方案。按照该方法制作的系统,经过实验验证效果良好。  [关键词]DSP CPLD 图像采集  中图分类号:TP3 文献标识码:A 文章编号:1671-
期刊
[摘要]中医药信息具有单属性多值的特点,同名异物、同物异名的现象普遍存在。传统的关系数据库中数据的表述是基于行与列的,这非常不利于中医药信息的描述。XML以一种开放的自我描述方式定义了数据结构,在描述数据内容的同时能突出对结构的描述。在XML中,用户可以采用树型结构自己定义标记,标记的增加与删除也非常的方便。然而XML毕竟不是数据库,用XML代替数据库的想法是不科学的。SQL Sever 2005
期刊
[摘要]TCP/IP已成为网络互联的标准,并成为支持Internet/Intranet的协议标准。就是针对当前流行的TCP/IP网络通信协议的实现进行具体的研究和探讨。  [关键词]TCP/IP协议 Internet 网络通信  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)1220053-01    Internet已经发展得更加商业化,更加面向消费者,尽管基本目的
期刊
[摘要]通过对3G网络的分析,结合现有彩铃业务实现方式,描述三种3G组网情况下的彩铃业务的实现方案。同时对这三种3G组网情况下彩铃业务的组网、功能、触发方式以及与原有2G彩铃的关系作详尽的阐述。  [关键词]彩铃 3G 多媒体 触发方式  中图分类号:TP3文献标识码:A 文章编号:1671-7597(2008)1220035-01    一、引言    本文分析3G彩铃,主要分析彩铃业务与3G网
期刊
[摘要]Visual Basice是一个功能强大的程序设计软件,有多种访问数据库的功能,而API是操作系统自带的一套功能强大的函数集,在VB开发中使用API可以大大提高编程的功能,提高效率。通过实例来体会在VB程序设计时如何调用API函数来访问Excel数据库。  [关键词]Visual Basice API函数 访问 Excel数据库  中图分类号:TP3 文献标识码:A 文章编号:1671-7
期刊
[摘要]主要介绍基于WEB的电子政务系统智能化模块,由电子政务概念引出智能化电子政务系统建设的必要性,具体分析智能化的电子政务系统应具备的模块,最后简单论述电子政务系统发展趋势。  [关键词]电子政务系统 系统权限 短信平台 OA 设备管理  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)1220064-01    电子政务是政府机构在其管理和服务职能中运用现代信息技
期刊
[摘要]MVC是一种基于Web应用的由多个视图共享一个模型的软件设计模式,能很好实现数据层与表示层的分离,真实反映出管理信息之间的内在关系,因此,为更好地对高等学校的各类教学资源进行有效管理,设计一种将MVC模式应用于教师日常管理的信息系统。  [关键词]MVC模式 管理信息系统 Struts结构  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)1220066-01 
期刊
[摘要]首先给出地图匹配算法的基本原理,对基于投影的地图匹配算法的两种情况,即车辆正常行驶的过程和车辆转弯过程,给出匹配的基本算法。在此基础上提出地图匹配算法的详细匹配过程。实际的验证结果表明基于投影的地图匹配算法对GPS接收器接收到的原始定位信息的校正是有效的。  [关键词]地图匹配 投影距离 方向夹角  中图分类号:TP2文献标识码:A 文章编号:1671-7597(2008)1220023-
期刊