SQL Server 2008 - сбой входа. Вход из ненадежного домена и не может использоваться с аутентификацией Windows
Я только что установил выпуск разработчика SQL Server 2008, и я пытаюсь подключиться с помощью SQLCMD.exe, но я получаю следующую ошибку:
H:\>sqlcmd.exe -S ".\SQL2008"
Msg 18452, Level 14, State 1, Server DEVBOX\SQL2008, Line 1
Login failed. The login is from an untrusted domain and cannot be used with Windows authentication.
Экземпляр SQL Server настроен на использование режима проверки подлинности SQL Server и Windows. Если я укажу -U sa, то я могу войти в систему успешно, но я бы хотел использовать проверку подлинности Windows. Подключение с использованием SSMS с проверкой подлинности Windows, похоже, отлично работает.
Ответы
Ответ 1
У меня была эта проблема, и это произошло потому, что машина, запускающая приложение, не доверена для делегирования в домене с помощью активного каталога. Если это приложение .net работает под идентификатором пула приложений, например, DOMAIN_application.environment, то идентификатор не может выполнять вызовы SQL, если машина не доверена.
Ответ 2
Вы не передаете учетные данные sqlcmd.exe
Таким образом, он пытается аутентифицировать вас с помощью учетных данных Windows Login, но вы не должны иметь настройку SQL Server для принятия этих учетных данных...
Когда вы его устанавливали, вам пришлось бы предоставить пароль администратора сервера (для учетной записи sa
)
Try...
sqlcmd.exe -U sa -P YOUR_PASSWORD -S ".\SQL2008"
для справки,
theres подробнее здесь...
Ответ 3
В моем случае эта ошибка была вызвана переименованием моей клиентской машины. Я использовал новое имя длиной более 13 символов (несмотря на предупреждение), в результате чего имя NETBIOS было усечено и отличается от полного имени машины. Как только я переименовал клиента в более короткое имя, ошибка исчезла.
Ответ 4
Просто попробовал это:
H: > "C:\Program Files\Microsoft SQL Server\90\Tools\Binn\sqlcmd.exe" -S ".\SQL2008"
1 >
и он работает. (У меня есть каталог Microsoft SQL Server\100\Tools\Binn на моем пути).
Все еще не уверен, почему SQLCMD SQL Server 2008 не работает, хотя..
Ответ 5
Ваша ошибка в буквальном смысле говорит: "Вы пытаетесь использовать проверку подлинности Windows, но ваш логин не из доверенного домена". Что странно, потому что вы подключаетесь к локальной машине.
Возможно, вы вошли в Windows, используя локальную учетную запись, а не учетную запись домена? Убедитесь, что вы входите в систему с учетной записью домена, которая также является руководителем SQL Server на вашем экземпляре SQL2008.
Ответ 6
Укажите имя пользователя и пароль для входа в систему? Какова ваша полная командная строка?
Если вы работаете в своем собственном поле, вы можете указать имя пользователя/пароль или использовать параметр -E
для входа в систему с вашими учетными данными Windows (если это разрешено при установке вашего SQL-сервера).
Марк
Ответ 7
Я тоже получал эту ошибку, хотя моя проблема заключалась в том, что я продолжал переключаться между двумя корпоративными сетями через свою виртуальную машину с разными учетными данными доступа. Мне нужно было запустить командную строку:
ipconfig /renew
После этого были решены проблемы с сетью, и я снова смог подключиться к SQL.
Ответ 8
Только что нашел эту тему и разместил альтернативный ответ (скопированный ниже) здесь:
fooobar.com/info/337094/...
В частности, по этому вопросу, если точка ".
", используемая в значении -S
командной строки, означает то же самое, что и 127.0.0.1
, тогда это может быть та же проблема, что и строка подключения другого вопроса, Вместо этого используйте имя хоста или проверьте файл хостов.
Старый вопрос, и мои симптомы немного разные, но та же ошибка. Строка подключения была правильной (встроенная защита, а я не предоставляю пользователю и pwd) с data source
, установленным на 127.0.0.1
. Он работал отлично в течение многих лет.
Но недавно я добавил строку в статическом файле хоста для тестирования (C:\Windows\System32\drivers\etc\hosts
)
127.0.0.1 www.blablatestsite.com
Удаление этой строки и ошибка исчезла.
У меня есть ключ к этой статье (https://support.microsoft.com/en-gb/kb/896861), который рассказывает об именах хостов и loopback.
Другое возможное исправление (если вам нужно сохранить эту строку в файле hosts) - использовать имя хоста (например, MYSERVER01
) вместо 127.0.0.1
в строке data source
строки подключения.