MSSQL审计推荐

作为一个有抱负的DBA,我最近被分配了一个任务,即实现跟踪数据库中的所有数据变化,以便为我们正在开发的软件做好准备。 玩了微软的更改数据捕获方法后,我正在寻找一些其他的解决scheme。 我们计划将我们的产品作为托pipe解决scheme进行分发,并且为了获得最大的可扩展性,我们希望进行无限次的安装 我看了IBM的Guardium以及SoftTree的数据库审计。 我很好奇,如果有人有任何解决scheme,他们可能已经使用过或可能有任何build议或方法来实现完成,当然成本效益,审计的数据变化。

我使用Idera SQL合规性pipe理器。 运行良好,使用服务器端跟踪并将跟踪文件发送到中央数据库服务器,并具有防篡改哈希。 这也是非常可configuration的,所以你可以select要审核的内容,并与SSRS有很好的报告。

我们使用Guardium。 这实际上是一个数据包嗅探器,加上一个软件直接安装在数据库服务器上,如果任何人在RDP到数据库服务器时运行任何事情。

另一个可能感兴趣的产品是OmniAudit: http ://www.krell-software.com/omniaudit/

它使用触发器,但缺less修改原来的应用程序,包括logging所有的变化,没有太多的select,保持开放给你。

在SSMS中还有一个审计function – 它是SQL Server审计。 它提供服务器级别和数据库级别的审计,预定义的组和活动以及审计DDL和DML更改。 它也可以审计审计的变化。 为INSERT,UPDATE,DELETE,SELECT,REFERENCES和EXECUTE语句设置审计是非常精细的,可以为每个语句单独指定特定用户和对象

“所有版本的SQL Server都支持服务器级别的审计,数据库级别的审计仅限于Enterprise,Developer和Evaluation版本” 1

SQL Server审计(数据库引擎)

但是,有一个缺点 – 捕获UPDATE语句是不完整的。 捕获的信息并不表示logging和列已更改,也未显示旧值和新值。 SQL Server更改数据捕获提供了有关UPDATE的更准确的信息,因为它清楚地表明了更改的内容和方式