浅析SQL Server数据库的安全问题

时间:2022-03-11 06:21:12

浅析SQL Server数据库的安全问题

摘 要:迅速发展的信息技术以及网络日益广泛地应用于社会的一系列行业,这大大方便了人们的生活与工作,然而,我们需要注意的是,由此产生的数据安全性问题也提上日程,信息安全问题正在越来越备受人们的关注。该文将从数据库自身特点、SQL Server数据库安全机制、存在的问题以及针对这些存在的问题提出自身的一些改进的看法。

关键词:数据库 安全 信息

中图分类号:C939 文献标识码:A 文章编号:1674-098X(2016)12(b)-0092-02

当今时代是一个信息化的时代,也是一个大数据的时代,迅速发展的信息技术以及网络日益广泛地应用于社会的一系列行业,这大大方便了人们的生活与工作,然而,我们需要注意的是,由此产生的数据安全性问题也提上日程,信息安全问题正在越来越备受人们的关注。

尤其是在金融、保险、医疗、通信等行业,一定要采取有效的措施对其进行有效的安全管理数据,是关系商业系统的前提条件。展现上层的界面都跟数据库密切联系。如果数据库受到安全攻击以及破坏,那么会严重影响全部的系统,甚至产生毁灭性的危害。作为一种最受青睐的数据库系统SQL Server来讲,自身具备较强的安全保护体系,从而能够确保数据库当中数据的安全性。

1 数据库概念与特点

(1)概念:数据库,即数据存储的仓库。数据库当中储存的资料信息非常之多,然而这一系列资料信息的数量比较少,倘若系统状态正常,那么其能够在系统中长期进行存储,应用人员仅仅需要通过联网就能够共享数据。

(2)特点:共享数据。用户在探究要求的信息的情况下,可以在数据库中查找十分多的信息,在当前的社会发展过程中,信息技术这种技术非常关键,而在信息技术中,十分关键的一个组成部分是数据库信息,借助数据库可以达到多用户多进程的数据共享。

2 SQL Server数据库安全体系

在应用数据库的时候务必确保安全系数比较高,务必对其实施相应的安全策略。SQL Server中采取三级模式进行安全保障。第一关,通过登录账号的创建,允许合法的、通过管理员创建的一些登录账号成功连接服务器;第二关,通过创建数据库用户,将特定的数据库用户与登录账号关联,使得特定的数据库用户只能访问相应的数据库,而不是整个服务器下的数据库全能访问;第三关,通过审计,将数据库用户授予相应的权限,合理安排权限。

3 存在的问题

对于运行过程中的数据库来讲,务必实施相应的安全策略,只有如此,才可以确保数据库的完整性不会受到十分大的破坏性,计算机的性能决定了数据库的精确性以及兼容性。然而,如此的现状会严重影响到数据库的安全性,管理工作者务必实施有效的策略防止输出有价值的信息资料,然而,非常有可能由于一系列异常的操作而使数据库系统的错误出现,在系统当中非常有可能侵入这一系列的信息,进而影响到数据库的完整性。

3.1 账号太脆弱

不少比较成熟的操作系统环境,因为受到企业相关要求与安全策略的影响,数据库用户常常不具备充分的安全设置,像是系统当中公开缺省的用户密码与账号未曾被修改或者是禁用,进而难以避免非授权访问,以及在用户账号过期控制与缺少密码强度的现状下设置用户账号,这使安全功能的提供非常有限。

3.2 数据库管理工作者身兼多职

传统的数据库管理缺少安全管理工作者,这导致数据库管理工作者不但管理和维护账号,即开发普通数据库,而且调试跟踪专业数据库的操作与优化,进而降低管理效率,给数据安全也带来许多不安的因素。

3.3 软件本身存在问题

软件本身存在缺陷和不足,默认设置的不安全和服务的脆弱都给安全埋下隐患。

4 改进措施

4.1 保障网络系统的安全性

网络系统的安全性是基础保障,是确保数据库安全的根本所在。一般而言,应用数据库的外部环境是网络系统,要想共享数据库系统少不了网络系统。针对数据库用户,不管是分布式用户,还是异地用户,都只有借助网络才可以对数据库当中的数据进行访问。以技术层面而言,存在非常多的防范网络系统层次的技术,一般划分为协作式入侵检测技术、入侵检测、数字认证和签名、防火墙等。

4.2 保证操作系统的安全性

运行大型数据库系统的平台是操作系统,对操作系统的科学选择,从某种意义上能够保证数据库的安全性。保障操作系统安全的手段是审计、访问控制、隔离控制、加密信息。

4.3 加密数据

避免泄露数据库信息的一种有效方式是加密数据,相比较于传统的网络和通信加密技术,因为保存数据的时间比较长,也要求比较高的加密强度。并且,因为多用户共享数据库当中的数据,因此要求比较高的解密和加密时间,从而不会使系统性能的要求显著降低。

4.4 应用立足于视图的数据库安全模型

文章之前分析了SQL Server通用安全模型的特性是把权限赋予表,用户要想操作数据库、更改数据、查询数据的情况下,需要对表进行直接存取,用户只要具备对表的Select权限,就能够对表当中的一切信息进行检索。然而,实际情况下大部分的应用都需要划分信息为各种保密等级。如常用的学生成绩管理,对于普通的用户来说,只能查询自己名下的信息,但是我们知道,事实并非是每一个用户独立的创建成一张表格,而是在数据库设计时将所有学生创建成一张表,这就是通过视图的机制来实现的,举例说明:系统中有2张表为student表,包含sno(学号)、sname(姓名)、ssex(性别)、sbirth(出生日期)以及cs(成绩表),包含sno(学号)、cno(课程号)、cgrade(成绩)。对于普通的用户只能查询自己的成绩,可以采用以下步骤:

(1)Create view v_grade

as

select s.sno,sname,cno,cgrade from cs c join student s on s.sno=c.sno

where sname=suser_sname()

(2)建相应的登录账号及数据库名。

(3)授予数据库用户查询视图v_grade 的权限。

所以对普通用户来说,他是无法查询到student表及cs 表的,通过视图机制,很大程序上保障了数据的安全。

该文从多个方面论述了SQL Server中安全存在的问题以及改进措施,有时需多个策略同时并进,具体问题具体分析。

参考文献

[1] 罗运模,王珊.SQL Server数据库系统基础[M].北京:高等教育出版社,2004.

[2] 韩嘉柠.Web数据库的开发与安全设计[J].电脑知识与技术(学术交流),2007(13):124-125.

上一篇:双创时代互联网+背景下职业教师水平如何提升 下一篇:基于Google Earth与SketchUp的技术构建虚拟校...