Ошибка CMD локального конвейера Azure: migrate.exe возвращает ошибку «Ошибка входа в систему для пользователя ‘NT AUTHORITY АНОНИМНЫЙ ВХОД В СИСТЕМУ'»

#sql-server #entity-framework-6 #entity-framework-migrations #windows-authentication #azure-devops-pipelines

#sql-сервер #entity-framework-6 #entity-framework-миграции #windows-проверка подлинности #azure-devops-pipelines

Вопрос:

Проблемный сценарий:

 1migrate.exe Core.dll /verbose /connectionString="DataSource=server-name;Initial Catalog=db-name;Integrated Security=True; "/connectionProviderName="System.Data.SqlClient "
  

Я открыл компьютер, на котором запущен агент конвейера, и он правильно выполняет миграцию.

Когда тот же сценарий выполняется в рамках задачи командной строки, я получаю сообщение об ошибке ниже:

2020-11-03T14:45:20.1962744Z ## [раздел] Запуск: сценарий командной строки 2020-11-03T14: 45:20.2058194Z ============================================================================== 2020-11- 03T14:45:20.2058419Z Задача: Командная строка 2020-11-03T14:45:20.2058637Z Описание : запустите скрипт командной строки с использованием Bash в Linux и macOS и cmd.exe в Windows 2020-11-03T14:45:20.2058833Z Версия: 2.177.2 2020-11-03T14:45:20.2058981Z Автор: корпорация Microsoft 2020-11-03T14:45:20.2059204Z Справка: https://learn.microsoft.com/azure/devops/pipelines/tasks/utility/command-line 2020-11-03T14:45: 20.2059450Z ============================================================================== 2020-11- 03T14:45:21.0758733Z Генерирующий скрипт. 2020-11-03T14:45:21.0836319Z Содержимое скрипта: 2020-11-03T14:45:21.0849117Z migrate.exe Core.dll /подробный /Строка подключения=»Источник данных=имя сервера; Начальный каталог = db-name; Встроенная безопасность = True; » / connectionProviderName=»System.Data.SqlClient » 2020-11-03T14:45:21.1141401Z ========================== Запуск вывода команды =========================== 2020-11- 03T14:45:21.1356562Z ##[команда]»C:Windowssystem32cmd.exe » /D /E: ВКЛ. /V: ВЫКЛ. /S /C «ВЫЗОВ «C:pipeline-agent_work_temp6db07e4c-052c-4aa1-b103-db71bebfec26.cmd «» 2020-11-03T14:45:24.3631400Z ПОДРОБНЫЙ: целевая база данных: «db-name» (источник данных: имя сервера, Поставщик: System.Data.SqlClient, Происхождение: явное). 2020-11-03T14:45:24.4108063Z System.Data.Entity.Миграции.Дизайн.Исключение ToolingException: ошибка входа в систему для пользователя ‘NT AUTHORITY АНОНИМНЫЙ ВХОД’. 2020-11-03T14:45:24.4111868Z в System.Data.Entity.Миграции.Дизайн.ToolingFacade.Run (бегун BaseRunner) 2020-11-03T14:45:24.4118794Z в System.Data.Entity.Миграции.Консоль.Program.Run() 2020-11-03T14:45:24.4122094Z в системе.Data.Entity.Миграции.Консоль.Program.Main(строка [] аргументы) 2020-11-03T14:45:24.4126803Z ОШИБКА: не удалось войти в систему для пользователя «NT AUTHORITY АНОНИМНЫЙ ВХОД». 2020-11-03T14:45: 24.4862640Z ## [ошибка]Cmd.exe завершен с кодом «1». 2020-11-03T14:45:24.5283178Z## [раздел] Завершение: сценарий командной строки

Эта проблема прекращается, когда я использую проверку подлинности SQL Server, к сожалению, мне нужно использовать проверку подлинности Windows.

Комментарии:

1. Задействованы ли какие-либо связанные подключения к серверу? Если это так, это может быть сценарий двойного перехода Kerberos.

2. Локальный агент развертывает схему sql в базе данных, расположенной на другом сервере. Применимо ли это к случаю, который вы указали выше?