APP下载

浅谈数据库的安全性

2016-05-18张丽平

电脑知识与技术 2016年9期
关键词:安全计算机数据库

张丽平

摘要:在计算机技术快速发展的今天,数据库的应用越来越广泛,数据库系统更是存放了大量重要敏感的数据,一旦这些数据遭到破坏或窃取,其损失难以估量。该文分析了数据库安全性的基础知识,介绍了数据库面临的威胁,最后给出了保障数据库安全的一些相关策略。

关键词:计算机;数据库;安全

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)09-0034-03

Introduction to Database Security

ZHANG Li-ping

(Jianghan art college, Qianjiang 433100, China)

Abstract: In the current rapid development of computer technology,the application of database is more and more widely, the database system is to store a lot of important sensitive data, once these data have been damaged or stolen, the loss is difficult to measure. This paper analyzes the basic knowledge of database security, this paper introduces the threats to the database, the database security is presented finally some related strategies.

Key words: Computer;database;safety

1 数据库安全的定义和目标

1.1数据库安全

数据库安全是指数据库管理系统必须允许系统管理员有效地管理数据库管理系统和它的安全,必须保证具备特殊数据访问权限的用户才能够登录到数据库服务器SQL Server,并且能够访问数据以及对数据库对象实施各种权限范围内的操作;同时还要防止所有非授权用户的非法操作,以防止信息的泄漏、修改和破坏。

1.2数据库安全的目标

数据库管理系统提供对数据安全存取的服务器,在向授权用户提供可靠的数据服务的同时,又要拒绝非授权的对数据的存取访问请求,保证数据库管理下的数据的可用性、完整性和一致性,进而保护数据库所有者和使用者的合法权益。

2 数据库面临的安全威胁

当前数据库主要存在十类安全威胁:滥用过高权限、滥用合法权、权限提升、平台漏洞、SQL注入、审计记录不足、拒绝服务、数据库通信协议漏洞、身份验证不足、备份数据暴露。根据最新研究显示,恶意内部人员和人为错误是对数据库安全的最大威胁,而不是外部入侵者。

3 SQL Server的管理权限

3.1安全管理模式

SQL Server提供了既有效又容易的三级安全管理模式:

第一级,我们需要登录到SQL Server系统,即需要登录账户;

第二级,我们需要访问某个数据库,即需要成为该数据库的用户;

第三级,我们需要访问数据库中的表对象,即需要数据库管理员给予授权,如添加、修改、删除、查询等权限。数据库用户只有通过这三道防线才能访问数据库中的数据。那我们该如何设置才能保证只有我们指定的用户才能访问数据库呢?就是我们下面要说的验证模式。

3.2 SQL Server 2005登录验证模式

安全身份验证,用来确认登录SQL Server用户的登录账号和密码的正确性,由此来验证该用户是否具有连接SQL Server的权限。SQL Server 2005的登录验证模式有两种,一种是Windows的验证模式,另一种是Windows和SQL Server混合验证模式。

3.2.1 Windows身份验证

SQL Server 2005数据库系统通常安装在Windows服务器上,而Windows作为网络操作系统,本身就具备管理登录、验证用户合法性的能力,因此Windows验证模式直接使用Windows的用户名和密码。即用户只要能进入Windows操作系统,便可以连接到SQL Server 2005。

3.2.2 SQL Server身份验证

在SQL Server身份验证模式下,用户在连接SQL Server 2005时必须提供登录名和登录密码,与Windows的登录账号无关,SQL Server自身执行认证处理。

4 数据库用户权限管理的应用

4.1创建登录账户

使用Windows身份验证模式进入SQL Server 2005,在“数据库”节点的下方找到“安全性”/“登录名”,在“登录名”节点上右击,弹出快捷菜单,选择“新建登录名”,打开 “登录名—新建”对话框,输入登录名“zhanglp”,选择“SQL Server 身份验证”,输入密码,不勾选“强制密码过期”复选框,单击“确定”按钮,就创建了一个新用户,如图1所示。

4.2 使用新账户登录

4.2.1 更改“服务器身份验证”模式

使用新创建的账号“zhanglp”登录SQL Server 2005,提示失败。SQL Server 2005安装后默认只执行Windows身份验证,如果要改变默认的验证模式,首先要以Windows身份验证模式进入SQL Server管理平台,右击数据库服务器,在弹出的快捷菜单中选择“属性”。在“服务器属性”对话框中,选择“安全性”选项,在“服务器身份验证”选项组中选中,“SQL Server和Windows身份验证模式”单选按钮,如图2所示。

4.2.2 重启SQL Server服务器

更改了服务器的身份验证模式后,需要重新启动SQL Server服务器,新的配置才会生效。

4.2.3 为新账户分配服务器角色

默认情况下,新创建的账户没有分配任何角色。打开账户的属性对话框,选择对话框左边的“服务器角色”选项,SQL Server 2005服务器的角色有多个,如sysadmin、serveradmin等等,在这里我为zhanglp新账户分配服务器角色为public,如图3所示。

4.3 访问数据库(创建数据库用户)

使用zhanglp新账户登录成功后,访问网上购物系统数据库时,提示无法访问。这就是第二层次的安全权限保护了数据,在此需要创建数据库用户。

以windows身份登录到SQL Server 2005管理平台,在“网上购物系统”节点下,找到“安全性/用户”节点,右击用户节点,选择“新建用户”命令,在打开的“数据库用户—新建”对话框中输入用户名“ys1”,登录名为“zhanglp”,单击“确定”按钮,如图4所示。

新建的用户名ys1就是登录者zhanglp进入数据库网上购物系统的“钥匙”。重新以zhanglp账户登录SQL Server 2005,就可以访问网上购物系统数据库了,但其他数据库还是不能访问。

4.4 访问数据表

成功访问网上购物系统数据库后,发现只有系统表而看不到用户表。这是因为zhanglp账户还没有相应的权限,当然就看不到数据表了,这就是第三层次安全权限保护了数据。

4.4.1 创建数据表的用户

以windows身份登录到SQL Server 2005管理平台,找到“网上购物系统/表/商品信息表”节点,在商品信息表上右击,选择“属性”命令,打开“表属性—商品信息表”对话框,再选择“权限”选项;再单击“添加”按钮,在打开的“选择用户或角色”对话框中单击“浏览”按钮,打开如图5所示“查找对象”对话框,选择数据库用户ys1,单击“确定”按钮,将成功添加用户。

用户建好后,操作商品信息表的权限很多,系统管理员可以把全部或部分权限赋予账户ys1,如图6所示。得到了系统管理员赋予的权限,重新以zhanglp账户登录到SQL Server 2005管理平台,发现网上购物系统中已经出现了商品信息表了,但其他数据表还看不到。

4.4.2 设置数据库中全部数据表的所有权限

网上购物系统数据库中有多个表,允许数据库用户对数据库的所有数据表进行全部操作(增、删、改、查等)。需要数据库管理员对每个数据表都要添加用户并赋予权限,太麻烦了。下面介绍简单方法:

以windows身份登录到SQL Server 2005管理平台,找到用户名ys1,重新进入属性设置,在数据库角色成员身份中选择“db_ower”,“db_ower”表示拥有该数据库的所有权限。

5 备份与恢复

尽管SQL Server系统采取了多种措施来保证数据库的安全性和完整性,但仍不可避免会发生硬件故障、病毒、误操作或故意破坏等使数据库中的数据丢失。备份数据库,是在数据丢失的情况下,能及时有效的使数据库恢复到备份时的正确状态,防止数据丢失的一种重要手段。

参考资料:

[1] 宋传玲.SQL Server 2005数据库应用基础教程[M].清华大学出版社,2012.

[2] 孔繁华.SQL Server 2005基础及应用[M].湖北人民出版社,2009.

[3] 姜桂洪.SQL Server 2005数据库应用与开发[M].清华大学出版社,2014.

[4] 刘卫国.数据库技术与应用—SQL Server2005[M].清华大学出版社,2010.

[5] 徐人凤.SQL Server 2005数据库及应用[M].高等教育出版社,2007.

猜你喜欢

安全计算机数据库
计算机操作系统
基于计算机自然语言处理的机器翻译技术应用与简介
信息系统审计中计算机审计的应用
Fresnel衍射的计算机模拟演示