2013-01-31 74 views
0

对于存储过程,是否可以使用SQL Server Auditing审核更改的值?注意:我是不是谈论CDC是否可以使用SQL Server审核审核更改的值?

我有基本的审计工作,写入安全日志。如果我运行一个INSERT语句,我得到一个33205事件包含此[我已经删除了很多消息为了清楚]:

Audit event: event_time:2013-01-31 14:06:53.4855165 
: 
statement:INSERT INTO [DB1].[dbo].[Table1] 
      ([ANumber] 
      ,[AName] 
      ,[ADescription]) 
    VALUES 
      (21, 'Cheese', 'Cheese making.') 
additional_information: 
. 

而且这是伟大的!但是,如果我把它变成与参数的存储过程,我得到[还编辑]:

Audit event: event_time:2013-01-31 14:07:29.3099731 
: 
statement:INSERT INTO [DB1].[dbo].[Table1] 
       ([ANumber] 
       ,[AName] 
       ,[ADescription]) 
     VALUES 
       (@aNumber, @aName, @aDescription) 
additional_information: 
. 

它可用作巧克力茶壶一样有用。知道谁做了什么以及什么时候如果你不知道他们做了什么?我觉得应该有'包含参数值'标志或者其他东西,但我找不到。我在想什么,在这里?

回答

1

有趣的是,张贴问题可以触发导致答案的思维过程,不是吗?

SQL Server审计将存储过程的EXEC视为SP正在执行的INSERT(或其他)的单独审计。这些参数作为EXEC语句的一部分进行审核。您需要确保您正在审核正确的对象。