Статья Автоматическое повышение прав с помощью Elevation PowerToys

Саныч

Опытный участник
Сообщения
734
Реакции
741
Существует ли более удобный способ повышения прав при запуске сценариев в Microsoft Windows Vista?

Вместо того, чтобы просто запустить сценарий двойным щелчком, приходится сначала запускать командную строку с правами администратора — то есть, нажимать на ярлыке правой кнопкой мыши, выбирать опцию «Запуск от имени администратора» (Run as Administrator), подтверждать выполнение операции в окне Контроля учетных записей пользователей (UAC) и только потом вводить команду на выполнение сценария.

Существует пакет утилит Elevation PowerToys for Windows Vista, предназначенных как раз для решения этой проблемы.


Не все сценарии требуют повышения прав

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

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

PowerToys

Майкл Марголо (Michael Murgolo), старший инфраструктурный консультант отдела консалтинга Microsoft, признал, что отсутствие в Vista удобного способа выполнения сценариев с повышением прав — это упущение, и создал пакет утилит Script Elevation PowerToys for Windows Vista. Почитать об утилитах подробнее и загрузить пакет можно на сайте Microsoft TechNet.

Скачав пакет «Elevation2008_06.exe», достаточно запустить его двойным щелчком. Появится диалоговое окно «TechNet Magazine Sample Code», показанное на рис. A, с предложением выбрать папку для распаковки всех включенных в пакет файлов. Обратите внимание — при распаковке ни одна из утилит установлена еще не будет.



Рисунок A. При запуске файла пользователю предлагается выбрать папку для распаковки.

После распаковки на диске появится папка «Elevation», содержащая в себе набор файлов «.INF». Можно выбрать для установки любой из них, а можно установить сразу все утилиты, воспользовавшись файлом «InstallAllPowerToys.cmd». Если вам не приходится регулярно запускать сценарии разных типов, можно ограничиться только установкой самых нужных утилит. Подробнее читайте в файле «Readme.txt»

Установка PowerToy

Установить любую из утилит Script Elevation PowerToys очень легко. Предположим, вы вам нужна утилита для запуска файлов «.HTA» с повышенными правами. Нажмите правой кнопкой на файле «ElevateHTA.inf» и выберите опцию «Установить» (Install), как показано на рис. B.


Рисунок B. Чтобы установить утилиту Elevate HTML Application PowerToy, нажмите на файле «ElevateHTA.inf» правой кнопкой мыши и выберите опцию «Установить» (Install).

После установки Elevate HTML Application PowerToy в контекстном меню для файлов HTA появится опция «Запуск от имени администратора» (рис. C). При выборе этой опции придется подтвердить продолжение операции в окне UAC. После этого приложение HTA сможет нормально выполнять поставленные перед ним задачи.



Рисунок C. Чтобы запустить сценарий HTA, требующий повышения прав, достаточно нажать на нем правой кнопкой мыши и выбрать опцию «Запуск от имени администратора».

Удаление утилит PowerToy

Удалить любую из утилит Script Elevation PowerToys так же просто, как установить. Делается это с помощью служебного приложения «Программы и компоненты» (Programs and Features) в Панели управления (Control Panel). К примеру, после установки Elevate HTML Application PowerToy в «Программах и компонентах» появляется соответствующий пункт (рис. D).


Рисунок D. Удалить любую из утилит Script Elevation PowerToys можно с помощью служебного приложения «Программы и компоненты».

А если установить все утилиты Script Elevation PowerToys сразу, для их массового удаления можно будет воспользоваться файлом «UninstallAllPowerToys.cmd».


Автор: Greg Shultz

Источник
 
Назад
Сверху Снизу