不同于服务器审核规范,数据库审计规范是具体到一个数据库。然而,像一个服务器审核规范,您可以添加审计活动组 – 但它们是特定于数据库。此外,您可以为数据库审计规范添加单独审计活动。审计活动是发生在数据库里的一项具体活动,比如删除数据或运行一个存储过程。
要创建一个数据库审计规范,需要从目标数据库运行CREATE DATABASE AUDIT SPECIFICATION语句,如下所示: USE AdventureWorks2008 GO CREATE DATABASE AUDIT SPECIFICATION DbAudi……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
不同于服务器审核规范,数据库审计规范是具体到一个数据库。然而,像一个服务器审核规范,您可以添加审计活动组 - 但它们是特定于数据库。此外,您可以为数据库审计规范添加单独审计活动。审计活动是发生在数据库里的一项具体活动,比如删除数据或运行一个存储过程。
要创建一个数据库审计规范,需要从目标数据库运行CREATE DATABASE AUDIT SPECIFICATION语句,如下所示:
USE AdventureWorks2008 GO CREATE DATABASE AUDIT SPECIFICATION DbAuditSpec FOR SERVER AUDIT SrvAudit ADD (DATABASE_OBJECT_CHANGE_GROUP), ADD (SELECT, INSERT, UPDATE, DELETE ON Schema::HumanResources BY dbo) WITH (STATE=ON) |
CREATE DATABASE AUDIT SPECIFICATION语句的第一行,指定了一个规范名称(DbAuditSpec);并在第二行,FOR SERVER AUDIT子句,指定与该规范相关联的审计名称。接下来是添加一个审计活动组,本例中是DATABASE_OBJECT_CHANGE_GROUP。每当在AdventureWorks2008数据库上执行CREATE, ALTER or DROP语句就会触发这个活动组的事件。
第二个ADD子句指定独立的审计活动,而不是一个活动组。本例中,审计活动是SELECT,INSERT ,UPDATE和DELETE操作。请注意,下一行中的ON子句指定HumanResources架构和dbo安全实体。所以,每当dbo查询HumanResources架构中的一个数据库对象或插入、更新、删除AdventureWorks2008数据库中的数据时,SQL Server将记录一个事件。
最后,CREATE DATABASE AUDIT SPECIFICATION语句的最后一个子句是WITH子句。你可以在这里立即启用规范,或者在以后启用规范。
3.启用SQL Server审计
与此前复习的创建审计规范语句不同的是,CREATE SERVER AUDIT语句的WITH子句不支持STATE参数。这意味着你必须使用单独的步骤启用审计,如下所示:
USE master GO ALTER SERVER AUDIT SrvAudit WITH (STATE=ON) |
正如你可以看到,我使用ALTER SERVER AUDIT语句修改我在前面创建的SQL Server审计(SrvAudit)。ALTER SERVER AUDIT语句的WITH子句支持STATE参数,我已经设置为ON。在我执行这个语句后,SQL Server将开始审计指定的事件。
4.查看审计数据
你可以使用SQL Server Management Studio中的日志文件查看器(Log File Viewer)来查看审计数据。此外,如果你设置SQL Server审计输出到应用程序日志或安全日志,你可以使用事件查看器来查看这些数据。我发现查看事件信息的最简单方法是将审计数据保存为二进制文件,然后使用日志文件查看器来查看这些数据。
要访问日志文件查看器,在SQL Server Management Studio中打开对象资源管理器(Object Explorer),展开安全节点,然后展开审计节点。接下来,右键单击想要查看的审计,然后单击查看审计日志(View Audit Log),以启动日志文件查看器。下图显示了上面例子创建的SQL Server审计(SrvAudit)的事件样本。
这就是如何实现审计和查看被审计的数据。SQL Server 2008比早期版本更容易实现这个过程。你只需创建SQL Server审计,关联到一个或两个审计规范,再启用它们。SQL Server会做剩下的事情。
翻译
相关推荐
-
管理Azure SQL数据库的授权安全性
本文深入介绍了一些支持细粒度控制数据访问的Azure SQL数据库授权方法,它们最多可以深入到控制各个数据库对象和语句类型。
-
深入了解SQL Server审计工具
微软公司在发布SQL Server 2008的时候引入了SQL Server审计,这是一款功能全面的数据库审计工具,弥补了SQL Server早期版本中的许多审计功能限制。
-
DBA必修课:特权用户管理
特权用户管理是数据库审计和保护的九个关键功能之一。在三月份的一份报告中,Gartner称像DBA这样高度特权用户的访问是审计人员的主要关注点。
-
数据库安全审计手册
数据库系统功能强大而丰富,对于一个数据库环境而言,我们可以生成很多类型的审计记录。知道有哪些审计类型以及如何实施这些审计有助于你满足合规需求。