Rumah >pangkalan data >tutorial mysql >Chapter1SecuringYourServerandNetwork(13):配置端点安全性

Chapter1SecuringYourServerandNetwork(13):配置端点安全性

WBOY
WBOYasal
2016-06-07 15:59:541159semak imbas

原文出处:http://blog.csdn.net/dba_huangzj/article/details/38489765,专题目录:http://blog.csdn.net/dba_huangzj/article/details/37906349 未经作者同意,任何人不得以原创形式发布,也不得已用于商业用途,本人不负责任何法律责任。 前一篇:http://b

原文出处: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端点。

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

TCP 请求。本文介绍这种,可以用于建立专用或安全的SQL Server连接。 Service Broker 数据库镜像

实现:

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 服务器角色。每个SQL Server登录都具有Public角色权限,可以通过下面语句进行授权和回收:

REVOKE CONNECT ON ENDPOINT::[TSQL Default TCP] to [public]; 
GRANT CONNECT ON ENDPOINT::[TSQL Default TCP] to [a_specific_login];
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn