【发布时间】:2010-10-12 11:57:55
【问题描述】:
我在一个新数据库(Microsoft SQL server 2005)上创建了几个新表。现在,这些表已准备好供客户端用户使用 System DSN ODBC 对象(使用 SQL 身份验证)通过 Access 2003 查看。我所做的是在数据库中创建一个角色和一个架构,并为我的 SQL 服务器创建一个登录用户,默认使用我的数据库和架构名称。
问题是客户端不仅可以看到我创建的表,还可以看到数据库中的系统视图对象。我不确定应该如何设置 SQL 登录用户、架构和角色,以便只有我的表可见?不知道为什么系统视图对象默认对登录用户可见。
清理我现在拥有的权限的另一种替代方法。我确实检查了一些系统视图对象(很长的列表)。他们都拥有我使用公共架构创建的架构的权限。有没有办法通过使用 T-SQL 脚本来查看然后删除与我的架构关联的那些系统视图对象的权限?之后,我需要使用类似的脚本将我的架构的权限添加到我创建的表中。
【问题讨论】:
标签: sql-server-2005 tsql