sql - 如何授予 Select 访问权限以在架构中查看

标签 sql sql-server azure

只需要授予对XYZ架构 View 的访问权限, View 内部从dbo架构调用表。需要限制对 dbo 表的访问。 因为当我尝试选择 XYZ.VIEW 时,我仅授予对 XYZ 模式的访问权限。它给出了错误:

Msg 229, Level 14, State 5, Line 2
The SELECT permission was denied on the object 'Table1', database 'servername', schema 'dbo'.

查询以授予用户访问权限

GRANT SELECT ON XYZ.VIEW TO user1

XYZ.VIEW 定义如下

SELECT NAME, Adress
FROM  dbo.Table1

最佳答案

如果您不希望用户访问表及其所有内容,而只访问您 View 中的内容,则创建物化 View 。这会将用户与您提供给他们的内容隔离开来,并且无需授予他们访问表的权限。

关于sql - 如何授予 Select 访问权限以在架构中查看,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48102948/

相关文章:

sql - 如何在 Amazon Redshift 中将整数转换为位字符串?

Azure Blob 的 Azure 操作备份与软删除不同吗?

azure - 在 Azure Maps 中创建事件订阅时,创建系统主题失败

sql-server - 在 SQL Server 中,使用 .modify() XQuery 删除节点需要 38 分钟才能执行

ios - 在 Objective C 中注销用户 MSAL azure 库

c# - 生成简短的随机唯一促销代码

sql - Postgres : How to prevent INSERT in a special case

sql - SCOPE_IDENTITY 而不是插入触发器的解决方法

sql - 如何从 SQL 服务器过程中获取所有错误消息

sql-server - 在 Microsoft SQL Server 2008 上以十六进制 (0x000000000000000866) 显示的时间戳字段中的值