我希望用户有权只能看到一个视图。
我创建的用户无法看到任何其他表或视图,但可以选择任何内容
问题
为什么我可以锁定用户进行任何选择插入/更新?
答案 0 :(得分:2)
LOGIN和USER应该只有一个角色:public。
接下来,为该用户授予选择权限:
GRANT SELECT ON **schema.VIEW_NAME** TO [**USER_NAME**]
完整脚本:
CREATE LOGIN [TEST] WITH PASSWORD=N'PASS', DEFAULT_DATABASE=[DATABASE_NAME]
GO
USE [test]
GO
CREATE USER [TEST] FOR LOGIN [TEST]
GO
GRANT SELECT ON schema.VIEW_NAME TO [TEST]
GO
使用登录TEST登录数据库并检查是否可以选择。