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

При попытке доступа к подключенному сетевому диску из командной строки с повышенными правами или командной строки администратора или планировщика задач (с наивысшими привилегиями) сопоставленный диск будет недоступен. Попытка использовать подключенные сетевые диски приводит к ошибке . Системе не удается найти указанный путь (код ошибки: 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 и установите его данные EnableLinkedConnections 1 .

  5. Выйдите из редактора реестра и перезапустите Windows.

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

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

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

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

 Редактор реестра Windows, версия 5.00 [HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System] "EnableLinkedConnections" = dword: 00000001 

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

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

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

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

 Контроль учетных записей: поведение запроса на повышение прав для администраторов в режиме одобрения администратором 

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

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

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

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

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

ПОХОЖИЕ СТАТЬИ