Безопасная передача данных с SQL-сервера на SQL-сервер через Интернет - PullRequest
2 голосов
/ 09 июля 2009

Мне нужно ежедневно передавать данные с SQL Server (2008) на SQL Server (2005). Один из серверов находится на нашем веб-хосте, поэтому данные будут передаваться через Интернет. В той же сети я бы использовал SSIS для передачи данных, но через Интернет это небезопасный вариант. Есть ли безопасный способ достижения этого?

Ответы [ 3 ]

4 голосов
/ 09 июля 2009

Вы можете использовать SSL с SQL Server ( 2000/2005 Инструкции / 2008 Инструкции ), а затем принудительно шифровать протокол на соединении между двумя компьютерами. Вам также не нужно использовать купленный SSL-сертификат, вы можете использовать службы сертификации Windows Server для его создания - однако, если вы это сделаете, CRL должен быть на компьютере, к которому могут подключиться оба сервера. Самый простой способ сделать это - установить службы сертификации на отдельном компьютере, возможно, просто на виртуальной машине, и настроить его для встраивания публичного DNS-имени в CRL . Это не должен быть компьютер, на котором запущены службы сертификации, просто то, чем вы владеете и можете загружать на него. Затем вы можете сгенерировать сертификаты и опубликовать CRL и tada, все готово.

Вам нужно будет убедиться, что учетная запись службы SQL работает, поскольку имеет доступ к закрытому ключу сертификата, который он использует.

0 голосов
/ 09 июля 2009

Вы можете использовать Service Broker :

  • Встроенный в сам механизм сервера SLQ, нет необходимости во внешнем процессе для управления связью.
  • Совместимый протокол SQL 2005 и SQL 2008 общаются через Service Broker "из коробки".
  • Нет необходимости выставлять любой сервер в Интернет. Через Пересылку сообщений вы можете выставить просто SQL Express без данных для выхода в Интернет в качестве шлюза, который пропускает сообщения в конечную цель.
  • Связь зашифрована .
  • Скорость , образец в ссылке показывает, как вы можете обмениваться более 5000 1K полезных сообщений в секунду между товарными машинами.

В отличие от служб SSIS или репликации, Service Broker представляет собой общую коммуникационную среду, поэтому он не обеспечивает поддержку для извлечения изменений и их применения с разрешением конфликтов и т.п. Вы должны были бы закодировать эту часть самостоятельно.

0 голосов
/ 09 июля 2009

Обычно не рекомендуется, чтобы ваши SQL-серверы были подключены к Интернету, хотя в этом случае это может быть вне вашего контроля. На вашем посту я бы занимался разработкой некоторых отдельных веб-сервисов, которые бы выполняли передачу данных. Затем они могут быть защищены с использованием различных методов, таких как SSL и WS-Security и другие пользовательские разрешения. Если это невозможно, то ответ Blowdart кажется правильным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...