Чи можливе виконання запланованого завдання як СЕРВІС МЕРЕЖІ?


11

Налаштувати задачу для запуску як СИСТЕМУ досить просто, але при встановленні її на МЕРЕЖУ СЕРВІС відображається повідомлення про помилку "Доступ заборонено".

Чи є якийсь спосіб зробити це робочим? (Проблема полягає в тому, що я не хочу створювати нового користувача домену для цього завдання, і мені потрібно отримати доступ до віддаленої спільної доступу до цієї задачі.)

Відповіді:


13

Я задав це саме питання . На щастя, RyanRies зміг дати правильну відповідь .

У Windows Server 2003 ви не можете виконати заплановане завдання як NT AUTHORITY\NetworkService( акаунт облікового запису Network Service ). Ця можливість була додана лише із Планувальником завдань 2.0, який існує лише в Windows Vista / Windows Server 2008.

Бонусна балаканина

  • Обліковий запис LocalService - це вбудований обліковий запис з обмеженими привілеями на локальному комп’ютері та доступ до мережі як анонімний . Ви повинні використовувати цей обліковий запис для виконання запланованих завдань
  • Обліковий запис NetworkService - це вбудований обліковий запис з обмеженими привілеями на локальному комп’ютері та доступ до мережі як машина (наприкладVADER$). Цей обліковий запис можна використовувати для запуску запланованих завдань, якщо вам потрібен автентифікований доступ до мережі
  • Акаунт LocalSystem - це вбудований рахунок з великими привілеями на локальному комп'ютері. Ніколи не слідвикористовувати цей обліковий запис для виконання запланованих завдань

6

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

З документації для Schtasks.exe:

/ Ім'я користувача RU

Значення, яке визначає контекст користувача, під яким виконується завдання. Для системного облікового запису допустимими значеннями є "", "NT AUTHORITY \ SYSTEM" або "SYSTEM". Для завдань планувальника завдань 2.0 значення "NT AUTHORITY \ LOCALSERVICE" та "NT AUTHORITY \ NETWORKSERVICE" також є дійсними значеннями.

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


Дуже корисно, що документ конкретно згадує Планувальник завдань 2.0. Це виключає здогадки.
Ян Бойд

2

Я спробував це зробити кількома способами, але зараз я не думаю, що це можливо. Я був би радий виправляться на це, але я спробував все , що я міг думати, в тому числі додавання 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. Я думаю, що це дурна думка; вам слід просто кусати кулю і створити обліковий запис домену ...


Вибачте, що я помилявся в своєму попередньому коментарі до Метта, але я спробував додати його до "Увійти як пакетна робота" і не пощастило.
регент

0

Спробуйте додати право "Увійти як послуга" до облікового запису послуги мережі. Детальні інструкції тут.


Ні. Він уже був зазначений у розділі "Увійти як служба", і додавання до "Увійти як служба" теж не допомогло.
регент

0

Просто хочу , щоб оживити цю нитку , як це IS можна використовувати NETWORK SERVICE для задач! Як мінімум на сервері 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-сервером


-1

Служба мережі - це локальний (комп'ютерний) рахунок. Тому він ніколи не матиме прав на інший комп'ютер (де частка знаходиться).

Якщо ви хочете отримати доступ до спільної мережі, вам потрібно використовувати обліковий запис, відомий в мережі, тому використовуйте домашній рахунок. І служба, яку ви хочете запустити, ОБОВ'ЯЗКОВО підтримує UNC-адресування. Якщо він потребує доступу до літерних мережних дисків, вам потрібна сеанс роботи з картами накопичених дисків, інакше це також не вдасться.

(Я думаю, ви це вже знаєте, дивлячись на дату вашої публікації. Моя відповідь - це лише додаткова інформація для людей, які знайдуть цю публікацію з подібною проблемою)

Кіс


2
Кожен комп'ютер, приєднаний до домену, має свій власний обліковий запис в Active Directory. Наскільки я розумію NETWORK SERVICE, це місцевий псевдонім до цього рахунку, тому він може мати доступ до деяких акцій.
регент

1
NetworkService буде мати права на іншому комп'ютері. Від MSDN : "Він має мінімальні привілеї на локальному комп'ютері і виступає як комп'ютер у мережі".
Ян Бойд

Ця відповідь невірна. Як також говорить @IanBoyd, NETWORK SERVICE спеціально призначений для доступу до елементів у мережі (саме тому у назві є "Мережа", на відміну від облікового запису LOCAL SERVICE), до якого вона матиме доступ, використовуючи ідентифікатор домену комп'ютера, ДОМЕЙН \ КОМП'ЮТЕРНАМ $, наприклад, ОСНОВНІ \ WEBSRV2 $.
Нік Джонс

Це також не обліковий запис (локальний чи інший). Це відомий директор безпеки.
Falcon Momot
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.