Могу ли я использовать опцию Integrated Security в строке подключения, если я подключаюсь к удаленному компьютеру, который не находится в домене?

Могу ли я использовать опцию Integrated Security (также известное как Trusted Connection) в строке подключения, если я подключаюсь к удаленному компьютеру, который не находится в домене?

У меня есть сервер разработки с Windows Server 2012 с поддержкой WebSocket, но я хочу работать с существующей базой данных на нашем главном общедоступном сервере, расположенном в среде удаленного виртуального хостинга. Я установил и установил зашифрованное VPN-соединение с сервера dev на главный сервер, поэтому я могу удаленно управлять базой данных через SSMS и подключаться к ней с помощью классов.NET System.Data.SqlClient, но я в настоящее время это делается с использованием учетной записи SQL Server с именем пользователя и паролем.

Ни один из компьютеров не находится в домене, хотя VPN имитирует соединение, происходящее по локальной сети. Поэтому мне было интересно, есть ли способ добавить учетную запись Windows на dev-сервере в SQL Server в основной системе, чтобы я мог подключаться с интегрированной безопасностью с сервера dev. Или интегрированная защита работает только при подключении к локальной базе данных и компьютеру в одном домене?

2 ответа

Решение

Интегрированная защита будет работать только в том случае, если машины находятся в одном домене (или другом домене с доверием), это связано с тем, что SQL-серверу необходимо связаться с контроллером домена для проверки подлинности входа в Windows, что он может сделать, только если он является членом домен.

Недостаточно просто подключиться к локальной сети, поскольку, хотя компьютер может физически подключаться к контроллеру домена, он не сможет аутентифицировать пользователей на его основе.

Это не обязательно так, вот как вы можете это сделать.

Сначала добавьте имя сервера и IP-адрес в ваш локальный файл hosts.

Теперь перейдите в диспетчер учетных данных на панели управления и добавьте имя сервера SQL Server, которое вы добавили в файл хостов, с:1433 в конце.

Так например

запись локальных хостов

192.168.1.1 SQLServer

Диспетчер учетных данных панели управления

Интернет сетевого адреса: SQLServer:1433

Имя пользователя: DOMAINNAME\UserName

Это также работает для Visual Studio, если вы хотите использовать встроенную безопасность.

Надеюсь это поможет!

Другие вопросы по тегам