网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > SQL技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.sql server 2008 对 t-sql 语言的.
.用Pipelined Table实现split函数.
.如何在应用程序中避免死锁问题?.
.深入讲解"database link"的设置和.
.SQL Server轻松掌握如何删除群集.
.深入了解SQL Server 2008高可用性.
.在SQL 2005中实现循环每一行做一.
.检查数据库数据字段命名规范与合.
.SQLSERVER扩展存储过程XP_CMDSHE.
.为什么要升级到SQL Server 2005 .
.sql server日期时间函数.
.存储过程与SQL语句的恩怨情仇.
.谈数据库中模糊数据的输入与判别.
.SQL Server 2000的数据转换服务(.
.SQL Server 2008的新压缩特性.
.sql2000卸载了后重新安装时不能安.
.收集SQL Server统计信息.
.SQL Server 存储过程的分页方案比.
.从SQL备份文件中导入现存数据库中.
.数据库查询结果的动态排序(6).

只让指定的机器连接SQLServer服务器

发表日期:2007-8-19


背景

只想使某个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

上一篇:两台SQLServer数据同步解决方案(不得不看) 人气:2157
下一篇:修改SQL Server2005数据库中的逻辑文件名 人气:2543
浏览全部SQL Server的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐