码迷,mamicode.com
首页 > 数据库 > 详细

MSSQL只能访问特定的数据库

时间:2016-01-12 23:00:35      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:

让用户只能访问特定的数据库(MSSQL)

背景

 

客户的SQL Server实例上有多个厂商的数据库,每个数据库由各自的进行厂进行商维护,

 

为了限定不同厂商的维护人员只能访问自己的数据库,现需要给各个厂商限定权限,让他们登录SQL Server只能看到授权的数据库而无法看到其他数据库。

 

 

 

解决方案

 

1.先给不同的厂商创建不同的登录名(如下以一个厂商为例)

 

技术分享

 

 

 

 

 

2.将登录名加入到public服务器角色中,然后点击确定

 

技术分享

 

 

 

3.将待授权的数据库的dbowner指派给该用户

 

Use [xjcs]
go
EXEC dbo.sp_changedbowner N‘provider1‘

 

 

 

 

 

此时用‘provider1‘登录SQL Server,便只能看到指定的用户数据库了(系统数据库除外)

 

技术分享

 

 

 

 

 

 

 

 

 

说明:

 

我之前希望在第2个步骤中设置登录名的用户映射来实现这个需求,如下图,但没有效果,登录到SQL Server后还是无法看到用户数据库,

 

所以才采用上述方法:

 

技术分享

 

技术分享

MSSQL只能访问特定的数据库

标签:

原文地址:http://www.cnblogs.com/Leo_wl/p/5125789.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!