Подтвердить что ты не робот

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

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

Вход из ненадежного домена и не может использоваться с Windows Аутентификация

Я подключаюсь через Matlab, используя следующую команду:

conn = database('Clinical_Data','DoyleLab07\Acc','','com.microsoft.sqlserver.jdbc.SQLServerDriver','jdbc:sqlserver://DOYLELAB07\SQLEXPRESS:54287;database=Clinical_Data;integratedSecurity=true;').

Подключение к базе данных с помощью Matlab работало нормально, пока я использовал MATLAB на компьютере, который я использовал для размещения сервера. Однако, когда я использую другой компьютер и ту же команду Matlab, я получаю ошибку, которую я показал выше.

Когда я смотрю под панелью управления \system. Я заметил, что ни один домен не указан на моем ПК или ПК, который я использую для подключения к хосту, но оба компьютера находятся в одной рабочей группе. Смогу ли я исправить свою проблему, создав домен и добавив внешний ПК и хост в этот домен? Если да, то как это можно сделать?

Любые предложения будут очень оценены. Спасибо, что прочитали мой пост.

4b9b3361

Ответ 1

Как избавиться от Integrated Security=true работал у меня.

Ответ 2

Чтобы использовать проверку подлинности Windows, одна из двух вещей должна быть правдой:

  • Выполняется с того же компьютера, что и сервер базы данных.
  • У вас есть среда Active Directory и пользователь, к которому выполняется приложение (обычно зарегистрированный пользователь) имеет права на подключение к этой базе данных.

Если ни одно из них не является истинным, вы должны сделать одну из двух вещей:

  • Установите контроллер домена Windows, подключите все соответствующие компьютеры к этому контроллеру, затем исправьте SQL-сервер для использования учетных записей домена; ИЛИ,
  • Измените SQL-сервер на использование учетных записей Windows и SQL Server.

В FAR самым простым способом является изменение SQL Server для использования учетных записей Windows и SQL Server. Затем вам просто нужно создать пользователя сервера sql на сервере БД и изменить строку подключения для этого.

Лучший вариант варианта 1 займет целый день установки и настройки. Вариант 2 должен занимать около 5 минут.

Ответ 3

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

IntegratedSecurity = true;

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

IntegratedSecurity = false;

Теперь, когда интегрированная защита является ложной, SQL Server будет использовать логин и пароль SQL Server, указанные в строке подключения. Чтобы это сработало, экземпляр SQL Server должен иметь режим проверки подлинности, настроенный на смешанный режим: SQL Server и Windows Authentication.

Чтобы проверить или изменить этот параметр в SQL Server, вы можете открыть SQL Server Management Studio и щелкнуть правой кнопкой мыши имя вашего сервера, а затем выбрать "Свойства". В появившемся всплывающем окне выберите "Безопасность", и вы увидите, где это изменить, если вам нужно.

Ответ 4

У меня была такая же проблема при использовании псевдонимов DNS и файлов хостов для подключения к машине с использованием другого имени домена.

Предположим, что у вас есть SQL-сервер с именем sql1 on mydomain.com, который является доменом Active Directory, и у вас также есть зона DNS для mydomain.net, и - для согласованности - вы настраиваете псевдоним DNS (CNAME ) для database.mydomain.net --> sql1.mydomain.com

Вы сможете подключиться к sql1.mydomain.com с помощью встроенной безопасности Windows, но не сможете подключиться к database.mydomain.net , хотя это тот же сервер, потому что доменное имя doesn ' t соответствует вашему домену AD.

Ответ 5

Это сообщение об ошибке также может возникнуть, если учетная запись, которую вы используете для доступа к SQL-серверу, заблокирована доменом.

Ответ 6

Почему бы не использовать учетную запись SQL Server и передать как имя пользователя, так и пароль?

Вот почему.

Короче говоря, похоже, что у вас проблема аутентификации.

Проблема с рабочими группами заключается в отсутствии общего списка контроля доступа, такого как Active Directory (AD). Если вы используете ODBC или JDBC, передаются неправильные учетные данные.

Даже если вы создаете локальную учетную запись Windows (LWA) на компьютере (SE), в которой установлен SQL Express (SE\LWA), учетные данные, которые будут переданы с вашего клиентского компьютера (CM), будут CM\LWA.

Ответ 7

Как уже упоминалось здесь, возможно, потребуется отключить проверку по шлейфу

Обратную проверку можно удалить, добавив запись в реестр следующим образом:

  • Отредактируйте реестр, используя regedit. (Пуск → Выполнить> Regedit)
  • Перейдите к: HKLM\System\CurrentControlSet\Control\LSA
  • Добавьте значение DWORD с именем "DisableLoopbackCheck". Установите это значение равным 1.

Ответ 8

Если вы используете проверку подлинности Windows, убедитесь, что срок действия пароля пользователя не истек. Истекший пароль может объяснить эту ошибку. Это была проблема в моем случае.

Ответ 9

В моем случае псевдонимы в конфигурации SQL Native Client 11.0 указывали на неверный сервер /IP. После обновления он работал правильно.

Чтобы проверить: 1. Запустите "Диспетчер конфигурации SQL Server" 2. Перейдите в "Конфигурация клиентского клиента 11.0", а затем "Псевдонимы", 3. Убедитесь, что "Имя псевдонима" и "Сервер" правильно соответствуют TCP/IP

Ответ 10

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

На компьютере с SQL Server перейдите в Панель управления и добавьте нового пользователя Windows с тем же именем пользователя и паролем, что и на вашем рабочем компьютере. Затем создайте логин SQL Server для этого пользователя:

CREATE LOGIN [SQLSERVERHOST\myuser] FROM WINDOWS;

Теперь вы можете использовать этот логин для аутентификации Windows.

Если вы получаете сообщение об ошибке "Логин из ненадежного домена", это может означать, что вы изменили пароль на своем рабочем компьютере, и теперь вам необходимо обновить пароль на компьютере с SQL Server.

Ответ 11

Следующее работало на меня. надеюсь, это поможет вам

<add name="getconn" connectionString="Data Source=servername;Initial Catalog=DBName;Persist Security Info=True;User ID=sa;Password=***" />

Ответ 12

Просто добавив свое предложение по разрешению, у меня была копия виртуального сервера для разработки и тестирования, я создал базу данных на нем с владением 'sa' в БД.

Затем я восстановил базу данных на работающем сервере виртуальных машин, но я получил ту же ошибку, о которой упоминалось, даже если данные все еще возвращались правильно. Я посмотрел пользовательские сопоставления 'sa' и увидел, что они не были сопоставлены с базой данных, когда я попытался применить сопоставление, у меня возникла другая ошибка "Исправление: невозможно использовать специальный принципал sa. Microsoft SQL Server, ошибка: 15405 ". поэтому я запустил это вместо

ИЗМЕНЕНИЕ АВТОРИЗАЦИИ НА БАЗЕ ДАННЫХ :: dbname TO sa

Я перепроверил сопоставления пользователей, и теперь он был назначен моей базе данных, и это исправило много проблем с доступом для меня.

Ответ 13

Теперь мы используем привилегированное решение для управления учетными записями, которое регулярно меняет наши пароли. Я получил эту ошибку после того, как мой пароль был изменен. Закрытие и повторное открытие SSMS с новым паролем решило мою проблему.

Ответ 14

Я начал получать эту ошибку, когда я пытался войти в систему SSMS, используя "Windows Authentication". Это начало происходить после того, как я переименовал сервер Windows SQL. Я перепробовал все, чтобы устранить эту ошибку, и в моем конкретном случае изменение имен компьютеров в файле hosts для отражения изменения имени сервера SQL решило проблему. C:\Windows\System32\Drivers\Etc\хостов

Ответ 15

У меня была эта проблема, потому что мы использовали DNS-имя со старого сервера, подключаясь к новому серверу. Используя адрес newserver\inst1, сработало. newserver\inst1 и oldserver\inst1 указывают на один и тот же IP-адрес.