我有一个用户正在尝试访问他也拥有权限的 DatabaseA,但他不断收到以下错误(他可以访问 DatabaseA,但没有访问 DatabaseB 的权限):
The server principal "Domain\Username" is not able to access the database "DatabaseB" under the current security context.
因为他无权访问 DatabaseB,所以这首先是有道理的。不幸的是,他没有以任何方式调用 DatabaseB。
我已经通过使用 Profiler 的服务器看到了这一点,一直到不使用过滤器的语句级别。我可以看到他的连接和错误出现,但没有迹象表明 DatabaseB 受到任何影响。
我已经查看了他试图运行的存储过程。它包含一个简单的 select 语句,它只访问 DatabaseA 中的表。
我可以通过让他访问 DatabaseB 来解决这个问题,但这不是一个可行的长期解决方案。
我已确认该用户不是孤儿
我搜索了谷歌,有很多关于这个错误的帖子,但没有一个描述这个场景。
如果有人看到或对此有所了解,我将不胜感激!