• Запустить приложение без прав администратора. Права администратора — что это? кто это? как запустить с этими правами

    25.04.2023
    Барак Адама 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, запуск приложений

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

    Использование Portable-версий программ

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

    Приложения копируются на флешку или другой носитель, после чего их можно запускать на любом компьютере с правами обычного пользователя. Установки они не требуют. Пользователи, для которых компьютерная грамотность является не просто пустым звуком, знают об этой возможности. Если кому-то нужно воспользоваться популярной программой, нужно просто ввести в поисковике ее название с припиской Portable. Google и «Яндекс» выдадут большое количество страниц, где можно будет загрузить соответствующую портативную версию приложения.

    Ограничения в использовании портативного софта

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

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

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

    Способ предполагает использование специальной утилиты. Название программы - Offline NT Password and Registry Editor. Она позволяет работать с системами Windows версий XP/7/ 8/10, а также Vista. Утилита может быть загружена с флешки, диска CD или DVD. Она способна помочь всем тем, кто ищет ответ на вопрос, как устанавливать программы без прав администратора. В ней не предусмотрен графический интерфейс, однако пугаться данного факта не нужно.

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

    Чтобы использовать Offline NT PRE, нужно создать мультизагрузочную флешку, загрузив предварительно образ утилиты. Подробные инструкции по этому вопросу в изобилии представлены в Интернете. Искать следует по ключу «создание мультизагрузочной флешки». Теперь стоит подробнее остановиться на работе с самим приложением.

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

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

    1. В BIOS или UEFI (в новых системных платах) компьютера устанавливается загрузка с флеш-накопителя (нужное устройства также можно выбрать, вызвав специальное меню клавишей F12).
    2. Далее пользователю нужно загрузиться со съемного накопителя. Обычно при этом никакие дополнительные опции использовать не нужно.
    3. После того как выполнен запуск программы, выбирается номер раздела, в который инсталлирована Windows. Здесь нужно ориентироваться по размеру. Если на данном этапе пользователь укажет что-либо неверно, ничего страшного не произойдет. При необходимости процедуру можно повторить с чистого листа.
    4. Далее программа просит задать путь к папке, в которой записаны файлы SAM. Вариантом по умолчанию является: «X:/Windows/System32/config » . Данный путь сразу предлагает программа. Если нужно, его можно изменить.
    5. Выбирается пункт №1, помеченный как Password Reset (сброс пароля).
    6. Затем следует нажать на категорию «Edit user data and password». Она также проходит под номером один.
    7. Далее вписывается пользовательское имя либо идентификатор (RID). Его содержит первый столбец. RID нужен, когда пользовательское имя имеет некорректное отображение, либо не удается его задать (к примеру, если оно состоит из символов кириллицы).
    8. Еще один шаг для тех, кто пытается разобраться, как устанавливать программы без прав администратора в системе Windows, - выбирается пункт 1 (сбросить пароль) либо 2 (поменять пароль) для указанного администратора. Чтобы покинуть режим, позволяющий редактировать пароль, нужно ввести восклицательный знак и щелкнуть по кнопке Enter.
    9. Операция завершается вводом Q и подтверждением внесенных изменений. Теперь пароль сброшен. Можно загрузить Windows и проверить результат.

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

    Альтернативные способы сброса пароля

    Для системы Windows 7 и более поздних версий существуют альтернативные способы изменения заветной комбинации. Однако данные методы являются более трудоемкими и подойдут далеко не всем пользователям, которые пытаются разобраться с вопросом, как устанавливать программы без прав администратора.

    Они предполагают работу с установочным диском Windows 7 (менее трудоемкая операция) и внесение специфических правок в реестр (более сложный способ). Способы подходят для квалифицированных пользователей, которые хорошо разбираются в том, как устроена операционная система. Нет смысла использовать их при наличии простой и функциональной утилиты Offline NT Password and Registry Editor, если только в образовательных целях.

    Подводные камни обхода администраторских ограничений

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

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

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

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

    В принципе, в случаях, когда доменному пользователю нужны права администратора для некоторого рабочего набора программ, его проще всего поместить в группу "Локальные администраторы" конкретной рабочей станции. Таким образом, пользователь сможет навредить только своему компьютеру и почти(!) не способен навредить домену в целом.

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

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

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

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

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

    Неудобный вариант 1 - с помощью системного планировщика задач можно запускать указанные программы автоматически, например при логине пользователя. Да, в планировщике необходимо будет указать от чьего имени должна быть запущена программа, но эти данные не хранятся в открытом виде и получить их будет существенно сложнее (если вообще возможно, т.к. планировщик работает с системными правами и значит ему нужен только дескриптор пользователя, а его логин и пароль ему без надобности, но это только теория, глубоко не копал). Минусы данного подхода в том, что настройку нужно делать на конкретных рабочих станциях индивидуально и если пользователь закроет программу, то заново запустить ее он не сможет, для этого ему потребуется выйти из системы и зайти снова. К тому же, если мне не изменяет память, системный планировщик не умеет различать какой именно пользователь залогинился.

    Неудобный вариант 2 - использовать logon-скрипты в групповой политике. С одной стороны все здорово, мы просто молча запускаем программу при логине пользователя обычным BAT-файлом и не раскрываем информацию о его содержимом (во всяком случае необходимо обладать некоторой квалификацией чтобы ее получить, а если пользователь обладает необходимой квалификацией - ему проще дать локального администратора). С другой стороны имеем часть недостатков из Неудобный вариант 1 и необходимость разместить учетки пользователей в одном OU в Active Directory, для применения групповой политики только к этим пользователям.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Заключение

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

    Похожие статьи