(ИСПРАВЛЕНИЕ) Ошибка «NT AUTHORITY/LOCAL SERVICE Не найдена»

Ошибка «NT AUTHORITY/LOCAL SERVICE не может быть найдена» — это ошибка данных SQL-сервера, которая обычно возникает в Visual Studio или при выполнении определенных задач в выпусках Windows Server. Хотя некоторые люди сталкиваются с этой проблемой после установки новых серверных приложений или при компиляции приложения Visual Studio, другие видят ее при попытке установить службу с помощью расширенного установщика.

Невозможно найти NT AUTHORITY/LOCAL SERVICE Невозможно найти исправление NT AUTHORITY/LOCAL SERVICE

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Существует несколько различных распространенных причин, по которым может возникнуть ошибка NT AUTHORITY\NETWORK SERVICE, и они могут различаться в зависимости от вашего варианта использования.

Чаще всего ваш сетевой администратор мог удалить конкретный вход в Windows по разным причинам. В результате вы не сможете предоставить доступ для входа на SQL-сервер.

Другая причина, по которой вы можете увидеть эту ошибку, — это попытка добавить новое имя входа с тем же SID, что и существующее имя входа SQL Server. В этом случае вы также должны увидеть код ошибки 15401.

Однако подтверждено, что ошибка «NT AUTHORITY/LOCAL SERVICE не найдена» возникает, когда имя входа находится в другом домене, чем сервер SQL, или если используется конкретный механизм разрешения имен (WINS, DNS, HOSTS или LMHOSTS) настроен неправильно.

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

1. Проверьте, существует ли NT AUTHORITY\LOCAL SERVICE и имеет ли он необходимые разрешения.

Прежде чем перейти к дальнейшим техническим исправлениям, первое, что вам нужно сделать, это убедиться, что учетная запись NT AUTHORITY\LOCAL SERVICE действительно существует в системе, где вы пытаетесь ее использовать.

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

Эта процедура будет немного отличаться в зависимости от вашей версии сервера Windows, но общие шаги одинаковы для каждой версии Windows Server.

Вот что вам нужно сделать:

  1. Откройте панель мониторинга Windows Server Essentials.
  2. Откройте главную панель навигации и нажмите «Пользователи».
    Доступ к вкладке пользователейДоступ к вкладке пользователей
  3. Просмотрите список текущих пользователей и посмотрите, сможете ли вы найти запись с именем NT AUTHORITY\LOCAL SERVICE.
    Примечание. Если запись, связанная с NT AUTHORITY\LOCAL SERVICE, отсутствует, щелкните гиперссылку «Добавить учетную запись пользователя», чтобы открыть мастер добавления учетной записи пользователя. Далее следуйте инструкциям по созданию пользователей для NT AUTHORITY\LOCAL SERVICE и убедитесь, что соглашение об именах соблюдено.
  4. Убедившись, что учетная запись присутствует, давайте проверим, что у нее есть необходимые разрешения. Для этого щелкните учетную запись NT AUTHORITY\LOCAL SERVICE в разделе «Пользователи», затем перейдите на панель «Задачи» и нажмите «Свойства».
  5. Затем перейдите на вкладку «Общие», вкладку «Сегментированные папки», а затем на вкладку «Повсеместный доступ» и включите все разрешения, необходимые для этой учетной записи, в зависимости от вашего конкретного варианта использования.Включение необходимых разрешений для учетной записиВключение необходимых разрешений для учетной записи
  6. Сохраните изменения и повторите действие, которое раньше приводило к тому, что сообщение «NT AUTHORITY/LOCAL SERVICE не может быть найдено» теперь исправлено.

Если вы уже убедились, что учетная запись пользователя NT AUTHORITY\LOCAL SERVICE создана и имеет необходимые разрешения, перейдите к следующему способу ниже.

2. Создайте логин SQL Server (если применимо).

Если вы получаете эту ошибку при использовании приложения уровня данных SQL Server в проекте Visual Studio, скорее всего, вы увидите эту ошибку после создания сценария, который добавляет NT AUTHORITY\LOCAL SERVICE в список входа в раздел «Объекты уровня сервера».

Если вы использовали следующие сценарии для создания имен входа и добавления их в объекты уровня базы данных, этот метод применим:

СОЗДАТЬ ВХОД (NT AUTHORITY\LOCAL SERVICE) ИЗ WINDOWS С DEFAULT_LANGUAGE=(us_english) СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ (NT AUTHORITY\LOCAL SERVICE) ДЛЯ ВХОДА (NT AUTHORITY\LOCAL SERVICE)

В этом случае вы, скорее всего, получите сообщение об ошибке при попытке скомпилировать проект: «Невозможно найти NT AUTHORITY\LOCAL SERVICE, поскольку он не существует или разрешение не предоставлено».

Если этот сценарий применим, причина, по которой вы не можете создать учетную запись (NT AUTHORITY\LOCAL SERVICE), заключается в том, что NT AUTHORITY\LOCAL SERVICE в данном случае является не чем иным, как встроенной служебной учетной записью Windows. Для запуска и работы каждой службы в SQL Server должна быть задана учетная запись, определенная во время установки.

Учетные записи запуска SQL Server могут быть встроенными системными учетными записями, учетными записями локальных пользователей или учетными записями пользователей домена. Учетная запись локальной службы — это встроенная учетная запись, которая имеет доступ к тем же ресурсам и объектам, что и члены группы «Пользователи». Этот ограниченный доступ служит для защиты системы в случае взлома определенных служб или процессов.

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

ВАЖНО. Будьте осторожны, чтобы службы SQL Server или агента SQL Server не поддерживали учетную запись локальной службы. Полное имя учетной записи — «NT AUTHORITY/LOCAL SERVICE».

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

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

СОЗДАТЬ ЛОГИН <имя пользователя Windows> ИЗ WINDOWS; ИДТИ

Примечание. Помните, что <имя пользователя Windows> — это просто заполнитель. Замените его реальными именами пользователей Windows.

3. Добавьте соответствующие разрешения для SQL (если применимо).

Другая причина, по которой вы можете столкнуться с этой проблемой, — это сценарий, в котором вы не добавили правильные разрешения в SQL для службы NT AUTHORITY/LOCAL SERVICE и предоставили контроль только над папкой.

Чтобы устранить эту проблему, вам необходимо открыть SQL Server Management Studio (Enterprise Manager) и изучить экземпляр SQL, к которому вы пытаетесь подключиться. Оттуда вам нужно будет перейти в раздел «Безопасность» > «Логин» и создать новый логин, используя метод проверки подлинности Windows для NT AUTHORITY/LOCAL SERVICE.

Вот краткое руководство о том, как это сделать:

  1. Откройте стартовую страницу и введите «SSMS».
  2. В списке результатов выберите Microsoft SQL Server Management Studio.Откройте студию управления SQLОткройте студию управления SQL
  3. Зайдя в утилиту Microsoft SQL Server Management Studio, перейдите к конкретному экземпляру SQL, который выдает ошибку.
  4. После того как вы успешно получили доступ к конкретному экземпляру SQL, просмотрите его, выбрав «Безопасность» > «Входы в систему» ​​(отфильтровано).Доступ к папке логиновДоступ к папке логинов
  5. Щелкните правой кнопкой мыши базовый элемент, затем выберите «Аутентификация Windows».
  6. Затем введите «NT AUTHORITY/LOCAL SERVICE» и подтвердите создание правильных разрешений SQL.
  7. Обязательно добавьте соответствующие разрешения для этой новой учетной записи, если вы еще этого не сделали.
    Примечание. Вернитесь к методу 1 для выполнения конкретных шагов.
  8. Повторите действие, которое ранее вызывало проблему, и посмотрите, устранена ли проблема.

4. Перестройте базу данных SQL Server (если применимо).

Если вы уже пытались изменить пользователя «Вход в систему как» внутри службы SQL-сервера на NT AUTHORITY/LOCAL SERVICE, и это не сработало, возможно, вы сможете решить проблему, используя установщик загрузки для извлечения шестнадцатеричного имени перед перестроить базу данных SQL и скопировать файлы обратно.

Вот краткое руководство о том, как это сделать:

  1. Запустите загруженный установщик и дайте ему извлечь файлы в папку по умолчанию.
    Примечание. Извлечение будет развернуто в корневом каталоге диска вашей ОС (наиболее похожем на C:/) с длинным шестнадцатеричным именем.
  2. После завершения извлечения найдите время, чтобы скопировать все файлы в другую папку, чтобы предотвратить стирание их содержимого следующим действием.
  3. Закройте установщик.
    Примечание. Как только вы это сделаете, содержимое шестнадцатеричной папки, созданной на шаге 2, будет удалено.
  4. Нажмите клавишу Windows + R, чтобы открыть диалоговое окно «Выполнить».
  5. Затем введите «cmd» и нажмите Ctrl + Shift + Enter, чтобы открыть командную строку вашего сервера с повышенными правами.Откройте окно CMD с повышенными правами.Откройте окно CMD с повышенными правами.
  6. В разделе «Контроль учетных записей пользователей» (UAC) нажмите «Да», чтобы предоставить доступ администратора.
  7. Используйте компакт-диск, чтобы перейти к месту, где вы ранее сохранили извлеченные файлы (на шаге 3). Вот пример команды: CD C:\23420247290247292740.

    Примечание. Это всего лишь пример фрагмента. Измените приведенную выше команду, чтобы перейти к фактическому местоположению, где вы сохранили файлы (на шаге 3).

  8. По прибытии в нужное место выполните следующую команду, чтобы воссоздать и перестроить базу данных: setup/action=RebuildDatabase/InstanceName=SQLEXPRESS/SqlSysAdminAccounts=BUILTIN\Administrators
  9. Закройте приглашение CMD с повышенными правами и повторите действие, которое привело к тому, что «NT AUTHORITY/LOCAL SERVICE не может быть найден», чтобы проверить, устранена ли проблема.

5. Управление MachineGUID и перезагрузка службы SQL.

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

Другие пользователи, оказавшиеся в аналогичной ситуации, подтвердили, что им удалось решить проблему, создав резервную копию проблемного ключа перед изменением пути и перезапуском службы SQL.

Вот краткое руководство о том, как это сделать:

  1. Нажмите клавишу Windows + R, чтобы открыть диалоговое окно «Выполнить».
  2. Затем введите «regedit» и нажмите Ctrl + Shift + Enter, чтобы открыть редактор реестра с доступом администратора.Открытие редактора реестраОткрытие редактора реестра
  3. В разделе «Контроль учетных записей пользователей» (UAC) нажмите «Да», чтобы предоставить доступ администратора.
  4. В редакторе реестра используйте левую панель, чтобы перейти к следующему местоположению: HKLM\SOFTWARE\Microsoft\Cryptography\MachineGuid.
  5. Как только вы прибудете в нужное место, определите проблемный ключ. Он должен иметь GUID затронутого компьютера с фигурными скобками (например, {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}).
  6. Как только вы правильно определили уязвимую машину, нам необходимо создать резервную копию. Для этого убедитесь, что выбран машинный ключ, затем с помощью ленточного файла вверху перейдите в «Файл» и нажмите «Экспорт».Экспорт файлаЭкспорт файла
  7. Укажите местоположение и дайте узнаваемое имя файла, а также убедитесь, что для типа «Сохранить как» установлено значение «Регистрационные файлы» (*.reg).
  8. Наконец, прежде чем нажать «Сохранить», убедитесь, что для параметра «Диапазон экспорта» установлено значение «Выбранная ветвь» и выбрана правильная ветвь.Экспорт конкретной веткиЭкспорт конкретной ветки
  9. Нажмите «Сохранить», чтобы завершить процесс резервного копирования.
  10. После завершения резервного копирования переименуйте проблемный ключ и удалите фигурные скобки.
    Примечание. Значение MachineGuid должно изменяться от {xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} до xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
  11. После применения этого изменения закройте редактор реестра, перезагрузите компьютер и запустите службу SQL. Важно: если служба не запускается сразу, удалите и переустановите SQL перед повторной перезагрузкой. Если вы получили другую ошибку, восстановите исходную резервную копию, созданную на шаге 8, и перейдите к следующему способу ниже.

6. Измените сопоставления пользователей

Если вы получаете сообщение «NT AUTHORITY/LOCAL SERVICE not find» при попытке получить данные с вашего SQL-сервера с помощью asp.net, одним из быстрых способов устранения любой локальной причины является изменение сопоставления пользователей на правильные значения.

Примечание. Это исправление эффективно в ситуациях, когда вы используете локальную базу данных SQL Server Management Studio и пытаетесь ввести в нее данные с помощью приложения asp.net.

Если вы дважды проверили входные данные и весь код верен, но ошибка по-прежнему возникает, следуйте приведенным ниже инструкциям, чтобы использовать SQL Server Management Studio для доступа к странице входа в систему и изменить назначенные в данный момент сопоставления пользователей на экране «Свойства».

Вот краткое пошаговое руководство, как это сделать:

  1. Нажмите клавишу «Пуск» на клавиатуре, затем введите «SSMS» на стартовой странице.
  2. В списке результатов выберите Microsoft SQL Server Management Studio.Откройте студию управления SQLОткройте студию управления SQL
  3. Затем войдите на сервер, который вызывает ошибку «NT AUTHORITY/LOCAL SERVICE не найден».
  4. Перейдите в раздел «Безопасность», затем откройте подраздел «Входы в систему».
  5. В списке параметров щелкните правой кнопкой мыши NT AUTHORITY\NETWORK SERVICE или NT AUTHORITY\LOCAL SERVICE (в зависимости от вашего конкретного варианта использования) и выберите «Свойства» в контекстном меню.Доступ к экрану свойств локальной службыДоступ к экрану свойств локальной службы
  6. На экране «Свойства входа» выберите «Сопоставление пользователей» в левом верхнем углу экрана.
  7. Справа вы получите список ролей баз данных. Убедитесь, что флажок db-owner установлен, затем нажмите «ОК».
  8. Перезапустите код, который ранее вызывал проблему, и посмотрите, решена ли проблема.

7. Предоставьте доступ к роли системного администратора (если применимо).

Если вы получаете эту ошибку при попытке получить доступ к базе данных для приложения, созданного локально, первое, что вам следует проверить, — это разрешает ли текущая конфигурация NT AUTHORITY/LOCAL SERVICE под ролью системного администратора.

Вы можете сделать это, открыв Microsoft SQL Server Management Studio и изменив свойства службы NT AUTHORITY/LOCAL, чтобы включить роль системного администратора.

Вот краткое руководство о том, как это сделать:

  1. Нажмите клавишу «Пуск» на клавиатуре, затем введите «SSMS» на стартовой странице.
  2. В списке результатов выберите Microsoft SQL Server Management Studio.Откройте студию управления SQLОткройте студию управления SQL
  3. Затем перейдите в раздел «Безопасность» и разверните меню «Входы».
  4. Щелкните правой кнопкой мыши NT AUTHORITY/Local System и выберите «Свойства» в контекстном меню.
  5. На экране «Свойства» нажмите «Роли сервера» в меню слева.
  6. Перейдите на правую сторону и убедитесь, что установлен флажок, связанный с системным администратором.Изменение ролей сервераИзменение ролей сервера
  7. Сохраните изменения, затем перезагрузите компьютер и посмотрите, устранена ли проблема.

Если по какой-либо причине вы не можете получить доступ к Microsoft SQL Server Management Studio, вы также можете применить это исправление из командной строки с повышенными правами (если ваш доступ позволяет это).

Вот как это сделать:

  1. Нажмите клавишу Windows + R, чтобы открыть диалоговое окно «Выполнить».
    Затем введите «cmd» и нажмите Ctrl + Shift + Enter, чтобы открыть редактор реестра с доступом администратора.Откройте приглашение CMDОткройте приглашение CMD
  2. В приглашении контроля учетных записей пользователей (UAC) нажмите «Да», чтобы предоставить доступ администратора.
  3. В командной строке с повышенными правами введите следующую команду (и измените заполнитель), чтобы получить доступ к конкретному серверу, вызывающему проблему: sqlcmd -S (*имя сервера*)

    Примечание. Обязательно замените *имя сервера* фактическим именем сервера в вашем конкретном случае.

  4. Затем введите следующую команду и нажмите Enter, чтобы получить доступ к SQL-серверу на вашем компьютере: выберите имя из sys.server_principals, где name=”NT AUTHORITY\SYSTEM”
  5. Затем введите следующую команду, чтобы получить результат и использовать его в процедуре сортировки, где к нему будут добавлены права sysmin: SP_ADDSRVROLEMEMBER 'NT AUTHORITY\SYSTEM','SYSADMIN'
  6. После успешной обработки обеих команд закройте командную строку CMD с повышенными правами и повторите действие, которое вызвало ошибку «NT AUTHORITY/LOCAL SERVICE not be find».

8. Измените язык сервера на английский (если применимо).

Если при использовании расширенного установщика для вызова службы NT AUTHORITY/LOCAL SERVICE вы получаете сообщение «NT AUTHORITY/LOCAL SERVICE», ошибка может быть симптомом, вызванным ошибкой, затрагивающей внешние серверы.

Подтверждено, что эта проблема возникает, когда некоторые пользователи Advanced Installer пытаются запустить службу XUA Automation Server вручную через экран «Служба» или когда они пытаются запустить вручную, введя только имя пользователя (без NT Authority).

Примечание. Эта проблема возникает из-за того, что SCM не поддерживает локализованные имена, хотя подсистема безопасности их локализует. Хотя вы получите локализованное имя для своей учетной записи на внешнем сервере, при использовании таких функций, как CreateService или ChangeServiceConfig, учетная запись должна быть NT AUTHORITY\LocalService.

Если этот сценарий применим, единственным решением на данный момент является использование английской версии соглашения об именах.

Поэтому вместо использования команд на языке локального сервера (например, AUTORITE NT\SERVICE LOCAL) используйте английский эквивалент (NT AUTHORITY\LocalService).

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *