2012-09-18 65 views
1

我是SQL Server 2008标准版的新手。我需要在给定的表上记录选择访问。我需要记录请求的数据和执行select语句的用户。或者记录用户和选择语句。安全表访问日志记录

我试过在网上看,但它似乎很难找到任何涉及选择语句。

请指点我正确的方向。

回答

0

这里您将讨论监视或审计SELECT语句。用这些术语搜索会给你很多开始。

关于这个问题的一般资料:An introduction to SQL Server2008 audit,由布拉德·麦吉中号上MSSQLTips.com

更多信息,使用TSQL一些样品:SQL Server 2008 TSQL Auditing Commands for SELECT statementsOn MSDN还有更多信息,请搜索auditing以查看每个版本都可以执行的操作。而就this other page on MSDN你有一个非常详细的信息

编辑:

对于SQL Server 2008 & 2008R2标准版本没有审核功能,SQL Server上的2012标准版是的,我们已经检查this SO answer了解更多详情。因此对于SQL2008,您必须依靠DDL's triggers来审核CRUD操作。对于SELECT语句,您必须手动执行。检查this post on SQLServeCentral.com

编辑2 什么是SQL Server 2012 Express版审计?通过谷歌快速搜索,herehere

+0

Audit on Select语句只能在SQL Server 2008 Enterprise Edition中使用。是否有另一种方法og loggin在SQL Server标准版的给定表上选择? –

+0

请检查我的答案,编辑添加更多信息 – Yaroslav

+0

它只在选择我需要登录,而不是在CRUD。我知道没有选择的触发器,并且SP的使用是没有选择的。现在我正在尝试使用EVENT SESSION,但是我记录了所有选择的查询,而不是在特定的表格上。 –

0

拒绝用户select权限的表。

创建存储过程,通过它们可以运行需要运行的查询。将任何必要的审计添加到存储过程的主体中。

+0

Can'do,用户可以访问所有数据库表,构建他们想要的查询。 –