唐山网站建设

设为主页 加入收藏 繁體中文

在SQL Server 2008中安装安全审计

核心提示:SQL Server 2008引进了1种新的审计性能,它能使DBA追踪数据库的使用并进行具体审计。我们能在服务器和数据库上安装审计,在单独的数据库对象上激活并用各种不同的格式保存,如2进制文件或Windows Application日志。本文主要讲述的是在SQL Server 2008中如何安装安全审

在SQL Server 2008里安装审计,步骤以下:

1. 给每个SQL Server 2008具体实例创建1个SQL Server审计

2. 创建服务器审计规范、数据库审计规范或其中的1个

3. 激活SQL Server审计

4. 查看审计数据

在这1技能中,我将复习其中的每1步并举例说名它们怎样进行的。留意大多数情况下这些例子是基于T-SQL语句的。但是,这些步骤也能够用 SQL Server Management Studio界面来履行。假设想了解更多有关SQL Server Management Studio用法的信息,请查看 Microsoft SQL Server联机丛书。

创建SQL Server审计

第1步你应当在SQL Server 2008的1个实例上创建审计,这样便可以创建1个SQL Server审计。审计就是为与数据库引擎相干的具体事件集合配置的安全对象。你可以在SQL Server 2008里的1个实例上创建多个审计。

在创建审计时,你必须给它指定1个名称和事件输出的目标位置。目标文件可以是2进制的文件、Windows Security日志或Windows Application日志。你还可以给审计对象指定1个或更多个可选参数。

你可以用CREATE SERVER AUDIT语句,以下所示:

USE master 
 
GO

CREATE SERVER AUDIT SrvAudit

TO FILE (FILEPATH='C:\Data', MAXSIZE=5 MB)

WITH (QUEUE_DELAY = 3000)
 
留意,你必须在主数据库中创建1个审计。由于审计是和SQL Server实例相联系的,因此你不能在用户数据库中创建。

第1行的CREATE SERVER AUDIT语句仅规定审计名称(如SrvAudit)。第2行的TO 子句肯定事件输出时的目标位置。例如,我想将输出结果保存在文件中,所以我必须指定TO FILE并规定FILEPATH 值。留意这只是1个路径名。SQL Server将自动命名输出文件,以下所示:

 <audit_name>_<audit_GUID>_<partition_number>.sqlaudit


在上面的例子中,TO FILE语句还包括了MAXSIZE参数,MAXSIZE参数将文件大小限制为5 MB。该参数是TO FILE子句可选参数之1。假设你将审计数据迁到Application日志或 Security 日志,你就只需要指定日志名选项,示例以下:

 CREATE SERVER AUDIT SrvAudit2 TO APPLICATION_LOG WITH (QUEUE_DELAY = 3000)


就像你看到的1样,TO FILE子句已被TO APPLICATION_LOG子句所替换并且还没有另外规定其他的参数。

最后1行在CREATE SERVER AUDIT 语句中的就是1个 WITH子句。该子句支持很多个选项,限制了创建审计的方法。在这类情况下,我使用的是QUEUE_DELAY参数并将它的值设为3000。这个参数指定了在创建审计之前要耗费的毫秒数并且。默许数字为 1000 毫秒(即1秒)。

要了解所有CREATE SERVER AUDIT 语句可选择项和本篇文章中的其他语句,请查看Microsoft SQL Server联机丛书。

1 2 3 下1页

核心提示:SQL Server 2008引进了1种新的审计性能,它能使DBA追踪数据库的使用并进行具体审计。我们能在服务器和数据库上安装审计,在单独的数据库对象上激活并用各种不同的格式保存,如2进制文件或Windows Application日志。本文主要讲述的是在SQL Server 2008中如何安装安全审

创建服务器审计规范

你创建SQL Server审计以后,必须创建1个服务器审计规范或是1个数据库审计规范或是其中的每个。1个服务器审计规范就是和具体的SQL Server审计相干的1个或多个服务审计。活动组就数据库引擎暴露出来的1组相干的事件,例如,我们在进行安全审计操纵时,SERVER_OPERATION_GROUP行动组就出现了,如当用户在改变服务器设置时。你可以在每个审计上只创建1个服务器审计。但是,你可以对审计规范增加多个活动组。创建1个服务器审计规范,你需要在主数据库上运行CREATE SERVER AUDIT SPECIFICATION,以下所示:

USE master  GO CREATE SERVER AUDIT SPECIFICATION SrvAuditSpec FOR SERVER AUDIT SrvAudit ADD (SUCCESSFUL_LOGIN_GROUP), ADD (FAILED_LOGIN_GROUP) WITH (STATE=ON)

第1行CREATE SERVER AUDIT SPECIFICATION语句规定了审计规范名(SrvAuditSpec)。第2行FOR SERVER AUDIT子句指定了与审计规范相干的审计名(SrvAudit)。第3行和第4行动 增加了规范活动组的ADD 子句。在这类情况下,我增加了SUCCESSFUL_LOGIN_GROUP和FAILED_LOGIN_GROUP活动组,跟踪试图登录到SQL Server实例的安全主管。

最后1行 CREATE SERVER AUDIT SPECIFICATION语句为WITH 子句。WITH 子句包括激活规范的在STATE参数。默许值不能激活审计规范(STATE=OFF)。假设你在创建时不能激活审计规范,你就必须过段时间再激活,在你能够审计活动组之前进行激活。

创建数据库审计规范

和服务器的审计规范不1样,数据库审计规范是具体针对数据库的。但是它和服务器审计规范相同的是,你可以增加审计活动组,但是它们仅仅针对数据库。另外,你可以给规范增加单独的审计活动。审计活动就是数据库具体的活动,如删除数据或运行存储程序。

创建数据库审计规范,在目标数据库中运行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)

第1行CREATE DATABASE AUDIT SPECIFICATION语句指定了规范(DbAuditSpec),第2行动FOR SERVER AUDIT 子句,用它可以判定和规范相干的审计。接下来,我增加了1个审计活动组,在这里就是 DATABASE_OBJECT_CHANGE_GROUP。在对AdventureWorks2008 数据库履行CREATE、ALTER 或DROP语句时就会出现这个活动组。

第2个ADD 子句制定了单独审计活动,而不是1个活动组。这样,审计活动就是SELECT、INSERT、UPDATE和 DELETE。但是你要留意,下面1行包括1个ON子句指定的HumanResources schema和dbo安全主管。结果,只要dbo在HumanResources schema中查询1个对象或在 AdventureWorks2008数据库中插进、更新或删除,SQL Server就会将事件记进日志。

最后,CREATE DATABASE AUDIT SPECIFICATION语句中的最后1个子句就是WITH子句。跟上次1样,你可以在操纵完以后就激活审计规范或过1段时间以后再进行激活。

上1页 1 2 3 下1页

核心提示:SQL Server 2008引进了1种新的审计性能,它能使DBA追踪数据库的使用并进行具体审计。我们能在服务器和数据库上安装审计,在单独的数据库对象上激活并用各种不同的格式保存,如2进制文件或Windows Application日志。本文主要讲述的是在SQL Server 2008中如何安装安全审


和我们刚刚回顾的审计规范1样,CREATE SERVER AUDIT 语句中的WITH子句其实不支持STATE参数。也就是说你必须在单独的1步中激活审计,以下面的语句中所示:

USE master  GO ALTER SERVER AUDIT SrvAudit WITH (STATE=ON)


你可以看到,我使用的是ALTER SERVER AUDIT 语句更改我之前创建的SQL Server审计(SrvAudit)。ALTER SERVER AUDIT语句中的WITH子句支持被我设置成ON的STATE参数,SQL Server会审计这些具体事件。

查看审计数据

你可以在 SQL Server Management Studio中用Log File Viewer查看审计数据。另外假设你创建SQL Server审计将事件保存到Application日志或Security日志,这样你便可以够用Event Viewer查看这些数据。我以为回顾事件信息最简单的方法就是将审计数据保存到1个2进制文件中,然后用Log File Viewer回顾这些数据。

要访问Log File Viewer,就要打开SQL Server Management Studio,扩大Security节点。接下来选择你要复习的审计,然后点击View Audit Log发送Log File Viewer。图1表示以上的例题中SQL Server Audit (SrvAudit)事件实例。

 图1:在Log File Viewer中查看审计数据

以上就是安装审计和回顾审计数据的步骤。SQL Server 2008让这些步骤比之前版本履行更加简单。你只需要简单创建SQL Server审计,并附上1到两个审计规范,然后激活。其余的工作都由SQL Server完成。要了解更多有关审计方面的信息,请查看微软SQL Server联机丛书。

上1页 1 2 3 唐山网站建设www.fw8.net
TAG:数据库,服务器,参数,语句,子句
评论加载中...
内容:
评论者: 验证码: