sql – 在Management Studio中查看表列表所需的权限
发布时间:2020-12-12 16:19:57 所属栏目:MsSql教程 来源:网络整理
导读:我搜索了SO已经存在的相关问题,但找不到一个. 我正在为服务器场中的几个数据库设置只读数据库角色.以下是一个表的权限示例: GRANT SELECT ON [dbo].[Table] TO [ReadOnly]GRANT VIEW DEFINITION ON [dbo].[Table] TO [ReadOnly]DENY ALTER ON [dbo].[Table]
我搜索了SO已经存在的相关问题,但找不到一个.
我正在为服务器场中的几个数据库设置只读数据库角色.以下是一个表的权限示例: GRANT SELECT ON [dbo].[Table] TO [ReadOnly] GRANT VIEW DEFINITION ON [dbo].[Table] TO [ReadOnly] DENY ALTER ON [dbo].[Table] TO [ReadOnly] DENY CONTROL ON [dbo].[Table] TO [ReadOnly] DENY DELETE ON [dbo].[Table] TO [ReadOnly] DENY INSERT ON [dbo].[Table] TO [ReadOnly] DENY REFERENCES ON [dbo].[Table] TO [ReadOnly] DENY TAKE OWNERSHIP ON [dbo].[Table] TO [ReadOnly] DENY UPDATE ON [dbo].[Table] TO [ReadOnly] 这适用于SELECT权限…我只能选择数据,这是我想要的. 但是,我无法在Management Studio中的指定数据库的“表”选项卡中看到表的列表.我与这个用户的目标是为一些不熟悉SQL的用户提供一个可以用来提取数据并开始尝试SQL的登录.这些用户对SAS(一种统计处理语言)很有经验,因此他们有一些使用代码的经验,但在SQL中没那么具体. 哪些权限将显示Management Studio中的表列表? 解决方法您只需要授予任何权限和视图定义,但是您也明确拒绝来自同一用户的可继承权限( DENY始终覆盖 GRANT).如果你只是没有授予权限,他们将不会拥有它(或者,你可以改为而不是DENY,它没有显式覆盖GRANT).如果您在上面的脚本中将DENY更改为 REVOKE,则您的用户将能够列出/查看SSMS中的对象.(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |