MSSQL只能访问特定的数据库

让用户只能访问特定的数据库(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后还是无法看到用户数据库,

所以才采用上述方法:

时间: 2024-10-14 09:56:35

MSSQL只能访问特定的数据库的相关文章

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

背景 客户的SQL Server实例上有多个厂商的数据库,每个数据库由各自的进行厂进行商维护, 为了限定不同厂商的维护人员只能访问自己的数据库,现需要给各个厂商限定权限,让他们登录SQL Server只能看到授权的数据库而无法看到其他数据库. 解决方案 1.先给不同的厂商创建不同的登录名(如下以一个厂商为例) 2.将登录名加入到public服务器角色中,然后点击确定 3.将待授权的数据库的dbowner指派给该用户 Use [xjcs] go EXEC dbo.sp_changedbowner

Sqlserver中设置某个用户只能访问特定的某个试图(给外部调用)其他的没权限设置

--当前数据库创建角色 exec sp_addrole 'rapp'--分配视图权限 GRANT SELECT ON veiw TO [角色] --指定视图列表ViewCardBaseInfo--GRANT SELECT ON v_city TO rapp--GRANT SELECT ON v_lp TO rapp--GRANT SELECT ON v_qy TO rapp GRANT SELECT ON ViewCardBaseInfo TO rapp go--添加只允许访问指定视图的用户:

sqlserver 创建用户只能访问指定视图

use crm --当前数据库创建角色 exec sp_addrole 'rapp' --分配视图权限 GRANT SELECT  ON veiw TO [角色] --指定视图列表 GRANT SELECT ON  v_city TO rapp GRANT SELECT ON  v_lp TO rapp GRANT SELECT ON  v_qy TO rapp go --添加只允许访问指定视图的用户: exec sp_addlogin '登录名','密码','默认数据库名' exec sp_a

mssql server 2005自动备份数据库

(转) (1)启动[sql server Management Studio],在[对象资源管理器]窗口里选择[管理]——[维护计划]选项. 2)右击[维护计划],在弹出的快捷菜单里选择[维护计划向导]选项 ,弹出如图所示的[维护计划向导]对话框,单击[下一步]按钮 3)弹出如图所示[选择目标服务器]对话框,在[名称]文本框里可以输入维护计划的名称:在[说明]文本框里可以输入维护计划的说明文字:[在服务器]文本框里可以输入要使用的服务器名:最后选择正确的身份证信息,单击[下一步]按钮. (4)弹

通过mysql-proxy映射外网访问内网数据库

配置教程: 转自:http://www.centoscn.com/mysql/2015/0107/4437.html centos安装mysql-proxy mysql-proxy的用处就不再说了 mysql-proxy依赖libevent,lua,glib2等几个软件 所以在安装之前先 yum install lua-devel yum install glib2-devel libevent我采用源代码安装, 下载的 libevent-1.4.13-stable.tar.gz tar zvf

nagios 多用户权限管理---特定用户访问特定主机或服务

nagios 多用户权限管理---特定用户访问特定主机或服务1.nagios安装????????????------------2.添加用户和密码htpasswd?/usr/local/nagios/etc/htpasswd.users?eddy 3.修改配置vim?/usr/local/nagios/etc/cgi.cfguse_authentication=1authorized_for_read_only=eddy 4.添加联系人vi?/usr/local/nagios/etc/objec

怎样从外网访问内网数据库?

本地安装了一个数据库,只能在局域网内访问到,怎样从外网也能访问到本地的数据库呢?本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动数据库 默认安装的数据库端口是1024. 2. 实现步骤 2.1 下载并解压holer软件包 Holer软件包:holer-xxx.tar.gz Holer支持各种OS系统平台,请选择跟本地OS类型匹配的holer软件包. 2.2 获取holer access key信息 在holer官网上申请专属的holer access key或者使用开源社区上公开的

holer实现外网访问内网数据库

外网访问本地数据库 本地安装了数据库,只能在局域网内访问,怎样从公网也能访问内网数据库? 本文将介绍使用holer实现的具体步骤. 1. 准备工作 1.1 安装并启动数据库 默认安装的数据库端口是3306. 2. 实现步骤 2.1 下载并解压holer软件包 Holer软件包:holer-xxx.tar.gz Holer支持各种OS系统平台,请选择跟本地OS类型匹配的holer软件包. 2.2 获取holer access key信息 在holer官网上申请专属的holer access key

Holer实现外网访问本地SQLServer数据库

外网访问内网SQLServer数据库 内网主机上安装了SQLServer数据库,只能在局域网内访问,怎样从公网也能访问本地SQLServer数据库? 本文将介绍使用holer实现的具体步骤. 1. 准备工作 1.1 安装并启动SQLServer数据库 默认安装的SQLServer数据库端口是1433. 2. 实现步骤 2.1 下载并解压holer软件包 Holer软件包:holer-xxx.tar.gz Holer支持各种OS系统平台,请选择跟本地OS类型匹配的holer软件包. 2.2 获取h