我们有一个表,多个用户访问该表。但是,我们希望隐藏用户组中该表中的记录,比如GroupA。这样他们就不会在数据库中看到任何记录,除了他们创建的记录。
GroupA用户还应该可以选择添加新记录并编辑自己的记录。
但是,所有其他用户(groupA除外)应该能够看到表中的所有记录。
我们有SQL Server 2012。
感谢。
答案 0 :(得分:2)
您可以在表上创建一个视图,以便GroupA使用适当的条件限制记录,并在视图上向组件A授予SELECT。
答案 1 :(得分:0)
这称为行级安全性。
一种常见的方法是仅允许通过视图访问表。 (您也可以写入视图)。
视图必须包含一个WHERE语句,用于选择允许用户查看的行。
顺便说一句,请确保在引用当前用户时使用ORIGINAL_LOGIN
。