Sql Server:创建用户并指定该用户只能看指定的视图,除此之外的都不让查看
1,在sql server中选择好要操作的数据库
2,--当前数据库创建角色
exec sp_addrole 'seeview' --创建了一个数据库角色,名称为:[seeview]
3,--分配视图权限 GRANT SELECT ON veiw TO [角色]
--指定视图列表 指定seeview这个角色可以查看的视图表名称;也就是这个角色可以查看下面赋予这些视图信息,除此之外的所有的东西都看不到
GRANT SELECT ON v_viewname1 TOseeview
GRANT SELECT ON v_viewname2 TO seeview
4,--添加只允许访问指定视图的用户: exec sp_addlogin '登录名','密码','默认数据库名'
exec sp_addlogin 'per','p123','oa'
此处可能执行不了,要求密码强度,那就自己手工创建
5,--添加只允许访问指定视图的用户到rCRM角色中: exec sp_adduser '登录名','用户名','角色'
exec sp_adduser 'per','p123','seeview'
总体代码如下:
exec sp_addrole 'seeview'
GRANT SELECT ON View_ToBQBL to seeview
exec sp_addlogin 'BQUser_1','Bq120_120','Anchor120V7Managecq'
exec sp_adduser 'BQUser_1','Bq120_120','seeview'
注:一次完成以上操作以后,就可以实现创建一个用户,并且只让这个用户查看指定视图中的信息。