当前位置:操作系统 > Unix/Linux >>

隐藏其它数据库,只让用户能够看到自己拥有权限的数据库


隐藏其它数据库,只让用户能够看到自己拥有权限的数据库
 
隐藏用户没有权限的数据库,让他只能看到自己拥有权限的数据库
  www.zzzyk.com  
这个很多人都问的问题,可能很多都有没有得到答案
 
首先你阅读以下ms关于VIEW ANY DATABASE 权限的说明
 
VIEW ANY DATABASE 权限
http://msdn.microsoft.com/zh-cn/library/ms189077(v=sql.105)
 
最下面有一句
 
 若要限制数据库元数据的可见性,请拒绝登录帐户的 VIEW ANY DATABASE 权限。
 
拒绝此权限之后,登录帐户只能查看 master、tempdb 以及所拥有的数据库的元数据
 
然后有不少人尝试了
  www.zzzyk.com  
DENY VIEW ANY DATABASE TO [login]
 
但是发现用户除了master、tempdb 看不到其它的数据库
 
这是以为对以及所拥有的数据库的元数据这里的理解问题,这里指的是数据库拥有者
 
不是你分配给用户的权限、不是 db_owner
 
你可以使用下面的语句修改数据库的拥有者给这个用户
 
ALTER AUTHORIZATION ON DATABASE::databaseName TO login_name
 
然后刷新一下就可以了看到这个用户拥有权限的数据库了
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,