SQL Server 2008 - ошибка входа в систему. Имя Входа принадлежит недоверенному домену и не может использоваться при проверке подлинности Windows

Я только что установил SQL Server 2008 Developer edition, и я пытаюсь подключиться с помощью SQLCMD.exe, но я получаю следующую ошибку:

H:>sqlcmd.exe -S ".SQL2008"

Msg 18452, Level 14, State 1, Server DEVBOXSQL2008, 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, кажется, работает нормально.

8 ответов


У меня была эта проблема, и это было потому, что машина, на которой работает приложение, не доверяет делегированию в домене active directory. Если это приложение .net, работающее под идентификатором пула приложений DOMAIN_application.например, окружающая среда.. идентификатор не может выполнять вызовы SQL, если машине не доверяют.


вы не передаете никаких учетных данных в sqlcmd.exe

таким образом, он пытается аутентифицировать вас с помощью учетных данных входа Windows, но вы не должны иметь настройки SQL Server, чтобы принять эти учетные данные...

когда вы устанавливали его, вам пришлось бы указать пароль администратора сервера (для


в моем случае, эта ошибка была вызвана переименованием моей клиентской машине. Я использовал новое имя длиной более 13 символов (несмотря на предупреждение), в результате чего имя NETBIOS было усечено и отличалось от полного имени машины. Как только я переименовал клиента в более короткое имя, ошибка исчезла.


просто попытался это:

ч:>"C:\Program файлы\программы\Microsoft SQL сервер 90 инструменты\\Бинн\программы sqlcmd.exe "- S".\SQL2008" 1>

и это работает.. (У меня есть каталог Microsoft SQL Server\100\Tools\Binn в моем пути).

все еще не уверен, почему версия SQL Server 2008 программы SQLCMD не работает..


ваша ошибка буквально говорит:"вы пытаетесь использовать аутентификацию Windows, но Ваш логин не из доверенного домена". Что странно, потому что вы подключаетесь к локальной машине.

возможно, вы вошли в Windows, используя локальную учетную запись, а не учетную запись домена? Убедитесь, что вы входите в систему с учетной записью домена, которая также является участником SQL Server на экземпляре SQL2008.


вы укажите имя пользователя и пароль для входа? Что такое ваша полная командная строка?

Если вы работаете на своем поле, вы можете указать имя пользователя / пароль или использовать -E параметр для входа с учетными данными Windows (если они разрешены в установке SQL server).

Марк


Я тоже получал эту ошибку, хотя моя проблема заключалась в том, что я продолжал переключаться между двумя корпоративными сетями через свою виртуальную машину с разными учетными данными доступа. Мне пришлось запустить командную строку:

ipconfig /renew

после этого мои сетевые проблемы были решены, и я мог снова подключиться к SQL.


просто нашел эту тему и опубликовал альтернативный ответ (скопированный ниже) здесь: https://stackoverflow.com/a/37853766/1948625

конкретно по этому вопросу, если точка"." используется в -S значение командной строки означает то же самое, что и 127.0.0.1, тогда это может быть та же проблема, что и строка подключения другого вопроса. Вместо этого используйте имя хоста или проверьте файл hosts.


старый вопрос, и мои симптомы немного другая, но та же ошибка. Моя строка подключения была правильной (встроенная безопасность, и я не предоставляю пользователю и 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) который говорит о узлов и шлейфовый.

другое возможное исправление (если вам нужно сохранить эту строку в файле hosts) - использовать имя хоста (например,MYSERVER01) вместо 127.0.0.1 на data source в строке подключения.