我可以在 db 中的某些列上设置权限并以对用户透明的方式授予另一个权限吗,假设我有以下权限:
GRANT SELECT ON [dbo].[DIM_Table1](Field1 , Field2 , Field4 ) TO [NDMRole] ;
-- column Field3 is missing, it's prohibited to select for this user.
如果用户尝试这样做:
SELECT * from Dim_Table1
她会得到一个错误,说Field3
不允许被选中。有没有办法让这个字段对用户不可见,或者以某种方式使它不会让用户出错。
我不想为此创建其他视图。我不想创建视图的原因是系统中有很多用户具有不同的权限,维护这种复杂的机制将花费太多精力,具有权限的解决方案会容易得多。