只让指定的机器连接SQLServer服务器
来源:百度文库 编辑:神马文学网 时间:2024/05/06 17:52:58
背景
只想使某个IP的计算机才能连接到SQL Server服务器,不允许其他客户端连接。
解决方法
可以直接在防火墙中做限制,只允许与指定的IP地址建立1433的通讯。当然,从更为安全的角度来考虑,应该把1433端口改成其他的端口。
其他解决方法1(限从指定IP接入的客户端)
如果使用SQL Server 2005,还可以通过端点限制的方法来实现,此方法要求一块专门的网卡,所有可以连接SQL Server的客户端均通过此网卡接入(假设此网卡的IP是192.168.1.1):
1. 在“SQL Server 配置管理器”的“SQL Server 2005网络配置中”,禁止除TCP/IP之外的所有协议;
2. 使用如下的T-SQL禁止默认的TCP端点
ALTER ENDPOINT [TSQL Default TCP]
STATE = STOPPED
3. 使用如下的T-SQL建立新的TCP端点和授权
USE master
GO
-- 建立一个新的端点
CREATE ENDPOINT [TSQL User TCP]
STATE = STARTED
AS TCP(
LISTENER_PORT = 1433,
LISTENER_IP = (192.168.1.1) -- 侦听的网络地址
)
FOR TSQL()
GO
-- 授予所有登录(或者指定登录)使用此端点的连接权限
GRANT CONNECT ON ENDPOINT::[TSQL User TCP]
TO [public]
完成上述配置之后,只有通过网络地址配置为192.168.1.1的网卡接入的客户端才能访问SQL Server;另外,如果只授予指定登录对端点的连接权限,则只有指定的登录才能接入SQL Server实例。
其他解决方法2(限指定IP的客户端接入)
当SQL Server 2005升级到SP2或者更高的版本的时候,还可以通过新增的触发器来实现控制。
执行下面的T-SQL后,将使除IP地址为192.168.1.1之外的客户端连接失败。
USE master
GO
CREATE TRIGGER tr_LoginCheck
ON ALL SERVER
FOR LOGON
AS
IF EVENTDATA().value('(/EVENT_INSTANCE/ClientHost)[1]', 'varchar(15)') <> '192.168.1.1'
ROLLBACK TRAN
GO
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zjcxc/archive/2007/08/05/1726704.aspx
只想使某个IP的计算机才能连接到SQL Server服务器,不允许其他客户端连接。
解决方法
可以直接在防火墙中做限制,只允许与指定的IP地址建立1433的通讯。当然,从更为安全的角度来考虑,应该把1433端口改成其他的端口。
其他解决方法1(限从指定IP接入的客户端)
如果使用SQL Server 2005,还可以通过端点限制的方法来实现,此方法要求一块专门的网卡,所有可以连接SQL Server的客户端均通过此网卡接入(假设此网卡的IP是192.168.1.1):
1. 在“SQL Server 配置管理器”的“SQL Server 2005网络配置中”,禁止除TCP/IP之外的所有协议;
2. 使用如下的T-SQL禁止默认的TCP端点
ALTER ENDPOINT [TSQL Default TCP]
STATE = STOPPED
3. 使用如下的T-SQL建立新的TCP端点和授权
USE master
GO
-- 建立一个新的端点
CREATE ENDPOINT [TSQL User TCP]
STATE = STARTED
AS TCP(
LISTENER_PORT = 1433,
LISTENER_IP = (192.168.1.1) -- 侦听的网络地址
)
FOR TSQL()
GO
-- 授予所有登录(或者指定登录)使用此端点的连接权限
GRANT CONNECT ON ENDPOINT::[TSQL User TCP]
TO [public]
完成上述配置之后,只有通过网络地址配置为192.168.1.1的网卡接入的客户端才能访问SQL Server;另外,如果只授予指定登录对端点的连接权限,则只有指定的登录才能接入SQL Server实例。
其他解决方法2(限指定IP的客户端接入)
当SQL Server 2005升级到SP2或者更高的版本的时候,还可以通过新增的触发器来实现控制。
执行下面的T-SQL后,将使除IP地址为192.168.1.1之外的客户端连接失败。
USE master
GO
CREATE TRIGGER tr_LoginCheck
ON ALL SERVER
FOR LOGON
AS
IF EVENTDATA().value('(/EVENT_INSTANCE/ClientHost)[1]', 'varchar(15)') <> '192.168.1.1'
ROLLBACK TRAN
GO
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zjcxc/archive/2007/08/05/1726704.aspx
只让指定的机器连接SQLServer服务器
怎样才能限制SQLServer只让指定机器连接
怎样才能限制SQL Server只能让指定的机器连接
解决ASP连接SQLServer不成功!
让机器骡见绌的机器狗
HTTP长连接的“服务器推”技术
ORACLE客户端连接服务器的注意事项
解决MySQL其他机器连接不上的问题
建立与Oracle数据库服务器连接的两种连接模式(专用服务器与共享服务器)
SqlServer的一些分享
Comet:基于 HTTP 长连接的“服务器推”技术
Comet:基于 HTTP 长连接的“服务器推”技术
我的milestone飞信总是连接不了服务器
SQL server 2005不能连接到服务器的解决方法
远程连接sql server 2000服务器的解决方案
服务器授权模式每服务器,同时连接数与每设备或每用户的区别
解决远程连接服务器的最大连接数 - Kevin的专栏 - CSDN博客
[转载]转??ORA-12154:?TNS:无法解析指定的连接标识符
vb ado连接远程sqlserver端口号不为1433
vb ado连接远程sqlserver端口号不为1433
JDBC连接SQLServer时出现错误Error establishing sock
SQLServer中通配符的使用
ASP连接SQL服务器代码
路由器端口映射,远程桌面连接--端口映射+花生壳=让人访问你个人服务器或WEB站点