当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server中保护数据的安全选项

MSSQL
MS SQL Server 2000系统数据类型
SQL Server几个容易出错的数据类型
SQL Server 数据库中关于死锁的分析
站长必备的sql查询语言基础知识
经验分享交流:常用SQL语句技法
SQL SERVER 2000 数据库备份与还原
解决SQL SERVER 2005无法远程连接的问题
SQL Server 安装参考意见
在sqlserver2005中安装sql server 2000的示例数据库northwind
SQL Server 2000 数据库分离与附加
高级自定义查询、分页、多表联合存储过程
SQL Server数据库下教你如何做导库SQL
常用的 MSSQL Server 数据修复命令
SQL存储过程初探
SQL Server存储过程编写经验和优化
卸载SQL Server2000后不能再次安装的问题解决方法
教你安装SQL Server 2005示例数据库
MySQL 的外键与参照完整性: Part 1
SQL Server安装:"安装文件配置服务器失败"的解决方法
SQL Server 数据库文件存放在何处

MSSQL 中的 SQL Server中保护数据的安全选项


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 57 ::
收藏到网摘: n/a

 不同于以往所有过分宣传的数据库漏洞,以及几十个隐私和安全规范,新出现了一个让SQL Server开发人员和数据库管理员们陷入了不得不面对强势用户的尴尬境地。他们问:

  · 你如何保护数据库中的敏感数据?

  · 你对你的数据库使用了什么加密方法?

  · 你如何将我们的数据与其他人的分离开来?

  · 我们有很多不同的客户——你能加密每个数据集吗?(这是以上最坏的问题。)

  虽然这些问题看上去很古怪,但是他们问出来了,你就需要知道如何应对,无论你是一个独立的软件开发人员,还是给一家大公司工作,或者是在两者之间。

  许多人都这样盲目地要求数据库分离和加密。他们受到来自审计员、经理们、销售人员,或者那些不懂得数据库安全措施工作方式的客户们的压力。许多人都认为分离数据集并且采用数据库加密就像电闸开关一样简单。他们不知道数据库管理员和开发人员面临着什么。这里有性能的需求,代码重新编写,必要的系统升级,第三方控制的实现,系统维护等等内容。更不必说,所有这些的价格对于需要它们的人来说通常就像是一片难以下咽的药片。

  我从来不是一个大惊小怪的人,如果说到数据库分离和加密,没有人会拒绝这样的事实:数据库里面有黄金,坏人都希望在攻击你的系统的时候有最大的收获。如果数据库没有被充分保护,这就任凭攻击者的处置了。

  对于数据库分离和加密,你有很多的选项。你可以升级到SQL Server 2005,编写你自己的加密机制,或者部署一个第三方的加密系统,你还可以:

  ·为每个用户创建一个唯一的数据库(天啊!)

  ·为每个客户建立一个唯一的应用程序和数据库服务器(你能说什么?)

  ·为不同的数据库和表建立(并管理)不同的用户账号(讨厌!)

  ·为每个用户建立唯一的加密密钥,这样他们就可以访问他们存放在数据库中的自己的数据了(说起来容易做起来难!)

  但是所有这些都没有完成整个画面。这里有太多的变数了。大多数数据库安全技术的问题是,如果前端应用程序或者经过授权的SQL Server账号可以访问并且解密敏感数据,那么那些进行SQL注入的攻击者或者破解了弱密码的人也可以做。最大多数情况中,无论你是在服务器上有一个单独的数据库,还是有多个数据库分散在多个系统中,这一点都是适用的。底线——如果你的前端应用程序虚弱的话,那么你的数据库中的敏感数据仍然是有风险的。

  我想要说的是,数据库安全控制,例如分离和加密都不轻松或者便宜。尽管有一件事情是必然的——如果你把敏感数据和私人数据放在了你的数据库里面,那么它基本上是安全的,人们会开始问,你做了什么来保护它。你不会让它离开你的视线的。

  看看实现这些额外的数据库安全控制需要涉及多少方面。把你的方式解释给他们听,你如何分隔每个数据库,加密敏感信息等。胡,给他们一个你不能做的理由。按照你已经部署的其它控制,减少数据库分离和加密的需求,例如,输入过滤,强有力的认真,甚至是所有磁盘的加密,以防你的整个数据库服务器或者硬盘被偷去。还有,不要忽视利用好工具和人工评估进行的渗透测试。还有正式的利用一些工具的数据库安全审计,例如AppDetective 和NGSSQuirreL,甚至是源代码分析工具,例如Compuware, Ounce Labs, Fortify Software, SPI Dynamics, 和 Klocwork公司提供的针对你的应用程序的分析工具。