我在VIEW DEFINITION
为一个用户的架构级别适当设置权限时遇到问题。我已经创建了架构TestSchema
并添加了一些表。用户目前有权限设置为访问和修改表(SELECT
,UPDATE
,DELETE
通过等)dbo_datareader
和dbo_datawriter
角色。但是,他们看不到SSMS对象资源管理器中的任何表。
我尝试授予查看定义的权限:
grant view definition on SCHEMA :: [TestSchema] to [User]
那没用。我尝试设置表级权限:
grant view definition on [TestSchema].[NewTable] to [User]
那也没有用。然后,我尝试了一项总括性赠款:
grant view definition to [User]
那确实奏效了;他们现在可以看到TestSchema
以及他们不应该访问的其他模式。
我的目标是允许用户查看给定架构中的所有表。我该怎么做?如果默认情况下我应该能够执行此操作,那么我应该查看哪些权限以查找为什么不能这样做?