数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

如何做好SQL Server的数据保护


发布日期:2019年05月13日
 
如何做好SQL Server的数据保护

由于多种原因进行安全设置的人们常常不理解数据的真正价值所以他们也无法对数据进行合适的保护将你的数据只限于需要的人访问并保证访问的人的合法性是一个数据库管理人员的重要工作然而确保数据可以访问不是意味着数据向所有人公开相反的你必须很仔细地保护数据并只对需要使用数据的人进行开放

设置安全性过程

通用的软件维护和数据库更新都会对系统安全起着重要作用通常包括以下步骤

分配一个可靠的密码给缺省的系统管理(SA)帐号然后建立自己唯一命名的帐号并将这一帐号放入sysadmin一定要确认新帐号也有一个可靠的密码

将独立的密码分配给每一个用户更好的使用Windows集成安全性并让Windows遵循稳定密码规则

决定哪些用户需要查看数据然后分配合适的许可请不要随便赋予用户各种权限例如不要把每一个人的工资随便让其他人访问

决定哪些用户需要更新数据然后分配合适的许可帐号管理人员应该可以查看所有用户的信息但程序员一定要限制更新这些信息的权限特别的只有负责特定帐号的管理者是唯一可以更改用户数据的人

通过这些系列信息你可以学会很多知识但你应该从开始就具备这些观点否则数据库的任何用户就可以偷窃或删除你的重要数据

什么东西最容易发生错误?

对于记录应该知道SQL Server并非绝对安全的你应该提出一些想法并努力有效地保护你的服务器在安装服务器之前有两点你必须完成的

设置管理人员的帐号和密码

保护系统防止受到Slammer worm的感染

使一些特殊的东西安全化

SQL Server 通过SA帐号而具有缺省的安全设置在安装过程中SQL Server自动建立一个管理的用户并分配一个空白密码给SA用户名称一些管理人员喜欢将SA密码设置为空白或者一个通用的密码以便每一个人都能知道如果你犯这样的错误进入你的数据库的任何人都可以为所欲为具备管理者允许的任何人也可以做任何想做的事——不仅仅是数据库而是整个计算机所以必须限制用户根据他们的需要进行访问数据库不要给他们权利太少也不能太多

暂且把每一天管理的SA帐号放在一边让我们看看带有安全密码的帐号建立另一帐号以便管理(或者是一个SQL Server帐号或者是一个Windows帐号取决于你的认证模式)你所要避免的是太容易地猜到帐号名称或者帐号密码因为任何人得到这些帐号

一个引起警戒的坏事—Slammer worm(Slammer蠕虫)

月份出现了一些非常致命的恶意代码即为Slammer worm这一代码专门针对于SQL Server的安装进行攻击通过利用SQL Servera代码中的缺欠蠕虫能够在SQL Server安装的时候复制本身程序而损坏整个机器和其他机器蠕虫生成时以秒可以充满网络微软已经花了很大力量来阻止这一蠕虫但是蠕虫还是无法完全消除有些人开始抱怨SQL Server的测试版本的原因因为是它在安装时导致了系统的损坏

很多月份已经过去了有必要还要对蠕虫那么警惕吗?回答是肯定的因为每一天还有很多Slammer的复制而感染机器如果一个没有任何补丁的SQL Server连接到网络你将会变成这一行为的牺牲品从道德上而言在将SQL Server与网络线连接之前必须保护你的服务器并运行所有的新服务补丁

服务补丁的重要性

服务补丁在下载时是免费的Slammer没有损坏你的数据但它可以导致服务器的很多破坏其危害是明显的保护数据最简单的方法是下载Service Pack 或者Service Pack a

蠕虫如何工作这一方面的知识并不是重要重要的是蠕虫在微软的补丁发布以后还可以生存个月被蠕虫感染的商业系统通常有两个原因一是管理人员没有很有效的保护好系统二是蠕虫本身太厉害

你应该注意到SQL Server SP也是无法保证它能够保持全部的数据你应该实时监控Microsoft‘s Security Bulletin(微软安全公告)以保证处于被服务补丁通知的状态

选择一个认证模式

在SQL Server安装过程中有一个必须决定的是选择安全认证模式这里有两种模式

Windows认证模式(也叫集成模式)

混合模式

Windows认证模式用户通过使用一个现成的Windows用户帐号连接到SQL服务器当用户使用一个合法用户名和密码连接到服务器时SQL Server就确认用户的注册信息结果是用户只是在Windows和SQL Server中注册帐号信息被Windows严格的存储

混合模式是Windows认证和SQL Server认证的结合在混合模式中一些用户可以继续使用Windows帐号来访问SQL Server但其他只能使用与Windows帐号完全不关联的SQL Server用户帐号每一个SQL Server帐号都存放其用户名和密码如果这些注册值相同用户必须输入两次——一次是Windows输入另一次是SQL Server输入

Windows认证比混合模式更优越原因在以下

◆它比SQL Server认证提供更多的特性

◆很多管理人员都认为Windows认证比较容易执行和使用

◆使用Windows认证不需要将密码存放在连接字符串中

◆Windows认证意味着你只需要将密码存放在一个地方

不幸的是Windows认证并不是每一个人都能够使用的混合模式必须在SQL Server 中运行而Windows认证只能在SQL Server中使用还有其他的一些环境Windows认证无法运行因为无法获得垮平台的相互信任在这种情况下你只能使用混合模式和SQL Server注册

其他安装技巧

在安装SQL Server时还在其他一些技巧值得注意

使用TCP/IP作为SQL Server的网络库这是微软推荐使用的库是经受考验的如果服务器将与网络连接使用非标准端口会被一些别有用心的人破坏

使用一个低级别的帐号来运行SQL Server而不是一个管理帐号这对系统崩溃的时候起着保护作用

不要允许未获得安全许可的客人访问任何包括安全数据的数据库

将数据库保护于一个“被锁的房间”记住很多骚扰都是来自于内部的人

总结

从开始就要对数据进行安全保护措施为了防止有意或无意的破坏你应该保护你的数据学会建立安全模型并运用它让安全噩梦远离你高枕无忧的工作

上一篇:如何用SQL Server将数据库横向扩展

下一篇:SQL Server置疑数据库解决方法