Назад | Перейти на главную страницу

Возможно ли выполнение запланированной задачи как СЕТЕВОЙ СЛУЖБЫ?

Довольно просто настроить задачу для запуска в качестве СИСТЕМЫ, но при установке ее на СЕТЕВОЙ СЕРВИС отображается сообщение об ошибке «Доступ запрещен».

Есть ли способ заставить это работать? (Проблема в том, что я не хочу создавать нового пользователя домена для этой задачи, и мне нужно получить доступ к удаленному общему ресурсу из этой задачи.)

Я задал тот же вопрос. К счастью, Райан Райс смог предоставить правильный ответ.

В Windows Server 2003 вы не может запустить запланированную задачу как NT AUTHORITY\NetworkService (он же Учетная запись сетевой службы). Эта возможность была добавлена ​​только в Task Scheduler 2.0, который существует только в Windows Vista / Windows Server 2008.

Бонусный чат

  • LocalService учетная запись - это встроенная учетная запись с ограниченными правами на локальном компьютере, которая получает доступ к сети как анонимный. Вы должны использовать эту учетную запись для выполнения запланированных задач
  • NetworkService учетная запись - это встроенная учетная запись с ограниченными правами на локальном компьютере, которая получает доступ к сети как к машине (например, VADER$). Вы можете использовать эту учетную запись для запуска запланированных задач, если вам нужен аутентифицированный доступ к сети.
  • LocalSystem учетная запись - это встроенная учетная запись с широкими правами на локальном компьютере. Вам следует никогда использовать эту учетную запись для запуска запланированных задач

Вы не можете. Функциональность была представлена ​​в Task Scheduler 2.0, что означает Vista / 2008 +.

Из документации для Schtasks.exe:

/ RU имя пользователя

Значение, указывающее пользовательский контекст, в котором выполняется задача. Для системной учетной записи допустимые значения: «», «NT AUTHORITY \ SYSTEM» или «SYSTEM». Для задач Task Scheduler 2.0 допустимыми значениями также являются NT AUTHORITY \ LOCALSERVICE и NT AUTHORITY \ NETWORKSERVICE.

http://msdn.microsoft.com/en-us/library/windows/desktop/bb736357(v=vs.85).aspx:

Я пробовал сделать это несколькими способами, но теперь не думаю, что это возможно. Я был бы рад исправить это, но я перепробовал все, что мог придумать, включая добавление NETWORK SERVICE к Administrators, настраивая всевозможные параметры локальной политики безопасности и т. д.

Когда я включаю аудит, я получаю следующее:

Event Type:     Failure Audit
Event Source:   Security
Event Category: Account Logon 
Event ID:       680
Date:           02/03/2010
Time:           8:49:53 PM
User:           NT AUTHORITY\SYSTEM
Computer:       RESULTANT
Description:
Logon attempt by: MICROSOFT_AUTHENTICATION_PACKAGE_V1_0
 Logon account:  NETWORK SERVICE
 Source Workstation: RESULTANT
 Error Code: 0xC0000064

Event Type:     Failure Audit
Event Source:   Security
Event Category: Logon/Logoff 
Event ID:       529
Date:           02/03/2010
Time:           8:49:53 PM
User:           NT AUTHORITY\SYSTEM
Computer:       RESULTANT
Description:
Logon Failure:
     Reason:        Unknown user name or bad password
     User Name:     NETWORK SERVICE
     Domain:        NT AUTHORITY
     Logon Type:    4
     Logon Process: Advapi  
     Authentication Package: Negotiate
     Workstation Name:       RESULTANT

0xC0000064 декодирует в NO_SUCH_USER. Это немного глупо, учитывая, что я вошел только network service - как он узнал, что сбойная учетная запись находится в NT AUTHORITY?

Когда я ввожу неверное имя пользователя, я даже не вижу попытки аутентификации. Так ясно что-то соглашается, что NETWORK SERVICE это реальный аккаунт.

Если я неверно ввожу пароль для известного имени пользователя (т.е. Administrator), Я получил 0xC000006A (STATUS_WRONG_PASSWORD).


Попробуйте добавить Log on as a batch job прямо к NETWORK SERVICE. Я думаю, это глупая идея; вам нужно просто перекусить и создать учетную запись домена ...

Попробуйте добавить право «Вход в качестве службы» в учетную запись сетевой службы. Подробные инструкции Вот.

Просто хочу оживить эту ветку как она ЯВЛЯЕТСЯ можно использовать СЕТЕВОЙ СЕРВИС для задач! По крайней мере, на Server 2016 и 2019!

Просто небольшая странность после выбора аккаунта обычным способом. Под

Run whether user is logged on or not

Вам необходимо выбрать:

Do not store the password. The task will only have access to local computer resources

Вторую часть нужно брать с лопатой, полной соли! Это означает, что у вас нет полномочия, но если вы запускаете что-то, для чего не требуется учетная запись для учетных данных, она ДЕЙСТВИТЕЛЬНО имеет доступ к сети!

При экспорте задания основная часть выглядит так

  <Principals>
    <Principal id="Author">
      <UserId>S-1-5-20</UserId>
      <RunLevel>LeastPrivilege</RunLevel>
    </Principal>
  </Principals>

Я использую его для отправки статусных писем через smtp, и он прекрасно связывается с smtp-сервером

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

Если вам нужен доступ к общему сетевому ресурсу, вам необходимо использовать известную в сети учетную запись, поэтому используйте учетную запись домена. И служба, которую вы хотите запустить, ДОЛЖНА поддерживать адресацию UNC. Если ему нужен доступ по букве сетевого диска, вам понадобится сеанс пользователя с подключенными дисками, иначе это также не удастся.

(Полагаю, вы это уже знаете, глядя на дату своего сообщения. Мой ответ - просто дополнение для людей, которые найдут этот пост с похожей проблемой)

Kees