开发者

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

开发者 https://www.devze.com 2023-04-12 09:07 出处:网络 作者: 香煎三文鱼
目录前言1.设置用户只能查看数据库中特定的视图或表2.设置用户只能看到特定的数据库总结 前言
目录
  • 前言
  • 1.设置用户只能查看数据库中特定的视图或表
  • 2.设置用户只能看到特定的数据库
  • 总结 

前言

在实际业务场景我们可能需要开放单独用户给第三方使用,并且不想让第三方看到与业务不相关的表或视图,我们需要在数据库中设置一切权限来实现此功能:

1.设置用户只能查看数据库中特定的视图或表

1.创建用户名 选择默认数据库 服务器角色默认为public 用户映射选择指定数据库

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

打开需要开放权限的数据库,这里我们选择test库

新建查询:

对用户qqq分配 View_1视图 只有 只读select权限

grant select on View_1 to qqq

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

–对用户分配指定表权限(读写删)

GRANT SELECT , INSERT , UPDATE , DELETE ON table1 TO [用户名]

–对用户分配指定表的列权限(读写删)

GRANT SELECT , UPDATE O编程客栈N table1(id,AA) TO [用户名]

使用qqq登录

这时我们只能看到View_1视图,其它的表和php视图看不见,且其它的数据库也无法操作

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

2.设置用户只能看到特定的数据库

如果我们不想让用户看到其它的数据库我们可以使用此方案

1.创建用户名 选择默认数据库 服务器角色默认为public 用户映射选择指定数据库

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

2.设置public角色

安全性&开发者_MsSqlmdash;—服务器角色—&mphpdash;找到public——属性——将服务器中的查看任意数据库 取消勾选

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

3.执行语句 设置新建的账户 能查看的数据库

USE test
go
EXEC dbo.sp_changedbowner Npython'qwe'

如果提示以下错误,

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

那么开test这个数据库找到刚刚新建的用户删掉之后再去执行这个语句

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

然后再使用我们新建的qwe账户登录,这时就实现了只能查看test这个数据库,且能看到所有的表

SQL Server如何设置用户只能访问特定数据库和访问特定表或视图

总结 

到此这篇关于SQL Server如何设置用户只能访问特定数据库和访问特定表或视图的文章就介绍到这了,更多相关SQLServer设置用户只能访问特定数据库内容请搜索我们以前的文章或继续浏览下面的相关文章希望大js家以后多多支持我们!

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号