SQL Server 2005 内置工具建审查系统
2009-05-12 20:50:36来源:未知 阅读 ()
作为收费应用方面的数据库管理员(DBA),公司首席信息官(CIO)经常邀请我与Sarbanes-Oxley审查员开会讨论公司数据的安全与整合问题。简单地说,他希望我们通过适当的文件回答许多问题:如谁访问了我们的数据、如何批准访问权、以及我们如何对访问进行监控,以防止某些人入侵、登录数据或做他们不该做的事情。
我的CIO与我了解了一些证明Sarbanes-Oxley法案遵守的商业解决方案。但是,我们决定应用SQL Server 2005内置工具来建立我们“自产的”审查系统。
Server 2005新功能
在使用SQL Server 2005之前,我们应用数据操作语言(DML)触发器来了解数据库中何时会发生数据变化。我们可以指着审查日志说,这里有一个列表,列出了自上次审查以来我们发布的所有插入(INSERT)、更新(UPDATE)与删除(DETELE)语句,包括执行语句的时间、日期、个人或程序。
DML触发器是一个数据库引擎启动的专用存储程序,它在为数据变化建立审查索引方面有很大的作用。但是,DML触发器只有在数据发生变化时才会启动。在使用SQL Server 2005之前,我们没有较好的办法来追踪数据库服务器中的结构或安全变化。
SQL Server 2005支持数据定义语言(DDL)触发器。在发生服务器或数据库级事件时,这些触发器才会建立并启动。DDL触发器允许我们追踪数据库中的重要变化——有意的、无意的或恶意的改变。
追踪所有注册
下面是一个DDL触发器改善数据库监控能力的典型例子。在以前版本的SQL Server中,我们很难了解何时建立新注册、何时建立新数据库、或是何时给不同用户分配了新许可。
在SQL Server 2005中,追踪这样的安全变化要相对容易一些。为说明这一点,无论用户是谁,让我们设计了一个追踪服务器上所有行为的解决方案。我们将用DDL触发器事件DDL_LOGIN_EVENTS来建立审查索引。这个事件触发器将寻找服务器上的任何注册事件,包括所有的建立注册(CREATE LOGIN)、修改注册(ALTER LOGIN)与删除注册(DELETE LOGIN)事件。
在SQL Server 2005中,通过运行CREATE DATABASE DDLTriggerTest语句建立一个审查索引数据库,然后定义下列域:
以下为引用的内容: IDCol SMALLINT IDENTITY(1,1) PRIMARY KEY, |
注意表格中利用了XML数据类型,这是SQL Server 2005中新增的功能。顾名思义,它的作用是保存XML数据。
一旦表格做好准备追踪事件,就可以建立必要的触发器来监控这些事件。第一步,我们的解决方案寻找服务器上发生的注册事件,包括任何建立注册(CREATE LOGIN)、修改注册(ALTER LOGIN)与删除注册(DELETE LOGIN)事件。运行以下脚本来建立触发器:
标签: 版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
相关文章
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设 网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源 网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它 服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护 软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷 网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash 热门词条
最新资讯
热门关注
热门标签
|