是否可以显示某种types的访问日志,其中有权访问特定数据库(或多个访问者)的有效用户试图访问他们无权访问的数据库? 例如,如果我通过SMS将SQL Server帐户login到数据库服务器,然后尝试展开我的帐户无权访问的数据库,则会出现“数据库[DBName]不可访问”错误。 有没有任何types的日志显示用户试图这样做? 在同样的说明中,是否可以将SMS中显示的数据库列表限制为只有用户可以访问的数据库,甚至不能显示其他数据库?
我找不到任何types的访问日志选项来显示尝试访问用户无权访问的数据库,但是我可以通过在主服务器上执行以下操作来限制其访问权限:
DENY VIEW ANY DATABASE TO LOGIN [UserName]
这可以防止用户看到SMS中的任何数据库。 接下来要改变的是任何数据库的所有权,我希望用户能够通过去属性和设置所有者来看到。 在这一点上,login用户只能看到他们自己拥有的数据库,而没有其他任何隐式安全的forms,并满足我的需要。