基于SQL的后台数据库安全性策略分析及设计.doc_第1页
基于SQL的后台数据库安全性策略分析及设计.doc_第2页
基于SQL的后台数据库安全性策略分析及设计.doc_第3页
基于SQL的后台数据库安全性策略分析及设计.doc_第4页
基于SQL的后台数据库安全性策略分析及设计.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于SQL的后台数据库安全性策略分析摘要随着计算机的普及,以及计算机网络的普遍应用。数据库逐渐成为信息系统的核心部件应用于各个领域。由此数据库的安全性显得更加重要。首先介绍了数据库的相关概念以及数据库系统的发展;其次从外界环境分析了数据库安全性的的必要性和可行性;最后介绍了维护数据库安全的一些方法。关键词: 数据库安全;数据库安全性控制;数据库加密Abstract:Along with computers popularization, as well as computer networks universal application. The database becomes information systems core part to apply gradually in each domain. From the database security appears more important. Firstly, I introduced some concepts about database and show the development of the database. Secondly, the security of environment is very vital and necessary to database security control. In the end, introduced maintenance database securitys some methods, like the view mechanism, the database encryption.Key words:Database security, Database security control; Database encryption第一章,数据库系统介绍数据库技术在计算机应用领域有着举足轻重的地位。数据库好比人的大脑的记忆系统,没有了数据库就没有了记忆系统。计算机也就不会如此迅速的发展。数据库的应用已经深入到生活和工作的方方面面。数据库技术的发展往往代表着一个国家信息发展的水平的高低。1.1数据管理技术的发展数据管理是指数据转化为信息的过程,也就是数据的收集、存储、分类、计算、加工、检索和传输等一系列活动的统称。要处理的数据不仅仅是数字,还包括文字、图形、声音、视频等等。可以这样说,凡是在计算机中被用来描述对象的记录都可以被称为是数据。自上世纪50年代后,数据管理技术经历了一下三个阶段。1.1.1人工管理阶段刚诞生不久的计算机由于在软硬件方面发展均不成熟,使得计算机对存储信息的能力非常的弱。在硬件方面可以供存储信息的无非就是三样东西:磁带、卡片和纸带。而当时的软件方面还没有操作系统,这就使得计算机软件对数据存储的能力几乎为0。这个阶段由于还没有完善的软件系统对数据进行管理,这就导致了程序员在程序中不仅要规定数据的逻辑结构,还要设计其物理结构,包括存储结构、存取方法、输入输出方式等。如果数据的物理组织或者存储设备发生变化的时候,程序员往往就要重新编写数据的逻辑结构,使其适应物理组织或存储设备。这一阶段的数据管理技术可以说是非常的复杂。1.1.2文件系统阶段由于操作系统(即文件管理)的出现,导致了计算机领域的一次革新。而这次革新也对数据管理技术产生了深远的影响。可以说,在软件方面,程序员不需要再在物理组织结构和存储设备的设计上花费太多的时间和精力了。加之,上世纪50年代中期到60年代中期,由于计算机大容量存储设备(如硬盘)的出现,推动了软件技术的发展。这就使得在对数据处理的过程中,程序员关注的不再是底层,而是管理文件层。但由于数据的组织仍然是面向程序,所以数据冗余还大量存在,并且数据的逻辑结构不能方便地修改和扩充,数据逻辑结构的每一点微小改变都会影响到应用程序。由于文件之间互相独立,因而它们不能反映现实世界中事物之间的联系,操作系统不负责维护文件之间的联系信息。如果文件之间有内容上的联系,那也只能由应用程序去处理。所以,这一阶段数据管理技术还是不非常完善的。1.1.3数据库系统阶段当计算机被广泛应用时,人们发现原有的数据管理技术已经不能满足人们的需求。这时候,新的数据管理技术出现了。它是以数据为中心进行数据组织,同时又降低了数据的冗余, 并且提供更高的数据共享能力。它在处理程序和数据方面具有较高的独立性,当数据的逻辑结构改变时,不涉及数据的物理结构,也不影响应用程序,以降低应用程序研制与 维护的费用。1.2数据库和数据库管理系统什么是数据库。它其实是一种按照一定规范对数据模型进行组织,提供长期存储,并可以给多个用户共享的数据聚集。而数据库管理系统是一种专门用于建立和管理数据库的软件的统称。它介于应用程序和操作系统之间。但是数据库管理系统不单纯是对数据管理,它还要有保证数据完整性、安全性,并提供多用户的并发控制,当数据库出现故障时,对系统进行恢复。1.3数据库系统可以这么说,之前提到的数据库和数据库管理系统只是数据库系统的子集。换言之,数据库系统是数据库和管理数据库的软件组成的系统。它是伴随着对数据库处理发展起来的一种以数据处理为中心的软件体系。它是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。数据库系统一般由4个部分组成:数据库、硬件、软件、人员。其中数据库是数据库系统的核心,而软件中的数据库管理系统是数据库系统的核心管理。第二章,网络系统层次安全技术2.1网络层次分类网络分层实际上就是不同的硬件和软件模块通过将不同的数据进行发送或转发、打包或拆包,控制信息的加载或拆出等工作的过程。通过化繁为简,可以大大优化往来通信和网络互连。2.1.1OSI七层模型ISO提出的OSI模型将网络分为七层,分别为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。建立七层模型的主要目的是为解决异种网络互连时所遇到的兼容性问题。而它的最大优势就是将服务、接口和协议这三个概念明确地区分开来。可以这样说,在同一层中只有接口负责传输;在不同层中有服务来负责传输;而互连网络中各实体采用什么样的协议是没有限制的。2.1.2TCP/IP模型与OSI模型不同,TCP/IP由四个层次组成:网络接口层、网络层、传输层、应用层。可以这么说TCP/IP协议并不完全符合OSI的七层参考模型。与OSI的层与层之间可以相互通信不同,TCP/IP通讯协议只是每一层都呼叫它的下一层所提供的网络来完成自己的需求,而下层无法要求上层来完成下层的要求。2.1.3两者区别与联系OSI参考模型与TCP/IP协议都采用了分层结构,都是基于独立的协议栈的概念。OSI参考模型有7层,而TCP/IP协议只有4层,即TCP/IP协议没有了表示层和会话层,并且把数据链路层和物理层合并为网络接口层。不过,二者的分层之间有一定的对应关系,如表2-1所示。OSI网络模型 TCP/IP概念模型应用层应用层表示层会话层传输层传输层网络层网际层数据链路层网络接口物理层表2-1 TCP/IP四层模型和OSI七层模型对应表2.2 网络系统层次安全技术在当今网络盛行的时代,随着科技的进步,越来越多的公司将其核心业务向互联网转移,这就使得数据库的安全成为了网络安全的重中之重。在这种情况下,可以说网络已经成为了数据库应用的一个重要组成部分。而此时的数据库系统想要发挥其强大作用,就不得不依靠强大的网络系统作为主要的支持和支撑。在通过网络连接数据库的的用户(比如说异地用户、分布式用户)想要访问他们需要的数据库中的数据,就不得不依靠网络。可以看出网络系统安全已经成为数据库安全的主要屏障。如果网络安全失效,那么外部入侵就将变得更加肆无忌惮了。此时,数据库系统就需要加强对网络签名的分析。2.3 SQL签名分析常见的SQL签名分析主要基于一个函数的T-SQL和CLR两种实现,该函数返回查询字符串的签名。基本思路就是通过对比接收到的查询字符串。在这个签名中,出现在输入查询字符串中的所有字面值都被替换为一个通用的符号,而将会返回单个值的标量值UDF和返回一个表的表值UDF(内联和多语句)。例如,假设使用下面的查询字符串。NSELECT * FROM dbo.T1 WHERE Myname = L AND age 20;此时,所有的字面值都被替换为下面的字符串: NSELECT * FROM dbo.T1 WHERE Myname = # AND age #函数T-SQL实现主要是Stuart Ozer设计的,具体可以理解为通过提供查询字符串,对比以后的字符的最大长度。如果最大长度小于查询字符串的长度,将会分析部分字符。当检测到标识时,自动将其替换成字符串(上面例子中的#),然后将其输出。而函数由CLR SQL由Andrew J. Kelly 和 Dejan Sarka开发,它与T-SQL类似,但是执行速度更快些。第三章,操作系统安全介绍操作系统是大型数据库系统的运行平台。它可以为数据库系统提供一定程度上的安全保护,通常提供的安全级别是C1或C2级。其中Windows NT的安全级别为C1级别,而Unix的级别为C2级别的。3.1操作系统安全技术操作系统的安全技术有操作系统安全策略、安全管理策略、数据安全等方面,主要用于配置本地计算机的安全设置,其中账户锁定策略、密码策略、IP安全策略、审核策略、用户权利指派、加密数据的恢复代理以及其它安全选项。3.2操作系统安全具体体现用户账户是一种类似于我们常见的身份证一样,只有合法用户才有“身份证”,也就是账号。而口令是用户访问系统提供一道验证,就像“芝麻开门”。访问权限是规定用户的权限,具体说是什么级别的用户可以访问多大的范围,什么级别的用户可以管理多少的其他用户。第四章,数据库层次安全技术数据库安全主要是指保护数据库以防止非法用户通过不正当的手段对数据进行操作的行为。而不正当手段主要是低级用户越权访问上层数据,并对上层数据进行增删改操作;未注册用户通过一系列方法得到一定的权限,对数据进行使用、窃取、更改或破坏的操作。4.1数据库系统安全要求4.1.1完整性物理完整性和逻辑完整性构成了数据库的完整性全部。物理完整性是外界故障时候(例如突然断电或是硬件故障时候),数据库中的数据并未丢失。这个仅仅是物理完整性的第一个层面,更深的层面是在灾难性毁坏后,数据库中的数据可以重建或者恢复。逻辑完整性顾名思义就是对数据合乎逻辑的,且前后一气呵成。具体说来就是数据语义完整性和操作完整性。前者主要是指数据存取要符合一定的语法逻辑和逻辑上的完整性约束。后者主要是保证统一并发事务中的数据一致性。4.1.2保密性 保密性主要指数据库中的数据不被泄露和未授权的获取。由于数据库系统中一般要求对用户进行访问授权,同一组数据的不同用户可以被授予不同的存取权限同时还要求能够对用户的访问操作。这样就使得不同用户能够访问到的数据不同,对访问到的数据可以增删改的行为规定也不同。这就会导致有一些用户非法对不是自己权限内的数据进行操作。4.1.3可用性 可用性主要指数据库不应拒绝授权用户对数据的正常操作,同时保证系统的运行效率并提供用户良好的人机交互。 4.2 基于SQL的数据库安全机制 4.2.1数据库安全策略在一般计算机系统中,安全措施是一级一级层层设置的。在图4-1所示的数据库安全构架设计中,用户要求计入计算机系统时,首先要进行身份验证,只有当你有资格进入时才能够进入数据库中,对数据进行操作。图4-1数据库安全构架设计4.2.2身份验证任何东西都有最外一层的保护,在数据库系统中最外一层的保护措施就是对用户的身份认证。对身份认证主要是用户要进入系统时,必须向系统出示证明自己身份的ID和密码,系统通过严格的认证机制对用户身份进行审查核实,经过确认正确后,系统才会提供与其权限相对应的系统服务。SQL身份验证要求显式地指定 SQL Server 用户 ID和密码。具体实例:Data Source=ServerName;Integrated Security=SSPI;Initial Catalog=Northwind4.2.3访问控制数据库系统对每个用户都定义存取权限,这就保证用户只能存取有权存取的数据。而在处理具有相同权限的用户,数据库系统往往是创建一个角色并对其赋予权限,然后将这些用户添加到该角色中使它们成为这个角色的成员。若要改变这些用户的权限,只需对角色的权限进行设置,不必对每一个用户进行权限设置。 通过执行SQL语句就能够完成这个任务。该命的语法如下:GRANT SELECT, INSERT, UPDATE ON Customers TO DataEntry4.2.4数据库加密为了避免数据通过不正常途径被存取,数据库将数据用密文形式存储或传输,这样可以保证数据安全。对数据中数据加密是为增强数据库管理系统的安全性,提供一个安全适用的数据库加密平台,对数据库存储的内容实施有效保护。以下是几种加密的SQL语句:查看数据库加密状态select name,is_master_key_encrypted_by_server from sys.databases where name=TestDB创建自签名证书create certificate cert_Testcertencryption by password=pssw0rdwith

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论