Наши серверы Microsoft SQL работают на серверах Windows, которые являются частью домена Active Directory.
Для упрощения управления пользователями наша авторизация SQL настраивается с помощью групп пользователей Active Directory, как описано в этом Почта.
Теперь это работает нормально, пока все работают внутри домена. Люди входят в свой компьютер, используя свои учетные данные AD, и могут подключаться к серверу SQL, используя «Аутентификацию Windows».
Проблема в том, что наши пользователи также будут работать на других клиентских компьютерах, которые не являются частью домена Active Directory (и их добавление в домен не вариант).
Я надеялся, что они смогут просто продолжать использовать свои учетные данные AD для входа на сервер, используя аутентификацию AD, как указано на экране входа в SQL Server.
Однако, похоже, это не работает.
При входе в систему с использованием аутентификации пароля активного каталога возникают проблемы с сертификатом. Ошибка: «Цепочка сертификатов была выдана ненадежным центром».
Cannot connect to x.x.x.x.
===================================
A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - The certificate chain was issued by an authority that is not trusted.) (.Net SqlClient Data Provider)
------------------------------
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=-2146893019&LinkId=20476 (page does not exist)
Как ни странно, если я перейду к настройкам «параметров» в окне входа в систему и поставлю флажок «доверять сертификату сервера». Я внезапно НЕ могу подключиться к серверу и просто получаю сообщение об ошибке.
Cannot connect to x.x.x.x.
===================================
Login failed for user ''. (.Net SqlClient Data Provider)
Возможна ли установка, которую я хочу достичь? И если да, то как я могу этого добиться? :)
Резюме: Серверы SQL работают в домене AD, пользователи имеют учетные данные AD, но также должны иметь возможность входить в систему с клиентских компьютеров, НЕ являющихся частью домена AD, со своими учетными данными AD.
Сообщение об ошибке заключается в том, что сертификаты были выпущены ненадежным центром. Скорее всего, это будет ваш домен AD.
Пара обходных путей, которые вы можете попробовать:
TrustServerCertificate=True
в разделе «Дополнительные параметры подключения». По сути, это говорит SSMS, что да, вы знаете, просто сделайте это. runas /netonly /user:domain\username "C:\path_to\ssms.exe"
Я никогда не делал этого с SSMS, но стоит попробовать, поскольку OP, похоже, находится в той же ситуации, что и вы (и я верю, что парень отвечает).В любом случае, надеюсь, один из этих обходных путей поможет вам.
Самый простой способ - просто щелкнуть правой кнопкой мыши «Microsoft SQL Server Management Studio» - «еще» выбрать «Запуск от имени другого пользователя». У меня это сработало. Я думал, что если я выберу «Active Directory - Пароль» на экране входа в систему, это выполнит ту же работу, но ... к сожалению, этого не произошло.