什么是审计表?
它们有用吗?
我遇到他们读this article.
解决方法
审计表用于跟踪特定表或表的事务.它们允许您查看正在进行的“日志”(缺少更好的单词).例如,假设你有一个这样的表:
create table SensitiveInformation ( SensitiveNumber int not null,SensitiveData varchar(100) not null ) go
可能有用户和/或应用程序有权从该表中插入,更新和删除.但由于该数据的敏感性,您可能希望有一种快速简便的方法来跟踪谁在该表上做什么.
因此,您有一个审计表来跟踪该表上正在执行的操作.通常,这将包括基本的Who,What,When.
审计表可能如下所示:
create table SensitiveInformationAudit ( SensitiveNumberNew int null,SensitiveNumberOld int null,SensitiveDatanew varchar(100) null,SensitiveDataOld varchar(100) null,Action varchar(50) not null,AuditDate datetime not null,LastUpdatedUser varchar(100) not null ) go
审计表通常通过使用数据库触发器来填充.换句话说,当在SensitiveInformation上发生X动作时,在SensitiveInformationAudit中插入它的细节.