запуск ярлыка с правами администратора
Как создать ярлык, позволяющий обычным пользователям запускать приложение с правами администратора
Как создать ярлык, позволяющий обычным пользователям запускать приложение с правами администратора
Оптимизация
Не приходит обновление до 11
Не устанавливается
Как откатить 11 до 10
Как убрать рекомендуем из пуска
Хотите разрешить пользователям со стандартной учетной записью запускать приложения с правами администратора без UAC или запроса на ввод пароля? Тогда я расскажу, как сделать. Мы создадим ярлык, использующий команду runas /savecred, которая сохраняет пароль. Замечу, что это можно считать дырой в безопасности – обычный пользователь сможет использовать runas /savecred для выполнения любой команды от имени администратора без ввода пароля. Тем не менее, в некоторых ситуациях это может быть полезно – например, если вы хотите, что бы ваш ребенок из под стандартной учетной записи мог запускать приложения от имени администратора не спрашивая вас.
Включаем учетную запись администратора
В первую очередь необходимо включить встроенную учетную запись администратора, которая по умолчанию отключена. Итак, щелкните правой кнопкой мыши по ярлыку командной строки и выберите «Запустить от имени администратора».
В открывшемся окне командной строки выполните следующую команду:
Теперь учетная запись включена, хотя и без пароля. Чтобы установить пароль, откройте «Панель управления, выберите категорию «Учетные записи пользователей и семейная безопасность», а затем откройте меню «Учетные записи пользователей». Далее щелкните по ссылке «Управление другой учетной записью».
Выберите учетную запись администратора, нажмите на кнопку «Создать пароль», и создайте пароль для учетной записи администратора.
Создаем ярлык
Теперь мы создадим ярлык, который будет запускать приложение с администраторскими привилегиями. Щелкните правой кнопкой мыши на рабочем столе, выберите пункт «Создать», а затем нажмите на «Ярлык».
В открывшемся окне нужно ввести команду следующего типа:
runas /user:ComputerName\Administrator /savecred “C:\Path\To\Program.exe“
Обратите внимание, что вам необходимо заменить ComputerName на имя вашего компьютера, а C:\Path\To\Program.exe на полный путь к программе, которую вы хотите запустить. Например, если имя компьютера Laptop, а программой, которую вы хотите запустить, является Auslogics BoostSpeed, вам необходимо ввести следующий путь:
runas /user:Laptop\Administrator /savecred “C:\Program Files\Auslogics\Auslogics BoostSpeed\BoostSpeed.exe»
В следующем окне введите имя для ярлыка. По желанию можно выбрать иконку для нового ярлыка – щелкните по нему правой кнопкой мыши и выберите пункт «Свойства».
В диалоговом окне «Свойства» нажмите на кнопку «Сменить значок» и выберите подходящий.
Когда вы в первый раз дважды щелкните по ярлыку, вам будет предложено ввести пароль от учетной записи администратора, которую вы создали ранее.
Этот пароль будет сохранен – в следующий раз, когда вы будете запускать программу, вам уже не придется вводить его снова.
Как уже упоминалось выше, из под стандартных учетных записей пользователи могут запускать любые программы с правами администратора без ввода пароля (с помощью команды runas /savecred), так что имейте это ввиду.
Не забудьте так же прочитать что делать когда то или иное приложение выдает сообщение о том, что администратор заблокировал выполнение этого приложения на windows 10.
Пароль администратора хранится в «Диспетчере учетных данных» – если вы хотите удалить сохраненный пароль, вы можете сделать это оттуда.
[Конспект админа] Что делать, если программа хочет прав администратора, а вы нет
К сожалению, в работе сисадмина нет-нет да и приходится разрешать пользователям запускать всякий софт с админскими правами. Чаще всего это какие-нибудь странные китайские программы для работы с оборудованием. Но бывают и другие ситуации вроде небезызвестного bnk.exe.
Выдавать пользователю права администратора, чтобы решить проблему быстро и просто, противоречит нормам инфобезопасности. Можно, конечно, дать ему отдельный компьютер и поместить в изолированную сеть, но — это дорого и вообще…
Попробуем разобрать решения, которые позволят и программу запустить, и безопасника с финансистом не обозлить.
Ну, и зачем тебе права?
Программа может запрашивать права администратора условно в двух случаях:
С первым случаем все понятно: берем в руки замечательную программу Марка Руссиновича Process Monitor, смотрим, что происходит, и куда программа пытается залезть:
Куда это лезет этот 7Zip?
И по результатам исследования выдаем права пользователю на нужный каталог или ветку реестра.
Сложнее, если случай клинический, и так просто выдать права не получится: например, программа требует сильного вмешательства в работу системы вроде установки драйверов. Тогда придется придумывать всякий колхоз, про который речь пойдет в последнем разделе статьи. Пока подробнее освещу второй случай — когда стоит флажок.
Если сильно упростить, то в специальном манифесте программы (к слову, установщики — это тоже программы) могут быть три варианта запуска:
Если разработчик твердо решил требовать права администратора, даже если они не нужны, то обойти это можно малой кровью.
Нет, не будет тебе прав
В системе Windows, начиная с Vista, появилась служба UAC, которая помимо прочего отвечает за запросы программ на повышение прав. Не все программы «переваривали» работу с этой службой. Поэтому в системе был доработан механизм совместимости приложений, позволяющий прямо задать программе ее поведение — запрашивать права или нет.
Простейшим вариантом работы с этим механизмом будет использование переменных среды.
Рассмотрим пример с редактором реестра. Действительно, запуская regedit.exe под администратором, мы получаем запрос на повышение прав:
Запрос повышение прав.
Если же мы запустим редактор реестра из консоли, предварительно поменяв значение переменной среды __COMPAT_LAYER на:
То запроса UAC не будет, как и административных прав у приложения:
Бесправный редактор реестра.
Этим можно пользоваться, запуская программы батниками или добавляя контекстное меню через реестр. Подробнее читайте в материале How to Run Program without Admin Privileges and to Bypass UAC Prompt?
С конкретным примером такой неприятной программы можно столкнуться при загрузке классификаторов банков из 1С с сайта РБК по ссылке http://cbrates.rbc.ru/bnk/bnk.exe. Если обновление классификаторов отдается на откуп самим пользователям и нет возможности поменять загрузку на bnk.zip (а современные 1С это поддерживают), то приходится придумывать костыли. Ведь bnk.exe — самораспаковывающийся архив, в котором зачем-то прописано «Требовать права администратора».
Поскольку ярлычками тут обойтись не выйдет, ведь 1С сама скачивает файл и запускает его, то придется применять тяжелую артиллерию — Microsoft Application Compatibility Toolkit.
Документация к ПО, как обычно, доступна на официальном сайте, загрузить можно как часть Windows Assessment and Deployment Kit. Сам процесс решения проблемы несложен.
Необходимо поставить утилиту, запустить Compatibility Administrator и создать Application Fix в новой или имеющейся базе данных:
Создаем исправление приложения.
Имя и издатель значения не имеют. Имеет значение только расположение файла — тут нужно указать реальный проблемный bnk.exe (где он будет лежать на самом деле — не важно).
Далее необходимо в списке исправлений выбрать RunAsInvoker.
Выбираем нужный фикс.
Все остальное оставляем по умолчанию, сохраняем базу данных. Должно получиться примерно так:
Созданный фикс для bnk.exe.
После этого достаточно будет установить базу данных, щелкнув по ней правой кнопкой и выбрав Install. Теперь пользователи смогут сами грузить классификаторы банков.
Все становится хуже, если приложению действительно нужны права админа. Тогда добавление прав на системные объекты и исправления не помогают.
Ну ладно, держи права
Казалось бы, самым очевидным решением для запуска нашего странного ПО выглядит использование встроенной утилиты Runas. Документация доступна на сайте Microsoft.
Ну, посмотрим, что из этого выйдет.
Действительно, RunAs запустит 7zip с правами учетной записи «Администратор», спросит пароль и запомнит его. Потом ярлык с такой строкой запуска будет запускать 7zip под Администратором без вопросов.
)
Есть один существенный недостаток: пароль запоминается на уровне системы, и теперь, используя команду Runas, можно будет запускать абсолютно любую программу. Это мало чем отличается от прямого предоставления админских прав сотрудникам, так что использовать это решение не стоит.
Зато runas может быть полезен, когда сотрудник знает пароль администратора, но работает под ограниченной учетной записью (по идее так должен делать каждый системный администратор).
Если мы начали с консольных команд, то перейдем к более высокоуровневым скриптам. Интересное решение было предложено в статье «Планктонная Windows», где упомянутый выше Runas обвязывался js-скриптом и пропускался через обфускатор. У решения есть и очевидный минус — скрипт можно раскодировать.
Чуть более интересным методом в 2к20 являются возможности PowerShell и его работа с паролями. Подробнее можно почитать в материале «Защита и шифрование паролей в скриптах PowerShell».
Если вкратце: в PS работа с паролями производится через специальный тип данных SecureString и объект PSCredential. Например, можно ввести пароль интерактивно:
Затем сохранить пароль в зашифрованном виде в файл:
И теперь использовать этот файл для неинтерактивной работы:
К сожалению, файл этот можно использовать только на том ПК, на котором его создали. Чтобы этого избежать, можно сделать отдельный ключ шифрования. Например так:
Теперь при помощи этого ключа пароль можно зашифровать:
В свое время я использовал для решения подобных задач свой любимый AutoIt, где компилировал скрипт с командой RunAs и радовался… До тех пор, пока не узнал, что AutoIt (особенно старых версий) декомпилируется на раз-два.
Другим интересным вариантом может быть применение назначенных заданий — если создать назначенное задание от админского аккаунта, пользователю для работы будет достаточно его запуска. К сожалению, для интерактивной работы с приложением это решение не подходит.
На свете существует несколько сторонних решений, призванных решить задачу. Остановлюсь на парочке из них.
Пожалуй, одна из самых известных утилит — это AdmiLink, разработанная Алексеем Курякиным для нужд ядерной физики. Программа и принципы ее работы описаны на официальном сайте. Я, как обычно, позволю себе более краткое описание.
Программа состоит из трех модулей. AdmiLink — это графическое окно, где можно создать ярлык на нужное приложение (в принципе, в ряде случаев достаточно только его).
Основное окно программы.
Помимо непосредственно создания ярлыка (и да, запрос UAC тоже можно подавлять), есть и дополнительные функции вроде калькулятора, терминала и удобных настроек политик безопасности. Со всеми возможностями программы читателю предлагается разобраться самостоятельно.
Второй модуль называется AdmiRun и представляет из себя консольную утилиту. Она умеет запускать приложения от имени администратора, получив в качестве одного из параметров строку, созданную через AdmiLink. В строке шифруется имя пользователя и пароль, при этом участвует и путь к программе.
На первый взгляд все выглядит безопасно, но, к сожалению, код программ закрыт, и насколько можно доверять разработчику — вопрос.
Третий модуль — AdmiLaunch — отвечает за запуск окон в разных режимах, и он используется для запуска AdmiRun, если создавать ярлык через AdmiLink.
В целом, решение проверено годами и поколениями отечественных системных администраторов. Но добавлю и альтернативу из-за рубежа.
RunAsRob — довольно интересное ПО за авторством немецкого разработчика Оливера Хессинга (Oliver Hessing). В отличие от AdmiLink, ПО устанавливается как служба, запускаемая под привилегированной учетной записью (администратора или системы). Как следствие, подготовленный ярлык обращается к службе, которая уже в свою очередь запускает заданное ПО.
Особенность программы в том, что есть возможность авторизовать не только программы, но и папки (включая сетевые). А хранение настроек в реестре позволило добавить шаблоны групповых политик, примерно как мы писали в статье «Погружение в шаблоны и приручение GPO Windows». Благодаря этому при необходимости настройки можно применять прямо из Active Directory.
Основное окно программы.
Программа богато документирована на официальном сайте.
У этого автора есть еще и программа RunAsSpc, позволяющая запускать исполняемые файлы под правами другого пользователя, передавая учетные данные через зашифрованный файл.
Мне остается только добавить, что это ПО бесплатно только для личного использования.
Но учтите, что из программы, запущенной под административными правами, можно натворить бед. Например, запустить привилегированную командную консоль через диалог Файл — Открыть.
Запускаем cmd.exe прямо из редактора реестра.
Немного защититься помогут политики запрета контекстного меню и прочих диспетчеров задач, часть из которых может настроить AdmiLink. Но в любом случае следует быть осторожным.
А вам приходилось городить странные костыли? Предлагаю делиться историями в комментариях.
5 способов запуска программ от имени администратора в Windows 7 и Windows 8
Большинство программ обычно запрашивают права автоматически. Для этого в Windows есть контроль учётных записей. Некоторые же программы этого не делают и их необходимо запускать от имени администратора вручную. В этой статье вы узнаете об основных способах запустить любую программу от имени администратора в Windows 10, Windows 7. По большому счёту инструкции универсальны и подходят для любой версии ОС.
Запуск от имени администратора с помощью контекстного меню
Контекстное меню вызывается правой кнопкой мышки. Жмём по любой программе мышкой и из контекстного меню нажимаем по опции «Запуск от имени администратора». Так открывается командная строка и прочая программа, где необходимы повышенные привилегии.
Использование сочетания Ctrl+Shift+Enter при поиске
Когда на рабочем столе или в меню Пуск нет какого-либо инструмента мы обращаемся к поиску. Любая версия Windows оснащена им, а в десятой он наиболее удобен. Пропишите какую-нибудь команду, например, cmd – командная строка. Выбрав результат одновременен зажимаем комбинацию Ctrl+Shift+Enter. Простой способ не так ли?
Дополнительные свойства ярлыка
Допустим, вас интересует вопрос, как запустить командную строку от имени администратора. Значок уже расположен на рабочем столе в качестве быстрого доступа, но вы не желаете всё время запускать контекстное меню. Эту проблемку решить можно.
Заходим в свойства ярлыка (правая кнопка мышки и Свойства) и идём в раздел «Дополнительно».
Откроются дополнительные параметры. Там отметьте галочкой параметр «Запуск от имени администратора». Теперь при обычном запуске программы она всегда откроется с повышенными правами.
Дополнительно! В свойствах на вкладке «Совместимость» есть опция «Запускать эту программу от имени администратора». Тоже полезная вещица.
Это интересно: Скрытая учетная запись администратора Windows 10
Как удалить сохраненный пароль в команде Runas
Сохранив единожды пароль от учетной записи в команде runas, вы можете в дальнейшем запускать программы, не вводя его снова. Однако вам может потребоваться заблокировать возможность запускать программы от имени другой учетной записи пользователя компьютера с использованием сохраненного пароля в runas.
Чтобы удалить сохраненный пароль, выполните «Пуск» ⇒ «Панель управления» ⇒ «Учетные записи пользователей и семейная безопасность» ⇒ «Диспетчер учетных данных».
В разделе «Учетные данные Windows» (интерактивный вход в систему) удаляете не нужные больше записи из хранилища.
Программы для запуска от имени администратора
Существует следующие программы: RunAs, AdmiLink, ExecAS.
Инструмент RunAs
Он является частью Windows, поэтому им можно пользоваться. Чтобы её запустить достаточно открыть командную строку и ввести следующую команду:
runas /user:ИмяПК\ИмяПользователя msconfig.exe
Скорее всего появится просьба о вводе пароля. Обязательно вводим.
Дальше должно появится окошко конфигурации системы. Вместо указанной утилиты используйте cmd.exe или прочие утилиты.
Давайте создадим ярлык на рабочем столе. Нажимаем правой кнопкой мышки на пустой области и выбираем «Ярлык». В качестве расположения прописываем ту самую команду:
runas /user:ИмяПК\ИмяПользователя msconfig.exe
Даем название ярлыку и сохраняем.
После запуска ярлыка откроется командная строка, где надо ввести пароль от учетной записи. При вводе правильных данных сразу же запуститься msconfig или утилита, которую вы выбрали.
При таком раскладе вы или люди, имеющие доступ к ПК, будут каждый раз вводить пароль. Этот момент решается добавлением в команду параметра /savecred, тогда команда будет такой:
runas /savecred /user:ИмяПК\ИмяПользователя msconfig.exe
Если вы думаете о безопасности, то подобные ярлыки с такой опцией лучше не использовать. Лучше каждый раз вводить пароль и не беспокоится, что какой-то нахал воспользуется средствами Windows без пароля в угоду себе и во вред вам.
Использование инструмента ExecAS
Запуск от имени администратора возможен программкой ExecAS. После запуска возникает окошко с предложением ввести информацию об учетной записи (логин и пароль), а еще имя программы и путь. После ввода данных жмём «Записать».
В окошке ExecAS появился наш подопытный кролик, Закройте программу и откройте заново. Сразу же откроется та программа, указанную нами в ExecAS. Чтобы добавить дополнительное приложение нужно в командной строке прописать ExecAS.exe /S. (При этом нужно находиться в каталоге с утилитой, к примеру, C:\ExecAS).
Запустив ExecAS, добавляем еще какую-либо программку. Закрываем инструмент и опять запускаем. Появляется тоже самое окно. Но так нам не удобно, поэтому перейдем к созданию ярлыков:
Делаем два ярлыка с такими командами:
Числа 1 и 2 отвечают ща номер программы в ExecAS.
Запустив ярлыки, мы видим, что они открылись от имени администратора.
Использование утилиты AdmiLink
Указанная в заголовке утилита является консольной, и после инсталляции будет находиться в каталоге Windows.
Запускаем инструмент и видим вполне удобное окошко с русским интерфейсом, поэтому разобраться будет легко.
Настраиваем параметры на вкладке Account:
Утилита проверит работоспособность указанной нами информации. Жмём любую клавишу в CMD.
После удачного теста нажмите кнопочку «Сгенерировать ключ запуска AdmiRun». Если этого не сделать, то ничего не будет работать.
Значок сразу же появится на рабочем столе или каталоге, который вы указали.
Пробуем запустить ярлык. Если всё удачно и программа запустилась от имени админа, то поздравляю. Иначе неверно выполнены действия на каком-то шаге.
Если зайти в свойства ярлыка и изменить программу в поле «Объект» на другую, то она попросту не запуститься. Это небольшая защита от вредоносов.
Планировщик заданий
Запустить программу от имени администратора, достаточно использованием инструмента «Планировщик заданий». Здесь есть один нюанс – если вы не админ, то воспользоваться им не удастся.
Введите в поиске всего два слова: «Планировщик заданий» и откройте результат. В окне справа выбираем пункт «Создать задачу».
Назовите её соответствующим именем, допустим, вы запускаете командную строку, тогда можно назвать CMD. Также ставим галку «Выполнить с наивысшими правами».
На вкладке «Действия» нажмите кнопочку «Создать».
Выберите действие (в нашем случае запуск программы). Нажмите «Обзор» и выберите запускаемую утилиту. Если вы запускаете командную строку, то путь будет таким: С:\Windows\System32\cmd.exe.Теперь нажимаем ОК.
На вкладе «Действия» появилась новая строчка. Отлично, можно нажать ОК.
Этап создания ярлыка
На рабочем столе делаем ярлык и указываем такую команду:
schtasks /run /tn имя_задачи_в_планировщике
имя_задачи_в_планировщике – это имя, которое вы дали в самом начале процесса создания задачи.
Ура, ярлык мы сделали, но это еще не всё. Перейдите в его свойства.
На вкладке «Ярлык» измените значок. Конечно, делать это вы не обязаны.
Дополнение к способу с планировщиком заданий
Для быстрого запуска множества программок, можно использовать утилиту Elevated Shortcut. Вы берёте ярлык или исполняемого файла и перетаскиваете на значок Elevated Shortcut.
Получаем доступ из-под обычного пользователя
Иногда бывают ситуации, когда нужно выполнить какую-нибудь утилиту с admin правами. Например, ваш компьютер использует сотрудник на работе и в его учетке ограничен доступ к некоторым программам. Чтобы не давать свой пароль, вы можете решить данную задачу удаленно, зайдя на ваш ПК и запустив необходимую утилиту с admin правами, используя ваш пароль.
Рассмотрим работу с утилитой uTorrent, у которой ограничен доступ из-под обычной учетки. Для этого перейдем в контекстное меню ярлыка утилиты uTorrent и удобным для вас способом выполним пункт, отвечающий за admin права.
После этого откроется окно, которое запросит пароль учетной записи админа.
После ввода пароля вы откроете утилиту на обычной учетной записи, и пользователь сможет пользоваться утилитой.
Подводим итог
В этой статье рассмотрены все виды старта программ в режиме администратора. Также рассмотрен пример, при котором учетная запись Windows 10 получает расширенные привилегии для программ, позволяя им работать в режиме администратора без использования дополнительных опций.
Также хочется отметить, что этот материал будет особенно полезен начинающим системным администраторам и опытным пользователям ПК. Надеемся, что наши читатели почерпнут из нашей статьи полезную информацию, которая поможет им решить свою задачу.