SqlServer 2008 r2 数据库中给其它用户设置指定的表或视图的访问权限

SqlServer 2008 r2 中设置只给其它用户访问自己指定表或视图…

  • 在操作使用数据库的大部分时候,我们可能对权限之类的东西设置的很少,但是在某些对安全性有要求的时候,我们则需要限制某个用户访问数据库的权限,比如让某个用户只能看到属于其管理或只需要用到的某几张表,并对指定的表拥有有限的操作权限。*

图文向导设置步骤
1、以管理员身份登录数据库,新建一个新的登录用户。
在这里插入图片描述阿三
2、将该用户需要访问的表或视图所在的数据库映射给该用户,使其能够访问该数据库(此时还没有给任何表、视图的访问权限其)。
在这里插入图片描述
3、以管理员身份给其他用户分配指定的表、视图或存储过程的操作权限。
在这里插入图片描述4、分配完访问和操作的权限之后,使用新建的用户名进行登录之后,即可对管理员指定的数据库中的表或视图进行权限内的操作。
在这里插入图片描述  至此已经完成,我们可以该用户能访问的只有我们分配的数据库中的视图(或者表、存储过程)。自己动手试试吧。

代码实现步骤
1、以管理员用户身份登录并打开需要操作的数据库,新建查询,创建一个可访问指定数据库的权限角色

exec sp_addrole [ceshi1]

2、给创建的角色赋予查看指定的视图的权限,视图名为:dbo._UserBaseInfo,角色名为创建的角色 ceshi1

grant select on dbo._UserBaseInfo to ceshi1

3、添加只允许访问指定视图的用户;,用户名:ceshi1a 密码:1qaz!QAZ 默认的数据库:DT_HIS

exec sp_addlogin 'ceshi1a','1qaz!QAZ','DT_HIS'

4、将用户和角色进行绑定(即给用户赋予访问指定视图的权限) , ‘用户’,‘密码’,‘角色’

exec sp_adduser  'ceshi1a','1qaz!QAZ','ceshi1'

5、最后使用新创建的用户名、密码登录,可以看到该用户下面只有一个可访问和操作的视图。自己动手试试吧。

exec sp_addrole ceshi1
grant select on dbo._UserBaseInfo to ceshi1
exec sp_addlogin 'ceshi1a','1qaz!QAZ','DT_HIS'
exec sp_adduser  'ceshi1a','1qaz!QAZ','ceshi1'

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值