Сопоставленные диски не видны из командной строки и планировщика задач с повышенными правами

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

Вот скриншоты с компьютера под управлением Windows 10 версии 1903.

подключенный сетевой диск не виден из командной строки администратора и планировщика задач

Однако подключенный сетевой диск доступен из проводника и обычной (без повышенных прав) командной строки.

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

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

(Перейдите к решению напрямую)

Статья базы знаний Майкрософт KB937624 После включения UAC программы могут не иметь доступа к некоторым сетевым расположениям для решения этой проблемы. Но реальное исправление дано в KB3035277 (также упоминается ниже).

KB937624 заявляет:

Когда администратор входит в систему Windows Vista, локальный орган безопасности (LSA) создает два токена доступа. Если LSA уведомляется о том, что пользователь является членом группы «Администраторы», LSA создает второй вход в систему, который удаляет (фильтрует) права администратора. Этот отфильтрованный токен доступа используется для запуска рабочего стола пользователя. Приложения могут использовать маркер полного доступа администратора, если пользователь администратора нажимает Разрешить в диалоговом окне Контроль учетных записей пользователей.

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

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

В другой статье Microsoft KB3035277, озаглавленной «Подключенные диски, недоступны из привилегированного приглашения, когда для UAC настроено« Запрос учетных данных »», предлагается объяснение, а также решение, которое работает в Windows Vista и Windows 10 (протестировано на v1903).

KB3035277 заявляет:

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

Когда сопоставления дисков создаются, система создает объекты символических ссылок («DosDevices»), которые связывают буквы дисков с путями UNC. Эти объекты являются специфическими для сеанса входа в систему и не являются общими для сеансов входа в систему.

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

И вот полезная записка от Джеймса Финнигана [MSFT].

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

Исправлено: подключенные диски не видны из командной строки администратора и планировщика задач.

Как заявляет KB3035277, вы можете решить эту проблему, создав EnableLinkedConnections Значение DWORD (32-разрядное) в следующем разделе реестра и установка его данных в 1.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
  1. Чтобы создать / установить значение реестра, запустите редактор реестра (regedit.exe)
  2. Перейти к вышеуказанной ветке.
  3. В меню «Правка» выберите «Создать, значение DWORD (32-разрядное)».
  4. Назовите значение DWORD как EnableLinkedConnections и установите его данные 1,
    подключенный сетевой диск не виден из командной строки администратора и планировщика задач - enablelinkedconnections
  5. Выйдите из редактора реестра и перезапустите Windows.

EnableLinkedConnections значение позволяет Windows совместно использовать сетевые подключения между токеном отфильтрованного доступа и токеном полного доступа администратора для члена группы «Администраторы». Как было сказано ранее, вы должны перезагрузить компьютер после создания значения реестра.

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

подключенный сетевой диск не виден из командной строки администратора и планировщика задач

Использование файла .REG

Вы можете автоматизировать вышеуказанную настройку, создав файл .reg из следующего содержимого.

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"EnableLinkedConnections"=dword:00000001

Планировщик заданий по-прежнему не может получить доступ к подключенным дискам?

Если вашим запланированным задачам все еще не удается получить доступ к подключенным сетевым дискам, несмотря на включение EnableLinkedConnections настройки реестра, тогда вам нужно проверить две вещи:

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

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

User Account Control: Behaviour of the elevation prompt for administrators in Admin Approval Mode

UAC запрашивает пароль, даже если вы вошли в систему как администратор

Использование редактора политики безопасности (secpol.msc) или редактор реестра, вам нужно установить вышеуказанную политику на Запрашивать контент (это настройка Windows по умолчанию)

UAC запрашивает пароль, даже если вы вошли в систему как администратор

Полные инструкции Для настройки вышеуказанной политики безопасности (наряду с альтернативным решением на основе реестра) доступны в статье UAC запрашивает пароль, даже если вошел в систему как администратор.

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

Важный: Тем не менее, когда вы запускаете задачу под другой учетная запись пользователя или под SYSTEM (LocalSystem), подключенные диски не будут видны, несмотря на EnableLinkedConnections значение реестра. Это потому, что сопоставления сетевых дисков для каждого пользователя. Это означает, что вам необходимо снова подключить диск под той конкретной учетной записью пользователя, которая настроена для запуска запланированной задачи.

Сведения в этой статье относятся к Windows Vista через Windows 10. Последние решения были протестированы в Windows 10 v1903.

Ссылка на основную публикацию