如何仅允许指定的ip连接SQL Server2005服务器 
方法1:
 


  • CREATE TRIGGER tr_logon_hostname_blacklist

  • ON ALL SERVER WITH EXECUTE AS 'sa'

  • FOR LOGON

  • AS

  • BEGIN

  •    @ClientHost nvarmax);

  •   @ClientHost = EVENTDATA().value('(/EVENT_INSTANCE/ClientHost)[1]','nvarmax)');

  •   IF @ClientHost IN ('192.0.2.3'

    如何仅允许指定的ip连接SQL Server2005服务器 EXE SQL Server 棋牌技术  第1张

  •                     ,'192.0.2.4'

  •                     ,'192.0.2.5'

  •                     ,'192.0.2.6')

  •     ROLLBACK;
    END;

复制代码消息 1084,级别 15 ,状态 1,过程 tr_logon_hostname_blacklist,第 3 行
'LOGON' 是无效事件类型 。

方法2:
 


  • USE master

  • GO

  • --使用如下的T-SQL禁止默认的TCP端点

  • ALTER ENDPOINT [TSQL Default TCP] STATE = STOPPED

  •  

  • GO

  • -- 建立一个新的端点

  • CREATE ENDPOINT [TSQL User TCP] STATE = STARTED

  • AS TCP(LISTENER_PORT = 1433,LISTENER_IP = (192.168.1.5) ) -- 侦听的网络地址

  • FOR TSQL()

  • GO

    如何仅允许指定的ip连接SQL Server2005服务器 EXE SQL Server 棋牌技术  第2张

  • -- 授予所有登录(或者指定登录)使用此端点的连接权限
    GRANT CONNECT ON ENDPOINT::[TSQL User TCP] TO [public]

复制代码网上找了的方法 ,但也没有用 ,不知是不是哪里错了,请教
 

CREATE TRIGGER connection_limit_trigger
ON ALL SERVER WITH EXECUTE AS 'sa'
FOR LOGON
AS
BEGIN
   @ClientHost nvarmax);
  @ClientHost = EVENTDATA().value('(/EVENT_INSTANCE/ClientHost)[1]','nvarmax)'); 
  IF @ClientHost NOT IN ('<local machine>' --不要删除此条
                        ,'192.168.2.243')
    ROLLBACK
END

这样看行不,网上的新建好以后 ,本机都登陆不进去

未经允许不得转载! 作者:棋牌源码网,转载或复制请以超链接形式并注明出处棋牌源码网

原文地址:《如何仅允许指定的ip连接SQL Server2005服务器》发布于:2021-08-06