Подключенные диски не видны из командной строки с повышенными привилегиями в Vista - Winhelponline

Mapped Drives Are Not Seen From Elevated Command Prompt Vista Winhelponline

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



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



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



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

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



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

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

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

KB937624 утверждает:

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

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

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

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

KB3035277 заявляет:

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

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

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

И вот полезная заметка от Джеймса Финнигана [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 версии 5.00 [HKEY_LOCAL_MACHINE  SOFTWARE  Microsoft  Windows  CurrentVersion  Policies  System] 'EnableLinkedConnections' = dword: 00000001

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

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

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

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

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

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

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

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

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

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

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

Информация в этой статье относится к Windows Vista - Windows 10. Последний раз решения тестировались в Windows 10 v1903.


Одна небольшая просьба: если вам понравился этот пост, поделитесь им?

Одна «крошечная» публикация от вас серьезно помогла бы росту этого блога. Несколько отличных предложений:
  • Приколи это!
  • Поделитесь этим в своем любимом блоге + Facebook, Reddit
  • Напишите об этом в Твиттере!
Так что большое спасибо за вашу поддержку, мой читатель. Это займет не более 10 секунд вашего времени. Кнопки «Поделиться» находятся прямо внизу. :)