简单的Audit测试

今天简单的对SQLServer的Audit功能测试了下,需要注意的是Audit功能仅在企业版或者开发版中有效.
实验中的Audit功能是监控dbo用户对表wh42.audittest上select和update操作.
以下是具体的操作步骤:
USE MASTER
GO
CREATE LOGIN WH42 WITH PASSWORD='WISON',CHECK_POLICY=OFF
CREATE DATABASE WISON

USE WISON
GO
CREATE USER WH42 FROM LOGIN WH42;
CREATE SCHEMA WH42 AUTHORIZATION WH42;
CREATE TABLE WH42.AUDITTEST(ID INT);

INSERT INTO WH42.AUDITTEST SELECT 1
UNION ALL
SELECT 2
UNION ALL
SELECT 3

USE MASTER
GO
CREATE SERVER AUDIT WISONAUDIT
TO FILE(FILEPATH='C:\');
ALTER SERVER AUDIT WISONAUDIT WITH (STATE=ON)
----之后可以在instance下的Security中Audit里看到WISONAUDIT

USE WISON
GO

CREATE DATABASE AUDIT SPECIFICATION WISONAUDIT_TABLE
FOR SERVER AUDIT WISONAUDIT 
ADD(SELECT,UPDATE ON WH42.AUDITTEST BY DBO)
WITH (STATE=ON)
GO
------之后可以在WISON数据库下的Security中的Database Audit Specification下看到WisonAudit_Table

之后使用sa账号执行以下的语句

SELECT * FROM WH42.AUDITTEST

UPDATE WH42.AUDITTEST
SET ID=4
WHERE ID=3

DELETE FROM WH42.AUDITTEST WHERE ID=4
INSERT INTO WH42.AUDITTEST  SELECT 5

CREATE TABLE A(ID INT)
INSERT INTO A SELECT ID FROM WH42.AUDITTEST
之后就可以在instance下的Security中Audit里看到WISONAUDIT上右键选择"View Audit Logs",则可以看到dbo用户对wh42.audittest的select和update操作.需要注意的是:带有where条件的delete操作也会被监控到,因为delete ....where....也会用到select操作的.
另外,其他用户对该表的select或者update操作不会被监控到.


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16754036/viewspace-722628/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/16754036/viewspace-722628/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值