Могу ли я использовать опцию 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, если вы хотите использовать встроенную безопасность.
Надеюсь это поможет!