2009-07-09 188 views
2

我需要从SQL Server(2008年)到SQL Server(2005)的日常数据传输。其中一台服务器位于我们的网站主机,因此数据将通过互联网传输。在同一个网络上,我将使用SSIS传输数据,但通过互联网,这不是一个安全的选择。有没有一种安全的方法来实现这一点?安全的数据传输从SQL服务器到SQL服务器在Internet上

+0

请解释什么数据传输。查询和结果数据?或其他东西 – 2009-07-09 08:17:03

回答

4

您可以在SQL Server上使用SSL(2000/2005 Instructions/2008 Instructions),然后在两台计算机之间的连接上强制执行协议加密。您不必使用购买的SSL证书,您可以使用Windows Server证书服务生成一个 - 但是如果您这样做,则CRL必须位于两台服务器都可以连接的计算机上。一个简单的方法是在独立的机器上安装证书服务,也许只是一台虚拟机和configure it to embed a public DNS name for it's CRL。这不一定是一台运行证书服务的机器,只是您拥有并可以上传的机器。然后您可以生成证书并发布CRL和tada,全部完成。

您需要确保服务帐户SQL运行正如它使用证书的access to the private key

+0

我们的托管公司提供了一个使用SSL的解决方案 – Danny 2009-07-10 11:05:45

0

一般不建议有暴露在互联网上你的SQL服务器,尽管这可能是出在这种情况下,你无法控制的。在你的职位上,我将研究开发一些独立的Web服务来执行数据传输。然后可以使用各种方法来保护这些资源,例如SSL和WS-Security以及其他自定义用户权限。如果这是不可能的,那么blowdart的答案似乎就是要走的路。

0

您可以使用Service Broker

  • 内置到SLQ Server引擎本身,无需外部进程带动通信。
  • 兼容协议SQL 2005 and SQL 2008上通信服务代理外的盒子。
  • 无需将任何服务器公开到互联网。通过Message Forwarding可以公开 只是一个SQL Express的,上面有没有数据,到互联网上充当网关,让信息到后端目标。
  • Communication is encrypted
  • Speed,链接中的示例展示了如何能够商品机器之间交换超过5000 1K有效负荷消息每秒

与SSIS或复制不同,Service Broker是一个通用的通信框架,因此它不会提供支持来提取更改并应用更改和冲突解决等。你将不得不自己编码那部分。