SQLSERVER 设置用户只对特定表具有访问权限
-
登录SSMS之后选择安全性,右键点击登录名。在弹出的右键菜单中选择【新建登录名】选项。
-
2
在新建登录名界面中的,常规页面输入新的登录名(本例为user_test)并设定密码。可以取消勾选用户下次登录时必须更改密码选项。最后设定默认数据库为CC。
-
3
接下来在用户映射页面中,勾选映射CC数据。因为我们这次要分配的是查询权限的用户,所以下方的数据库角色成员身份只勾一个public即可。点击确定按钮完成新用户创建。
-
4
在CC数据库下点击新建查询,在IDE中输入 grant select on sfc_zc to user_test语句 并执行。该语句的作用是分配sfc_zc表的查询权限给user_test用户。
-
5
权限分配完成后可以测试一下效果如何。断开数据库连接,用我们刚才新建的user_test用户重新登录数据库。
-
6
这时我们可以看到CC数据库下面只能看到SFC_ZC这张数据表了,另外两张表都不见了,到此大功告成。
关键点:
有Management Studio中的表上右键选属性(Properties),左边选权限(Permissions),右边中间添加和选中某个User或Role,下面选中或移除某个权限。同样你可用标准的赋权语句来实现:如
grant/revoke select on 表名 to 用户名;