我有一个 SQL 2014 Server,它有几个用于报告目的的事务复制数据库。该服务器上还有一个 Windows 组,其中包含几个本地本地人。该组具有 sysadm 权限(主要是为了让本地人可以安排和编辑彼此的代理作业)。
我需要监视该组成员在复制数据库上的活动。
我试过设置数据库级审计并从 dbo 组指定。这在一定程度上起作用有一个不幸的副作用,即当用户运行这些数据库的 dbo 的复制时,也会拾取所有复制的事务。
有什么方法可以将特定用户排除在审核之外吗?我试过将这个组作为用户映射到其中一个数据库,但审计没有找到任何东西
我找到了答案:
Create an Audit as disabled 创建数据库审计规范并将其链接到您的审计。添加 INSERT、UPDATE 和 DELETE 并选择数据库或所需的对象或模式。在主体字段中选择 DBO
使用以下语句更改审计
启用审核和规范
现在,这将从 dbo 使用(sysadm 始终映射到数据库作为 dbo)捕获所有 INSERTS/UPDATES/DELETES,不包括指定的服务帐户。