Перейти к содержимому

Программа требует права администратора для запуска как убрать

  • автор:

Запуск программы без прав администратора и подавлением запроса UAC

date

24.03.2023

user

itpro

directory

Windows 10, Windows 11, Windows Server 2016, Windows Server 2019

comments

комментариев 59

Некоторые программы при запуске могут требовать повышения прав до администратора (значок щита у иконки), однако на самом деле для их нормальной работы права администратора не требуется (например, вы можете вручную предоставить необходимые NTFS разрешения пользователям на каталог программы в Program Files и ее ветки реестра). Если на компьютере включен контроль учетных записей (User Account Control), то при запуске такой программы из-под непривилегированного пользователя появится запрос UAC и Windows потребует от пользователя ввести пароль администратора. Чтобы обойти этот механизм многие просто отключают UAC или предоставляют пользователю права администратора на компьютере, добавляя его в группу локальных администраторов. Оба эти способа не рекомендуется широкого использовать, т.к. вы снижаете безопасность и защиту Windows. В этой статье мы рассмотрим, как запустить программу, которая требует права администратора, от имени простого пользователя и подавить запрос повышения привилегий UAC.

Предоставить пользователю права на запуск программы

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

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

В первом случае для решения проблемы администратору достаточно предоставить RW или Full Control разрешения на каталог программы или необходимый системных каталог. Например, программа хранит свои файлы (логи, файлы конфигурации и т.д.) в собственной папке в C:\Program Files (x86)\SomeApp) или каком-то системном каталоге. Для корректной работы программы пользователю нужны права записи в эти файлы. По умолчанию у пользователей нет прав на редактирование данного каталога, соответственно, для нормальной работы такой программы нужны права администратора.

Чтобы разрешить запуск программы под непривилегированным пользователем администратора достаточно вручную предоставить пользователю (или встроенной группе Users) права на изменение/запись на файл/каталог на уровне файловой системы NTFS.

права на запись пользователю в папку программы в ProgramFiles

Чтобы найти список файлов, папок и ключей реестра, к которым обращается программа, воспользуйтесь утилитой Process Monitor (https://learn.microsoft.com/en-us/sysinternals/downloads/procmon). Включите фильтр по имени процесса программы и найдите все ресурсы, при доступе к которым появляется Access Denied. Предоставьте необходимые права на папки/файлы/ветки реестра.

procmon исследование доступа к файлами и ветка реестра программой при запуске

Примечание. В рекомендациях Microsoft для разработчиков указано, что не рекомендуется хранить изменяющиеся данных приложения в каталоге C:\Program Files неверна. Правильнее хранить данные приложения в профиле пользователя. Но это уже вопрос о лени и некомпетентности разработчиков программ.

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

Ранее мы уже описывали, как можно с помощью параметра RunAsInvoker отключить запрос UAC для конкретной программы. Однако этот метод недостаточно гибкий.

Рассмотрим более простой способ принудительного запуска любой программы без прав администратора (и без ввода пароля админа) при включенном UAC (4,3 или 2 уровень ползунка UAC).

Для примера возьмем утилиту редактирования реестра — regedit.exe (она находится в каталоге C:\windows\). Обратите внимание на щит UAC у иконки. Данный значок означает, что для запуска этой программы будет запрошено повышение привилегий через UAC.

иконка щита UAC у exe файла в Windows 10

Если запустить regedit.exe , то перед вами появится окно User Account Contol с запросом пароля пользователя с правами администратора на этом компьютере ( Do you want to allow this app to make changes to your device? ). Если не указать пароль и не подтвердить повышение привилегии, приложение не запустится.

запрос пароля администратора при запуске программы в windows 10

Попробуем обойти запрос UAC для этой программы. Создайте на рабочем столе файл run-as-non-admin.bat со следующим текстом:

cmd /min /C «set __COMPAT_LAYER=RUNASINVOKER && start «» %1″

Теперь для принудительного запуска приложения без прав администратора и подавлением запроса UAC, просто перетащите нужный exe файл на этот bat файл на рабочем столе.

запуск программы в обход UAC и с подавлением запроса пароля администратора

Редактор реестра должен запуститься без появления запроса UAC и без ввода пароля администратора. Откройте диспетчер процессов, добавьте столбец Elevated и убедитесь, что в Windows запушен непривилегированный процесс regedit (запущен с правами пользователя).

regedit с правами пользовтеля (Elevated = No)

Попробуйте отредактировать любой параметр в ветке HKEY_LOCAL_MACHINE. Как вы видите доступ на редактирование реестра в этой ветке запрещен (у данного пользователя нет прав на запись в системные ветки реестра). Но вы можете добавлять и редактировать ключи в собственной ветке реестра пользователя — HKEY_CURRENT_USER.

запуск редактора реестра под пользователем

Аналогичным образом через bat файл можно запускать и конкретное приложение, достаточно указать путь к исполняемому файлу.

run-app-as-non-admin.bat

Set ApplicationPath=»C:\Program Files\MyApp\testapp.exe»
cmd /min /C «set __COMPAT_LAYER=RUNASINVOKER && start «» %ApplicationPath%»

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

Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\shell\forcerunasinvoker] @="Run as user without UAC elevation" [HKEY_CLASSES_ROOT\*\shell\forcerunasinvoker\command] @="cmd /min /C \"set __COMPAT_LAYER=RUNASINVOKER && start \"\" \"%1\"\""

добавть в file explorer windows 10 пункт запуска программы без запроса UAC

Можно распространить этот пункт меню на компьютеры в домене через импорт ветки реестра с помощью групповых политики.

После этого для запуска любого приложения без прав админа достаточно выбрать пункт “Run as user without UAC elevation” в контекстном меню проводника Windows File Explorer.

Run as user without UAC elevation

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

Запуск программы в режиме RunAsInvoker из командной строки

Переменная окружения __COMPAT_LAYER позволяет устанавливать различные уровни совместимости для приложений (вкладка Совместимость в свойствах exe файла). С помощью этой переменной можно указать настройки совместимости, с которыми нужно запускать программу. Например, для запуска приложения в режиме совместимости с Windows 7 и разрешением 640×480, установите:

set __COMPAT_LAYER=Win7RTM 640×480

свойства совместимости программы

Из интересных нам опций переменной __COMPAT_LAYER можно выделить следующие параметры:

  • RunAsInvoker — запуск приложения с привилегиями родительского процесса без запроса UAC;
  • RunAsHighest — запуск приложения с максимальными правами, доступными пользователю (запрос UAC появляется, если у пользователя есть права администратора);
  • RunAsAdmin — запустить приложение с правами администратора (запрос AUC появляется всегда).

Следующие команды включат режим RUNASINVOKER для текущего процесса и запускает указанную программу:

start «» «C:\Program Files\MyApp\testapp.exe»

Включить режим RunAsInvoker в манифесте exe файла программы

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

Вы можете отредактировать манифест исполняемого exe файла программы и отключить требование запускать программу в привилегированном режиме.

Для редактирования манифеста программы можно использовать бесплатную утилиту Resource Hacker. Откройте исполняемый файл программы в Resource Hacker.

В этом примере я буду править манифест утилиты Sysinternals Autologon.exe, которую можно использовать для автоматического входа в Windows без пароля.

В дереве слева перейдите в раздел Manifest и откройте манифест программы. Обратите внимание на строки:

Именно благодаря опции requireAdministrator Windows всегда запускает эту программу с правами администратора.

Измените requireAdministrator на asInvoker и сохраните изменения в exe файле.

resource hacker включитьпараметр asinvoker в manifest exe файла

Обратите внимание, что теперь у иконки программы пропал щит UAC и вы можете запустить ее без запроса прав администратора с привилегиями текущего пользователя.

убрат щит защиты uac у любой программы в windows 10 с помощью манифест файла

Если исполняемый файл программы подписан цифровой подпись (сертификатом Code Signing), то после модификации exe файла, он может перестать запускаться или выдавать предупреждение.

В этом случае можно заставить программу использовать внешний файл манифеста. Создайте в каталоге с ехе файлом текстовый файл app.exe.manifest (например Autologon.exe.manifest) и скопируйте в него код манифеста из Resource Hacker. Измените requireAdministrator на asInvoker. Сохраните файл.

Чтобы Windows при запуске приложений всегда пробовала использовать внешний файл манифеста, включите специальный параметр реестра:

REG ADD «HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide» /v PreferExternalManifest /t REG_DWORD /d 1 /f

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

Запуск программы с сохраненным паролем администратора

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

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

runas /user:wks-1122h2\root /savecred «C:\CorpApp\myapp.exe»

ярлык для запуска от администратора с помощью опции savecred

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

сохранить пароль администратора для запуска программы

Утилита RunAs при запуске с параметром /SAVECRED сохраняет имя пользователя и пароль в диспетчере паролей Windows (Credentials Manager).

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

Вы можете вывести список пользователей с сохраненными паролями в Credential Manager с помощью команды:

сохраненные пароли администратора в credential manager

В Windows 11 при запуске такого ярлыка появляется ошибка:

RUNAS ERROR: Unable to run - C:\CorpApp\myapp.exe 740: The requested operation requires elevation.

ошибка runas 740: The requested operation requires elevation

Чтобы исправить ошибку, отредактируйте команду в свойствах ярлыка. Замените ее на:

C:\Windows\System32\runas /profile /user:WKS-1122H2\root /savecred «cmd.exe /C C:\CorpApp\myapp.exe»

ярлык для запуска программы от администратора для windows 11

Как мы указывали выше, использование параметра /savecred не безопасно, т.к. пользователь, в чьем профиле сохранен чужой пароль может использовать его для запуска любой программы или команды под данными привилегиями, или даже сменить пароль пользователя с правами администратора. Кроме того, сохраненные пароли из Credential Manager можно получить в открытом виде с помощью утилит типа Mimikatz, лучше

В Windows можно заблокировать возможность сохранения паролей в Credential Manager с помощью параметра групповой политики Network access: Do not allow storage of passwords and credentials for network authentication (Computer Configuration -> Windows Settings -> Security Settings -> Local Policies -> Security Options).

Преодолеть недостаток использования сохраненного пароля через runas позволяют несколько сторонних утилит. Например, AdmiLink, RunAsRob, RunAsSpc. Эти программы позволяют сохранить пароль администратора в зашифрованном виде и безопасно запустить программу с правами администратора. Эти утилиты проверяют при запуске путь и контрольную сумму исполняемого файла и не позволят запустить произвольную программу.

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Программа требует права администратора для запуска — что это значит?

Иногда при запуске программ или при попытке воспользоваться какой-либо ее функцией на экране отображается ошибка о необходимости предоставления ей (программе) прав администратора. Обычно это означает, что запускаемое приложение или ее отдельная функция пытается:

  • Считать значения или внести изменения в критические настройки/параметры операционной системы, например — добавление/удаление записей в реестре или создание новых задач в «Планировщике заданий»;
  • Получить доступ к каким-либо данным на диске, доступ к которым запрещен для учетных записей, не имеющих статус администраторских.
  • Принудительно завершить работу какого-либо запущенного процесса, остановить или внести изменения в параметры запуска системной службы.
  • Запустить системное приложение или службу, для запуска/работы которых также требуются права администратора.

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

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

Рассмотрим все на примере Windows 11.

Запуск программ от имени администратора

Здесь все очень просто:

  1. Кликните по запускаемой программе или ее ярлыку на рабочем столе правой кнопкой мыши, затем выберите в контекстном меню пункт «Показать дополнительные параметры»:

Показать дополнительные параметры

  1. Откроется расширенное контекстное меню — выберите в нем пункт «Запуск от имени администратора»:

Запуск от имени администратора

Чтобы постоянно не проделывать вышеописанные действия, можно указать системе всегда запускать программу от имени администратора. Для этого:

  1. Откройте окно свойств запускаемой программы, выбрав в контекстном меню пункт «Свойства» либо нажав комбинацию клавиш «Alt + Enter» после выделения значка/ярлыка приложения мышкой.
  2. В окне свойств откройте вкладку «Совместимость», затем установите галочку напротив элемента «Запускать программу от имени администратора» и нажмите «ОК»:

Всегда запускать программу от имени администратора

Запуск программы от имени другого пользователя

Как отмечалось выше, данный способ сработает в случае, если известно имя и пароль от учетной записи администратора компьютера. Действия следующие:

  1. Нажмите и удерживайте клавишу «Shift», а затем выполните первый шаг из предыдущей инструкции.
  2. В отобразившемся контекстном меню должен появиться дополнительный пункт — «Запуск от имени другого пользователя» — выберите его:

Запуск программы от имени другого пользователя

  1. Откроется новое окно, в которое нужно вписать имя учетной записи администратора и пароль от нее, затем нажать кнопку «ОК»:

Как убрать запуск от имени администратора Windows 10

Несмотря на административные права учетной записи, часто Windows 10 требует прав администратора при запуске программ. Это неудобно, так как откладывает запуск приложений и, как следствие, замедляет работу. Поэтому вопрос о том, как убрать запуск от имени администратора Windows 10, является актуальным для многих пользователей операционной системы. Нужно обратить внимание, что несмотря на то, что сообщение о запуске ПО от администратора высвечиваться не будет, соответствующие права должна иметь учетная запись, в которой запускается приложение. Это условие обязательное при настройках запуска ПО от администратора.

Способы запуска программ

  • через меню Пуск;
  • с помощью ярлыка на рабочем столе;
  • через элемент Администрирование в Панели управления.

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

Как убрать запуск от имени администратора Windows 10 через меню Пуск

Речь идет именно о сообщении на запрос прав администратора. Это наиболее простой и быстрый способ присвоения административных прав программе при запуске. Чтобы выполнить эту операцию через меню Пуск, нужно:

  1. открыть меню Пуск клавишей Win на клавиатуре или кнопкой, расположенной в левом, нижем углу экрана (базовые настройки Windows 10);
  2. на клавиатуре набрать название программы;
  3. на значке найденного соответствия нужно нажать правой клавишей мыши;
  4. в контекстном меню выбрать Дополнительно-Запуск от имени Администратора.

В этом случае программа запустится от имени администратора, если для такой режим запуска предусмотрен. Этот способ актуален для приложений, находящихся на начальном экране.

Как убрать запуск от имени администратора Windows 10 через ярлык на рабочем столе

Ярлыки различных приложений помещаются на рабочий стол для удобного и быстрого запуска. Через эти элементы можно управлять запуском приложения и показом запроса административных прав. Чтобы запускать программы с соответствующими правами или отключить эту функцию, нужно выполнить несколько действий:

  1. зайти в Свойства ярлыка (правой клавишей мыши по ярлыку-Свойство);
  2. открыть вкладку Ярлык-Дополнительно;
  3. в нижней части окна поставить галочку на флажке Выполнять эту программу от имени Администратора;
  4. Нажать Применить или ОК.

В этом случае запуск выбранного ПО всегда будет происходит с административными правами.

Как убрать запуск от имени администратора Windows 10 через элемент Администрирование в Панели управления

Часто пользователей не устраивает сам факт показа сообщений о требованиях административных прав. Особенно это касается офисных работников, для которых время – деньги.

Убрать это сообщение можно с помощью элемента Администрирование, расположенного в панели управления Windows 10 и других версий операционной системы. Суть принципа заключается в том, что в ОС есть так называемый супер администратор с привилегированными правами. Она отключена по умолчанию в угоду безопасности. Для включения учетной записи супер администратора выполняют следующие действия:

  1. зайти в панель управления, где в правом верхнем углу переключить Просмотр на Крупные или Мелкие значки (если включен просмотр Категории);
  2. перейти по ветке Администрирование-Управление компьютером;
  3. в открывшемся окне в списке слева выбрать Локальные пользователи и группы;
  4. зайти в Пользователи, где в списке найти Администратор;
  5. на пункте Администратор кликнуть правой кнопкой мыши и зайти в Свойства;
  6. в открывшемся диалоговом окне снять галочку на пункте Отключить учетную запись.

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

Контроль учетных записей также можно отключить. В этом случае сообщения о запуске ПО с административными правами не будет запускаться и мешать пользователю. Для этого в командной строке нужно прописать команду useraccountcontrolsettings. Откроется окно контроля учетных записей. В его левой части расположен бегунок, который нужно переключить в самую нижнюю позицию. Это отключить уведомление системы при попытках внесения изменений или установке ПО. Однако в таком случае страдает безопасность ОС Windows 10, что пользователь обязательно должен понимать.

Как установить программу без прав Администратора в Windows

Как установить программу без прав администратора

Если какая-то программа или игра требует прав администратора для установки на компьютер, а их у вас нет, иногда всё-таки можно решить проблему и выполнить установку. Есть нюансы, но не всегда критичные.

В этой инструкции подробно о способе выполнить установку программы не имея прав Администратора в Windows 11, Windows 10 и других версиях системы.

Установка программы без прав и ввода пароля учетной записи Администратора

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

Запрос контроля учетных записей для установки программы

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

  1. Запустите командную строку, для этого в поиске на панели задач начните набирать «Командная строка» и выберите нужный результат, либо нажмите клавиши Win+R на клавиатуре, введите cmd и нажмите Enter.
  2. В командной строке введите команду
set __COMPAT_LAYER=RunAsInvoker

и нажмите Enter.

  • Введите путь к файлу установщика и нажмите Enter (либо просто перетащите файл на окно командной строки, чтобы вставить полный путь к нему). Запуск установки программы без прав администратора
  • Если всё прошло гладко, установка программы должна запуститься, и её можно продолжить, с учётом описанных далее нюансов. Процесс установки без прав администратора
  • А теперь о важных особенностях такой установки: команда, введённая на втором шаге, не даёт нам прав администратора в системе, а лишь убирает запрос контроля учетных записей.

    • Главное последствие этого при установке программ описанным способом— невозможность устанавливать их в защищенные системные папки. В последних версиях Windows это, в том числе, папка Program Files, то есть придется создавать свою папку для устанавливаемых программ в расположении, где это разрешено.
    • Также установщик не сможет прописать параметры в реестр «для всех пользователей», что для некоторых программ может привести к их неправильной работе, для некоторых других, как для архиватора из примера выше — невозможности прописать ассоциации файлов и добавить пункты в контекстные меню папок и файлов (хотя сама программа исправно работает).
    • Удалить установленные показанным способом программы, не имея прав администратора не получится через «Программы и компоненты». Для удаления потребуется тем же методом запускать файл удаления (uninstall) из папки программы.
    set __COMPAT_LAYER=RunAsInvoker && start "" %1

    и в дальнейшем запускать такие установщики и программы простым перетаскиванием установщика на созданный файл .bat.

    Скрипт для установки без прав администратора

    Как и в предыдущем способе, работоспособность не гарантирована: в случае, если для каких-то процедур программе требуются «настоящие» права администратора, выполнить их она не сможет.

    А вдруг и это будет интересно:

    • Лучшие бесплатные программы для Windows
    • Как отключить или удалить Связь с телефоном в Windows 11 и 10
    • Ошибка 0xc000001d при запуске игры или программы — как исправить?
    • Ключ восстановления BitLocker в Windows — способы посмотреть
    • User OOBE Broker — что это за процесс в Windows 11 и 10
    • Ошибка 0x803F8001 в Microsoft Store, играх и приложениях — как исправить?
    • Windows 11
    • Windows 10
    • Android
    • Загрузочная флешка
    • Лечение вирусов
    • Восстановление данных
    • Установка с флешки
    • Настройка роутера
    • Всё про Windows
    • В контакте
    • Одноклассники

      Данил 05.02.2023 в 11:47

    • Dmitry 06.02.2023 в 15:15
    • Dmitry 27.03.2023 в 08:20

    Здравствуйте.
    OBS можно скачать в виде архива, не требующего установки

    https://github.com/obsproject/obs-studio/releases
    • Назик 16.08.2023 в 05:56
    • Dmitry 01.04.2023 в 09:19

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *