【发布时间】:2017-01-09 04:41:20
【问题描述】:
我想记录客户端应用程序发送到我无权访问的远程 SQL 服务器的所有 SQL。我正在考虑某种可以记录和传递数据的客户端代理。它必须与客户端应用程序在同一台机器上运行。
任何想法表示赞赏。
【问题讨论】:
标签: sql-server
我想记录客户端应用程序发送到我无权访问的远程 SQL 服务器的所有 SQL。我正在考虑某种可以记录和传递数据的客户端代理。它必须与客户端应用程序在同一台机器上运行。
任何想法表示赞赏。
【问题讨论】:
标签: sql-server
SQL Server 的协议 TDS(“表格数据流”)默认情况下不加密,因此可以使用一个简单的数据包转发器来代理 SQL Server 连接并拦截命令(及其响应)。
TDS 协议规范可从 Microsoft 网站获得,您可以编写自己的代理来拦截命令:https://msdn.microsoft.com/en-us/library/dd304523.aspx?f=255&MSPPError=-2147217396
但是,这是一项艰巨的任务。如果您不需要捕获每个连接,您还有其他更简单的选择:
SqlCommand 的CommandText 和Parameter 值。WinPCap:https://www.winpcap.org/
【讨论】: