SQL Server删除查询请求

时间:2019-06-08 09:04:27

标签: sql sql-server

是否可以在对数据库实施之前查看和分析SQL Server中的查询,并在必要时将其记录或删除?

例如某个应用程序将更新查询发送到SQL Server,我可以先将其记录到数据库中,然后再根据我的角色将其查询为非法吗?

2 个答案:

答案 0 :(得分:0)

您可以使用SQL事件探查器监视发送到服务器的查询,但是您不能执行自己的操作。

如果您说smoe角色执行某些查询是非法的,则应在权限中指定-每个角色都分配了权限。

一种实现您想要的方式的方法是定义用户,其中提到的应用将使用(我什至会创建专用用户)。然后,如果您希望该用户执行SELECT,只需执行该命令

GRANT SELECT ON [table] TO [user]

然后user将无法更新table,只能从中选择行。

答案 1 :(得分:0)

我找到了使用SQL SERVER触发器的解决方案,因此在插入或更新后,我会检查我的角色,以便查看是否存在任何访问问题,我可以回滚事务并将错误发送给用户。