Настройка правил брандмауэра перед запуском отладчика Transact-SQL
Область применения: SQL Server
Необходимо настроить правила брандмауэра Windows так, чтобы разрешить отладку Transact-SQL при подключении к экземпляру ядра СУБД на другом компьютере, кроме того, на котором работает редактор запросов ядра СУБД.
Настройка отладчика Transact-SQL
Отладчик Transact-SQL содержит серверные и клиентские компоненты. Компоненты отладчика на стороне сервера устанавливаются с каждым экземпляром ядро СУБД SQL Server. Клиентские компоненты отладчика устанавливаются в следующих случаях:
При установке Microsoft Visual Studio 2019 или более поздних версий
При установке SQL Server Data Tools (SSDT) из веб-скачивания
Нет требований к конфигурации для запуска отладчика Transact-SQL при запуске SQL Server Data Tools на том же компьютере, что и экземпляр ядро СУБД SQL Server. Но для запуска отладчика Transact-SQL при подключении к удаленному экземпляру ядра СУБД требуется включить правила для программы и порта в брандмауэре Windows на обоих компьютерах. Если при попытке открыть сеанс отладки на удаленном компьютере возникают ошибки, убедитесь, что на брандмауэре вашего компьютера определены следующие правила.
Правила можно задать с помощью приложения Брандмауэр Windows в режиме повышенной безопасности . В Windows 7 и Windows Server 2008 R2 откройте панель управления, откройте брандмауэр Windows и выберите дополнительные параметры. В Windows Server 2008 R2 можно также открыть Service Manager, развернуть конфигурацию в левой области и развернуть брандмауэр Windows с расширенной безопасностью.
Внимание
Включение правил в брандмауэре Windows может предоставить компьютеру угрозы безопасности, которые брандмауэр предназначен для блокировки. Включение правил для удаленной отладки заключается в разблокировании портов и программ, перечисленных в данном разделе.
Правила брандмауэра на сервере
На компьютере под управлением экземпляра ядро СУБД используйте брандмауэр Windows с расширенной безопасностью, чтобы указать следующие сведения:
Добавьте правило входящей программы для
sqlservr.exe
. Необходимо иметь правила для каждого экземпляра, к которому должны поддерживаться сеансы удаленной отладки.На левой панели окна Брандмауэр Windows в режиме повышенной безопасностищелкните правой кнопкой мыши раздел Правила для входящих подключенийи выберите на панели действий пункт Создать правило .
В диалоговом окне "Тип правила" выберите "Программа" и нажмите кнопку "Далее".
В диалоговом окне "Программа" выберите этот путь программы и введите полный путь к этому экземпляру
sqlservr.exe
. По умолчанию устанавливается вC:\Program Files\Microsoft SQL Server\MSSQL16.<InstanceName>\MSSQL\Binn
, где<InstanceName>
находитсяMSSQLSERVER
экземпляр по умолчаниюsqlservr.exe
и имя экземпляра для любого именованного экземпляра.В диалоговом окне "Действие" нажмите кнопку "Разрешить подключение" и нажмите кнопку "Далее".
В диалоговом окне "Профиль" выберите все профили, описывающие среду подключения к компьютеру, когда требуется открыть сеанс отладки с экземпляром и нажмите кнопку "Далее".
В диалоговом окне "Имя" введите имя и описание этого правила и нажмите кнопку "Готово".
В списке правил для входящих подключений щелкните правой кнопкой мыши созданное правило, а затем выберите "Свойства " в области действий.
Откройте вкладку Протоколы и порты .
Выберите TCP в типе протокола: поле "Динамические порты RPC" в локальном порту: поле "Применить", а затем нажмите кнопку "ОК".
Добавьте правило входящей программы для
svchost.exe
включения обмена данными распределенной объектной модели компонентов (DCOM) с удаленных сеансов отладчика.На левой панели окна Брандмауэр Windows в режиме повышенной безопасностищелкните правой кнопкой мыши раздел Правила для входящих подключенийи выберите на панели действий пункт Создать правило .
В диалоговом окне "Тип правила" выберите "Программа" и нажмите кнопку "Далее".
В диалоговом окне "Программа" выберите "Этот путь программы" и введите полный путь.
svchost.exe
По умолчаниюsvchost.exe
устанавливается в каталог%systemroot%\System32\svchost.exe
.В диалоговом окне "Действие" нажмите кнопку "Разрешить подключение" и нажмите кнопку "Далее".
В диалоговом окне "Профиль" выберите все профили, описывающие среду подключения к компьютеру, когда требуется открыть сеанс отладки с экземпляром и нажмите кнопку "Далее".
В диалоговом окне "Имя" введите имя и описание этого правила и нажмите кнопку "Готово".
В списке правил для входящих подключений щелкните правой кнопкой мыши созданное правило, а затем выберите "Свойства " в области действий.
Откройте вкладку Протоколы и порты .
Выберите TCP в поле "Тип протокола": выберите RPC Endpoint Mapper в локальном порту: поле "Применить", а затем нажмите кнопку "ОК".
Если согласно политике домена требуется, чтобы сетевые соединения осуществлялись через протокол IPsec, то необходимо также добавить правила входящих подключений для открытия портов 4500 и 500 по протоколу UDP.
Правила брандмауэра на клиенте
На компьютере, на котором выполняется ядро СУБД Редактор запросов, настройте брандмауэр Windows, чтобы разрешить удаленную отладку.
Если возникают ошибки при попытке открытия сеанса удаленной отладки, то вы можете вручную настроить исключения для программ и портов, настроив правила брандмауэра в окне Брандмауэр Windows в режиме повышенной безопасности .
Добавление записи для программы svchost
На левой панели окна Брандмауэр Windows в режиме повышенной безопасностищелкните правой кнопкой мыши раздел Правила для входящих подключенийи выберите на панели действий пункт Создать правило .
В диалоговом окне "Тип правила" выберите "Программа" и нажмите кнопку "Далее".
В диалоговом окне "Программа" выберите "Этот путь программы" и введите полный путь.
svchost.exe
По умолчаниюsvchost.exe
устанавливается в каталог%systemroot%\System32\svchost.exe
.В диалоговом окне "Действие" нажмите кнопку "Разрешить подключение" и нажмите кнопку "Далее".
В диалоговом окне "Профиль" выберите все профили, описывающие среду подключения к компьютеру, когда требуется открыть сеанс отладки с экземпляром и нажмите кнопку "Далее".
В диалоговом окне "Имя" введите имя и описание этого правила и нажмите кнопку "Готово".
В списке правил для входящих подключений щелкните правой кнопкой мыши созданное правило, а затем выберите "Свойства " в области действий.
Откройте вкладку Протоколы и порты .
Выберите TCP в поле "Тип протокола": выберите RPC Endpoint Mapper в локальном порту: поле "Применить", а затем нажмите кнопку "ОК".
Добавьте запись программы для приложения, на котором размещена ядро СУБД Редактор запросов SQL Server Data Tools. Если необходимо открыть сеансы удаленной отладки из нескольких установок SQL Server Data Tools на одном компьютере, необходимо добавить правило программы для обоих:
На левой панели окна Брандмауэр Windows в режиме повышенной безопасностищелкните правой кнопкой мыши раздел Правила для входящих подключенийи выберите на панели действий пункт Создать правило .
В диалоговом окне "Тип правила" выберите "Программа" и нажмите кнопку "Далее".
В диалоговом окне Программа щелкните Путь к этой программе и введите одно из следующих трех значений.
Для SQL Server Data Tools введите полный путь к
devenv.exe
:По умолчанию
devenv.exe
visual Studio 2022 находится вC:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE
.По умолчанию
devenv.exe
visual Studio 2019 находится вC:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE
.Путь к
devenv.exe
ярлыку, который вы используете для запуска SQL Server Data Tools. Щелкните правой кнопкой мыши ярлык и выберите пункт "Свойства". Исполняемый файл и пути указаны в поле Цель .
В диалоговом окне "Действие" нажмите кнопку "Разрешить подключение" и нажмите кнопку "Далее".
В диалоговом окне "Профиль" выберите все профили, описывающие среду подключения к компьютеру, когда требуется открыть сеанс отладки с экземпляром и нажмите кнопку "Далее".
В диалоговом окне "Имя" введите имя и описание этого правила и нажмите кнопку "Готово".
В списке правил для входящих подключений щелкните правой кнопкой мыши созданное правило, а затем выберите "Свойства " в области действий.
Откройте вкладку Протоколы и порты .
Выберите TCP в типе протокола: поле "Динамические порты RPC" в локальном порту: поле "Применить", а затем нажмите кнопку "ОК".
Требования к запуску отладчика
Все попытки запустить отладчик Transact-SQL должны также отвечать следующим требованиям.
Sql Server Data Tools должен работать под учетной записью Windows, которая является членом предопределенных ролей сервера sysadmin .
Окно ядро СУБД Редактор запросов должно быть подключено с помощью имени входа проверки подлинности Windows или проверки подлинности SQL Server, являющегося членом предопределенных ролей сервера sysadmin.
Окно ядро СУБД Редактор запросов должно быть подключено к экземпляру ядро СУБД SQL Server. Не удается запустить отладчик, если окно Редактор запросов подключено к экземпляру, который находится в однопользовательском режиме.
Сервер должен обмениваться данными с клиентом через RPC. Учетная запись, в которой запущена служба SQL Server, должна иметь разрешения, прошедшие проверку подлинности для клиента.