当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server数据库安全管理经验谈

MSSQL
详解SQL Server中数据库快照工作原理
VB应用程序访问SQL Server的常用方法
SQL Server特殊磁带备份及恢复设计
基于SQL Server的C/S数据库应用系统
如何实现SQL Server 2005快速Web分页
关于SQL Server数据库中转储设备分析
从外到内提高SQL Server数据库性能
准备SQL Server 2008透明数据加密
快速升级MySQL系统表
解析:在SQL Server下数据库链接的使用
细化解析:SQL Server 2005 数据库镜像
轻松接触SQL Server 2000实例的命名规则
SQL提供的进行数据传输的实用程序—BCP
SQL Server 2000 作数据库服务器的优点
解析:正确的理解SQL Server和XML支持
轻松了解数据库计算机的概念和发展方向
解析SQL Server数据体系和应用程序逻辑
SQL进行排序、分组、统计的10个新技巧
教你怎样打造SQL Server2000的安全策略
解析SQL Server 2005 溢用之:合并列值

MSSQL 中的 SQL Server数据库安全管理经验谈


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

很长时间以前,我听说在SQL Server上工作要随时做好出现糟糕情况的心理准备。实际上,为了保护您的软件以防止恶意攻击,您最好先尝试自己攻击这些软件,恶意攻击可能来自怀有不满情绪的员工、出于经济目的犯罪活动或者竞争对手在试图获取您的用户列表等等。

您的代码可以帮助进行测试:编写一个存储过程然后用错误的输入格式来施展进攻,例如,在需要日期的地方,传递一个错误的日期或一个字符串,在需要货币格式的地方,输入一个日期等等。

作为一个数据库管理员,您应当阻挡各种攻击,并将这些攻击方法写在一个存储过程或者UDF中,然后对系统进行测试。如果存在安全隐患,那么将这些问题向前台软件的作者进行汇报也是您的职责所在。

没有意义的输入应当尽可能地被前台软件阻挡在外,错误的和恶意的输入(也就是具有破坏性但并不是完全没有实意的信息)可能会通过前台软件的检测,这时,您应当在此处与它们展开战斗。

最安全的办法是强制前台软件调用存储过程或者UDF,这样,SQL Server将会处理通过了前台软件检测的这些有问题的输入,然后将它们退回,这样,问题就回到了前台软件的开发团队,您可以将错误号码、您的存储过程中自定义的文本一同递交给开发团队,或者什么都不必做,就等着错误自己浮出水面。

相信我(或者最好不要相信我),总有一天会有人恶意进攻您的数据库,如果您没有任何防备,那就等于将数据库大门的钥匙拱手相送。