首页 > 代码库 > Chapter 1 Securing Your Server and Network(13):配置端点安全性

Chapter 1 Securing Your Server and Network(13):配置端点安全性

原文出处:http://blog.csdn.net/dba_huangzj/article/details/38489765,专题文件夹:http://blog.csdn.net/dba_huangzj/article/details/37906349

未经作者允许。不论什么人不得以“原创”形式公布,也不得已用于商业用途。本人不负责不论什么法律责任。

        前一篇:http://blog.csdn.net/dba_huangzj/article/details/38438363

 

前言:

 

SQL Server端点(Endpoint)是出入SQL Server的门户。通过端点,不论什么东西能够在网络和SQL Server之间传输。端点能够是系统或者用户自己定义的。当中系统端点允许使用T-SQL连接SQL Server并发送查询。

端点使用特定的协议定义,能够是HTTP或者TCP,从SQL Server 2012開始HTTP端点被移除出内置的Web Services功能中。仅能使用TCP端点。

通常使用自己定义端点的目的有:

  1. TCP 请求。

    本文介绍这样的。能够用于建立专用或安全的SQL Server连接。

  2. Service Broker
  3. 数据库镜像

实现:

 

1. 在查询窗体中输入以下语句:

CREATE ENDPOINT myTSQLEndpoint 
STATE = started 
AS TCP ( 
  LISTENER_PORT = 8080, 
  LISTENER_IP = (127.0.0.1) 
  ) 
FOR TSQL ();


2. 运行后会收到消息例如以下,意味着全部通过默认T-SQL端点连接的登录都会失去全部权限,你须要使用以下语句授权:

GRANT CONNECT ON ENDPOINT::[TSQL Default TCP] to [public];


消息:

创建 TSQL 端点将导致撤销 ‘TSQL Default TCP‘ 端点上的全部 ‘Public‘ 连接权限。假设此端点上须要 ‘Public‘ 訪问权限,请使用‘GRANT CONNECT ON ENDPOINT::[TSQL Default TCP] to [public]‘又一次应用此权限。


 

3. 能够使用以下语句查询端点情况:

SELECT * FROM sys.tcp_endpoints;


 

4. 能够使用ALTER ENDPOINT命令启动或停止端点:

ALTER ENDPOINT [TSQL Default TCP] STATE = STOPPED;


原理:

 

当SQL Server 安装完成是,会为每一个网络协议创建相应的SQL Server系统端点。訪问端点的权限是赋予给Public server角色。每一个SQL Server登录都具有Public角色权限,能够通过以下语句进行授权和回收:

REVOKE CONNECT ON ENDPOINT::[TSQL Default TCP] to [public]; 
GRANT CONNECT ON ENDPOINT::[TSQL Default TCP] to [a_specific_login];



下一篇:http://blog.csdn.net/dba_huangzj/article/details/38656615


Chapter 1 Securing Your Server and Network(13):配置端点安全性