sql-server – GRANT用户查看单个数据库? (拒绝查看其余部分)

我希望用户登录sql服务器,只能看到一个数据库.此用户不能是数据库所有者.
我已经尝试过DENY VIEW ANY DATABASE到[用户名]
我现在想GRANT查看[username]的单个数据库
这可能吗?我该怎么做呢?
谢谢.

编辑:澄清我的意思,我不希望用户甚至看到其他数据库存在,而不仅仅是他们不能进入数据库.

谢谢!

解决方法

我假设您在这里谈论sql Server Management Studio.简而言之,如果您无法向用户授予DBO(这是完全可以理解的),那么目前无法实现您想要的任何方式.

通过发行,你已经得到了尽可能接近

DENY VIEW ANY DATABASE TO <customerlogin>

有效地隐藏用户的所有数据库.在不使用户成为DBO的情况下,无法将视图功能打开至仅一个.这不是Mike Hotek众所周知的sql Expert所添加功能.

您可以在此MSDN线程上看到有关此愿望的更长更详细的讨论.

http://social.msdn.microsoft.com/Forums/en/sqlsecurity/thread/a989ca87-660d-41c4-9dac-70b29a83ddfb

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 &#39;EastRiver&#39; 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...