Запланированная задача Windows 10 не использует учетные данные домена для доступа к сетевым ресурсам.

Вопрос или проблема

У меня есть простая задача, которая для целей тестирования состоит из пакетного файла с двумя строками:

whoami >result1.txt
copy \\server\share\test1.txt C:\Users\xxx\Documents > output.txt 2> error.txt

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

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

После выполнения задачи error.txt пуст, а output.txt содержит "Доступ запрещён." В истории задач нет полезной информации – только Действие завершено и Результат последнего запуска (0x1), поскольку копирование не удалось.

Общие параметры в свойствах запланированной задачи настроены на использование моей учетной записи домена и на “Запускать, независимо от того, вошёл в систему пользователь или нет”. Я пробовал как с установленным, так и без установленного параметра “Запускать с наивысшими привилегиями” – это, похоже, ничего не меняет. Я также пробовал изменить опцию “Настроить для” – опять же без эффекта. Параметр “Не хранить пароль” не установлен – но я пробовал установить его просто для полноты картины, и это не изменяет поведение.

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

Вызвана привилегированная служба.

Субъект:
  Идентификатор безопасности:      АНДОНИМНЫЙ ВХОД
  Имя учетной записи:     АНДОНИМНЫЙ ВХОД
  Домен учетной записи:       NT AUTHORITY
  Идентификатор входа:     0x180e12c36

Служба:
  Сервер:   Безопасность
  Имя службы: -

Процесс:
  Идентификатор процесса:   0x4
  Имя процесса: 

Информация о запросе службы:
  Привилегии:       SeBackupPrivilege

а затем событие успеха анонимного входа, сессия уничтожена.

Клиент – Windows 10, сервер – Windows 2008 R2. Учетные данные – учетная запись пользователя домена в Active Directory.

Если я использую другой сервер, сервер Windows 2016, работающий с IIS и WebDAV, то задача выполняется нормально через Планировщик заданий. Таким образом, через WebDAV используются мои учетные данные, в то время как через CIFS – нет.

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

Было предложено, что эта политика может быть актуальна, но она отключена, поэтому я не думаю, что это так:

Сетевой доступ: Не разрешать хранение паролей и учетных данных для сетевой аутентификации

в

Конфигурации компьютера\Параметры Windows\Безопасность\Локальные политики\Параметры безопасности

Я видел больше анекдотических доказательств того, что разрешения ведут себя иначе в интерактивном режиме по сравнению с запланированной задачей. И сообщение в журнале событий, похоже, указывает на то, что необходимо иметь seBackupPrivilege (что, вероятно, действительно означает, что он хочет изменить владельца объектов).

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

В теории вы также можете использовать GPO домена, чтобы установить аналогичные разрешения для конкретного пользователя или, что еще лучше, для его группы.

ИЗМЕНЕНО: Вы пробовали исключить или изменить вывод ошибок? Событие безопасности может быть ложным следом (например, NTLM аутентификация всегда будет иметь неудачную запись анонимного входа).

Если я запущу ваш скрипт, он завершится ошибкой в запланированной задаче, потому что перед > output.txt и 2> error.txt нет пути – но это работает:

copy \\two.moh.local\test\test1.txt C:\temp\ > c:\temp\output.txt 2> c:\temp\error.txt

Ваш скрипт будет работать, если вы запустите его из командной строки или двойным щелчком, потому что он будет использовать родительский каталог, это работает иначе, когда не выполняется интерактивно (я предполагаю, что он пытался записать куда-то, где у администратора домена есть разрешения, а у вашего пользователя – нет).

вы можете попробовать отключить защиту учетных данных.

Прежде всего, “Ошибка запланированного задания 0x1” трудно отлаживать, и вам нужно попробовать несколько решений, чтобы найти причину в вашей среде.

После того как я прочитал вопрос и ответы, я предлагаю:

  1. Попробуйте явно указать все пути, используемые в скриптах или пакетных файлах. Не используйте короткий путь. Измените конечный путь C:\Users\xxx\Documents на что-то вроде D:\test.
  2. Попробуйте включить полный путь к файлам ошибок и вывода.

Также я предлагаю проверить параметры во вкладке “Действие”. Попробуйте использовать кавычки для путей с пробелами.

Вы также можете найти полезную информацию о возвращаемой ошибке 0x1 в этом источнике

Ответ или решение

Задача: Windows 10 Планировщик задач не использует учетные данные домена для доступа к сетевым ресурсам

Введение

Ваша проблема заключается в том, что задача, созданная в Планировщике задач Windows 10, не может получить доступ к сетевым ресурсам, несмотря на то что она работает нормально при интерактивном запуске. Решение данной проблемы требует внимательного анализа настроек учетных записей, разрешений и поведения системы при запуске задач в фоновом режиме.

Анализ проблемы

Исходный скрипт, выполняющийся в Планировщике задач, состоит из двух команд:

whoami > result1.txt
copy \\server\share\test1.txt C:\Users\xxx\Documents > output.txt 2> error.txt

Первая команда выполняется успешно, подтверждая, что задача запускается под вашей учетной записью. Однако вторая команда вызывает ошибку "Access is denied", что указывает на то, что команда не может получить доступ к сетевым ресурсам из-за неправильных учетных данных.

Причины возникновения проблемы:
  1. Отсутствие необходимых привилегий: Хотя вы используете учетные данные домена, задача может не иметь достаточных привилегий для доступа к ресурсам сети при выполнении в фоновом режиме. Безопасность Windows ограничивает доступ к ресурсам, если задача не может аутентифицироваться должным образом.

  2. Анонимные входы: Запись в журнале безопасности показывает события, связанные с анонимными входами, что может свидетельствовать о том, что задача выполняется без необходимых учетных данных. Это может быть связано с настройками безопасности на сервере Windows Server 2008 R2, который вы используете.

  3. Политики сетевого доступа: Политики на сервере могут ограничивать учетные данные, используемые для подключения к ресурсам, что приводит к анонимной аутентификации.

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

Рекомендации по устранению проблемы

  1. Полные пути в командах:

    • Обязательно указывайте полные пути к файлам и каталогам, в том числе для output.txt и error.txt. Например, измените команды на:
      whoami > C:\temp\result1.txt
      copy \\server\share\test1.txt C:\temp\output.txt > C:\temp\output.txt 2> C:\temp\error.txt
  2. Настройки учетных данных в Планировщике задач:

    • Убедитесь, что задача действительно настроена запускаться с использованием ваших учетных данных. Попробуйте выполнить задачу с установленным флажком "Запуск с наивысшими правами", чтобы дать больше привилегий.
  3. Проверка групповых политик:

    • Проверьте, нет ли групповых политик на сервере, которые могут блокировать или ограничивать доступ к сетевым ресурсам.
  4. Анализ прав доступа на сервере:

    • Убедитесь, что ваша учетная запись находится в группе, имеющей доступ к общему ресурсу на сервере.
    • Попробуйте на время добавить вашу учетную запись в группу "Backup Operators" на сервере, чтобы проверить, разрешится ли проблема.
  5. Контрольные журналы событий:

    • Продолжайте исследовать журналы событий на сервере. Записи о неудачных аутентификациях могут дать дополнительную информацию о том, почему копирование не удается.
  6. Отключение Credential Guard:

    • Если включен Credential Guard, попробуйте его отключить. Это может помочь с аутентификацией в сетевых задачах.

Заключение

Проблема с доступом к сетевым ресурсам через задачу Планировщика задач в Windows 10 обычно возникает из-за неправильной аутентификации и отсутствия необходимых привилегий. Следуя рекомендациям по устранению проблемы, вы сможете обнаружить и устранить коренные причины неполадок, обеспечив корректную работу вашей задачи.

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

Капча загружается...