Zac*_*ith 0 security sql-server view
我有一个数据库: DB 1
在另一个数据库中DB 2,我想创建一堆引用DB 1. 这些视图会相对复杂,有很多连接、聚合、子查询等。
我不希望 的用户DB 2能够修改DB 1. 即我不希望用户能够在视图上执行插入、更新、删除查询。
这篇博文:http : //sqlhint.com/sqlserver/views/creating-readonly-views
建议我可以使用INSTEAD子句。除了特定用户之外,我更愿意仅禁止视图本身的某些查询子句。这可能吗?
这是通过视图和表的安全性来处理的。仅SELECT授予对视图和基础表的权限。
如果没有写访问权限,通过视图的 INSERT、UPDATE 和 DELETE 将失败。
如果用户可以通过一个组访问,并且您希望该组仍然可以访问但这些特定用户没有访问DENY权限,则可以使用该权限,因为该权限DENY优先于GRANT。