Сайт о телевидении

Сайт о телевидении

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

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

Некоторым приложениям для работы в Windows требуются повышенные права, и запускать их необходимо от имени администратора. При этом выводится запрос "Контроля учетных записей пользователя " (User Account Control или UAC ), в котором система просит Вашего согласия на запуск приложения.

Многие пользователи неправильно полагают, что "Контроль учетных записей пользователя" лишь мешает, и отключают его. При этом серьёзно страдает безопасность компьютера, т.к. согласия пользователя на запуск приложений больше не требуется, и любая вредоносная программа может беспрепятственно запускаться и работать. Наличие антивируса также не может на 100% гарантировать безопасность компьютера.

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

Для запуска приложения от имени администратора можно воспользоваться несколькими способами:

В качестве примера будем запускать командную строку (cmd) от имени администратора.

Способ №1 (обычный) - запуск через правую клавишу мыши (запрос UAC отображается)

Нажмите правой клавишей мыши по значку нужного приложения и выберите пункт "Запуск от имени администратора ":

Способ №2 - запуск с использованием "Ctrl+Shift+Enter " (запрос UAC отображается)

Нажмите Пуск , в строке поиска наберите нужную команду и нажмите Ctrl+Shift+Enter .

Способ №3 - устанавливаем запуск от имени администратора в свойствах ярлыка (запрос UAC отображается)

Щелкните правой клавишей мыши по нужному ярлыку и выберите пункт "Свойства ".

Перейдите на вкладку "Ярлык ", нажмите "Дополнительно ", установите флажок "Запускать от имени администратора ":

Или перейдите на вкладку "Совместимость " и установите флажок "Выполнять эту программу от имени администратора ":

Способ №4 - упрощаем запуск для избранных приложений при помощи планировщика заданий (запрос UAC не отображается)

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

Переходим к самому интересному способу. Если есть приложение, которое Вы постоянно запускаете, и оно получено от надёжного производителя ПО, например, это приложение Windows - можно упростить запуск. Создание ярлыка для нужной программы не занимает более 2-х минут и это позволит избавиться от лишних действий в дальнейшем. Запускаем планировщик заданий (Пуск ---> Все программы ---> Стандартные ---> Служебные ---> Планировщик заданий ) и нажимаем "Создать задачу ":

Указываем Имя для новой задачи и ставим флажок "Выполнять с наивысшими правами ":

Переходим на вкладку Действия , нажимаем "Создать ", в следующем окне нажимаем "Обзор ":

Указываем путь к нужному приложению и нажимаем "Открыть ":


Увеличить рисунок

Нажимаем "ОК ":

Закрываем планировщик и переходим к созданию ярлыка.

Чтобы создать ярлык на рабочем столе, щёлкаем правой клавишей мыши, выбираем "Создать " ---> "Ярлык ":

В поле Расположение объекта вводим:

Schtasks /run /tn cmd_admin

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

Задаём название ярлыка:


Увеличить рисунок

Ярлык создан и готов к использованию.

Чтобы сменить значок - нажмите правой клавишей мыши по ярлыку, выберите "Свойства ":

Перейдите на вкладку "Ярлык "и нажмите "Сменить значок ":

"Обзор ..."

Указываем путь к программе:


Увеличить рисунок

Выбираем нужный значок и закрываем оба окна кнопкой "ОК ":

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

Утилита для автоматизации "Способа №4"

В случае, если требуется создать ярлыки для большого количества программ, удобно воспользоваться утилитой Elevated Shortcut .

Работа с утилитой сводится к двум простым шагам:

  • Установка
  • Перетаскивание исполняемого файла (*.exe, *.bat, *.cmd) на ярлык утилиты:

Автоперевод фокуса на запущенную программу

Специфика запуска приложений из планировщика состоит в том, что фокус на окно не переводится и, например чтобы набрать команду в командной строке приходится дополнительно щёлкать по окну. Такое поведение может помочь в автоматизации рутинных операций по расписанию, но для "Способа №4" это не всегда удобно.

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

Добавляем при создании задачи:

Использование команды start

Программа или сценарий:

Аргументы:

/c start /d "путь_к_программе" имя_файла.exe

/c start /d "C:\Windows\System32\" cmd.exe

Использование утилиты NirCmd

Программа или сценарий:

Путь_к_nircmd\nircmd.exe

Аргументы:

Exec show "путь_к_программе\имя_файла.exe"

Exec show "C:\Windows\System32\cmd.exe"

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

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

При создании задачи в планировщике, в окне "Создание действия " укажите:

в поле "Программа или сценарий ":

Rundll32

в поле "Добавить аргументы ":

Shell32.dll,#61

Скачиваем утилиту, распаковываем. Запускаем командную строку, вводим нужную команду, синтаксис совсем нехитрый:

<путь к утилите> <путь к нужному приложению>

Выведется запрос UAC и приложение запустится от имени администратора.

Примечание: В контекстном меню Windows 7 есть очень удобная функция копирования пути файла: зажмите Shift , щёлкните правой клавишей мыши по файлу, выберите пункт "Копировать как путь ".

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

Важно! Этот способ небезопасен, так как позволяе пользователю с ограниченными правами запускать код с полными правами. Хитрый пользователь или вредоносное ПО могут этим воспользоваться и скомпрометировать систему.

Рассмотрим ещё одну интересную задачу: Ваша учётная запись Windows входит в группу администраторов, есть ещё одна или несколько учётных записей, входящих в группу пользователей. Пользователю необходимо запускать программу, требующую повышения прав. Обычно это выглядит так: пользователь нажимает правой клавишей мыши по файлу и выбирает "Запуск от имени Администратора", при этом выводится запрос на ввод пароля администратора:

Разумеется, раздать пользователям пароль администратора - не самая хорошая идея. Чтобы это "обойти" будем использовать утилиту AdmiLink Алексея Курякина. С её помощью администратор может создать для пользователя ярлык на запуск необходимой программы, при этом ввод пароля администратора требуется всего 1 раз - при создании ярлыка. Во время запуска программы пользователем пароль будет передаваться в зашифрованном виде.


Этот способ будет работать, если запуск программы возможен только от имени администратора и разработчик не забыл указать это условие в манифесте . Однако ещё остаётся большое количество старых программ или программ, запуск которых возможен как в обычном режиме, так и от имени администратора (при этом будет доступен разный набор функций). При попытке запуска такой программы с помощью AdmiLink - она запускается в обычном режиме (без административных привилегий). А если попытаться проставить флажок "Способом №3 . Оригинальный стиль автора сохранен.

Для работы некоторых программ и для запуска определенных команд требуются права администратора. Windows 7 и Windows 8 предлагают несколько способов, которые вы можете использовать для этого. Я нашел 5 способов, а если вы знаете другие, поделитесь ими с нами в комментариях ниже.

Как запускать программы от имени администратора с начального экрана в Windows 8

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

В числе опций контекстного меню кнопка с названием «Запуск от имени администратора». Нажмите на эту кнопку и выбранная программа будет запущена. Если вы попытаетесь запустить приложение из-под учетной записи без прав администратора, вам будет предложено ввести пароль администратора. Если вы не укажите пароль, программа не будет запущена.

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

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

Если в находитесь на рабочем столе или в проводнике (в Windows 8 или 7), существует еще один способ запустить любую программу с правами администратора.

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

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

Что делать, если нужно, чтобы программа всегда запускалась от имени администратора? Выход есть.

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

В окне «Свойства» перейдите на вкладку «Совместимость». В нижней части активируйте опцию «Выполнять эту программу от имени администратора» и нажмите на кнопку OK.

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

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

В окне свойств ярлыка, на вкладке «Ярлык», нажмите на кнопку «Дополнительно».

Активируйте опцию «Запуск от имени администратора» и нажмите на кнопку OK. Затем еще раз нажмите на кнопку OK в окне «Свойства».

Заключение

Отличного Вам дня!

Очень часто ваш компьютер или ноутбук спрашивает вас «хотели бы вы внести изменения в операционной системе windows» при установке каких либо игр или программ. Что мы делаем — ну конечно соглашаемся, мы же умышленно что-то устанавливаем. Бывает, что для настройки системы и какого-либо программного обеспечения вам нужны права администратора. Так кто же такой этот мать его — администратор, как запустить с правами администратора, как настроить (включить или выключить) эти права, где и для чего администраторские права нам понадобятся. Собственно об этом и статья.

Кто такой этот администратор?

В операционных системах windows по умолчанию создаются 2 пользователя: ваш, который вы выбираете при установке системы, второй — тот самый Администратор. Своего рода права администратора являются специальной защитой Windows XP, 7, Vista, 8, 8.1 от нежелательных изменений настроек, которые может внести неопытный пользователь. Эти изменения могут привести к сбоям Windows или нестабильной работе системы. В последних версиях windows, при попытке внести какие либо изменения, операционная спрашивает вас о необходимости этих изменений, например:

Как видим на рисунке выше эти администраторские права называются еще «контроль учетных записей» Windows.

Как запустить приложение, программу от имени администратора?

Рассмотрим 3 способа запуска приложений с правами администратора:

1. Выделить нужное приложение или ярлык и нажать ctrl+enter;
2. Нажать правой клавишей мыши на программе или ярлыке и в контекстном меню выбрать «запуск от имени администратора», при необходимости ввести логин и пароль;

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

Как отключить права администратора, контроль учетных записей, UAC?

Пуск > Панель управления > Учетные записи пользователей > Изменения параметров контроля учетных записей > Опускаем флажок в самый низ и применяем настройки.

Может потребоваться перезагрузка компьютера.

Где и в каких случаях права администратора нам понадобятся?

Самый частый пример это «запуск командной строки с правами администратора». Как это сделать? Да легко. В Windows XP Пуск > Командная строка (cmd). В Windows Vista, 7, 8, 8.1 Пуск > В строке поиска пишем CMD и нажимаем ctrl+enter.

Случаев необходимости внесения каких либо важных изменений в настройке Windows много и их рекомендуется делать опытным пользователям (глубокая настройка системы под себя). Сейчас очень много интернет ресурсов публикуют различные инструкции по решению определенных проблем таких как: не запускается какая-то игра или программа, удаление ошибок системы, не работает интернет или другие функции. Практически в каждом руководстве на каком либо этапе, вам необходимо запустить программу от имени администратора , а благодаря этой статейке вы уже подкованы в этом вопросе. Делимся с друзьями. Удачи!

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

Зачем обычному приложению могут понадобится права администратора

Права администратора могут потребоваться программе для модификации неких файлов (логи, конфигурации и т.д.) в собственной папке в C:\Program Files (x86)\SomeApp). По умолчанию у пользователей нет прав на редактирование данного каталога, соответственно, для нормальной работы такой программы нужны права администратора. Чтобы решить эту проблему, нужно под администратором на уровне NTFS вручную назначить на папку с программой право на изменение/запись для пользователя (или группы Users).

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

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

Ранее мы уже описывали, как можно , с помощью параметра RunAsInvoker. Однако этот метод недостаточно гибкий. Также можно воспользоваться с сохранением пароля админа /SAVECRED (также небезопасно). Рассмотрим более простой способ принудительного запуска любой программы без прав администратора (и без ввода пароля админа) при включенном UAC (4,3 или 2 уровень ).

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

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

cmd /min /C "set __COMPAT_LAYER=RUNASINVOKER && start "" %1"

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

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

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

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

run-app-as-non-admin.bat

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

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

Windows Registry Editor Version 5.00


@="cmd /min /C \"set __COMPAT_LAYER=RUNASINVOKER && start \"\" \"%1\"\""

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

Переменная окружения __COMPAT_LAYER и параметр RunAsInvoker

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

set __COMPAT_LAYER=Win7RTM 640x480

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

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

Т.е. параметр RunAsInvoker не предоставляет права администратора, а только блокирует появления окна UAC.

Барак Адама 23 сентября 2011 в 18:54

Запуск приложения с правами администратора и без выдачи сообщения при включенном UAC (Windows 7)

Навеяно статьей Настройка UAC в Windows 7 . Я прочитал комментарии и мне захотелось описать здесь возможность запуска доверенного приложения с правами администратора при включенном UAC. Данная технология действительно хороший шаг компании Майкрософт к безопасности использования компьютера пользователем, однако пользователь может часто использовать неподписанные приложения которым сам доверяет, что приводит к постоянным выдачам сообщения системы UAC и дальнейшему раздражению пользователя. Как запускать приложения с правами администратора и без выдачи сообщения от UAC я рассмотрю на примере использования FAR Manager, который мне необходим по работе.
Итак, для начала необходимо зайти в планировщик заданий
«Пуск - Все программы - Стандартные - Служебные - Планировщик заданий» (Start - All Programs - Accessories - System Tools - Task Scheduler)
и «Создать задачу» (Create task). В появившемся окне задаем «Имя» (Name), (к примеру, FAR) задачи и устанавливаем флажок на опции «Выполнять с наивысшими правами» (Run with highest privileges).
Далее переходим на вкладку «Действия» (Actions) и жмем кнопку «Создать» (New) для настройки запускаемой программы.
В поле «Программа или сценарий» (Program/script) с помощью кнопки «Обзор» (Browse) указываем местоположение необходимого нам запускаемого файла и нажимаем кнопку «Открыть» (Open). Далее нажимаем два раза кнопки ОК.

Таким образом, у нас появилось задание с высокими привелегиями на запуск от имени администратора. Теперь необходимо создать ярлык для запуска этого задания.

Создаем ярлык на рабочем столе и в поле «Расположение объекта» (Target) вводим schtasks /run /tn FAR (если же имя задачи было из нескольких слов разделенных пробелами, необходимо имя задачи в ярлыке указать в «двойных кавычках»). Жмем «Далее» (Next), задаемя имя ярлыка (лучше всего чтобы оно совпадало с названием программы) и жмем кнопку ОК. Далее можно зайти в свойства этого ярлыка и назначить ему иконку от программы. Минус данного метода состоит в том, что таким образом можно запустить всего одну копию программы. Чтобы сделать две копии, необходимо будет прописать еще одно задание в планировщике с другим именем, но по той же системе и так же сделать на него ярлык.

Теги: Windows 7, UAC, Task scheduler, запуск приложений