Команда RUNAS: запуск приложений от имени другого пользователя Windows

networks adminКак известно, пользователи ОС Windows могут обладать разными правами в системе. Время от времени возникает необходимость запустить приложение в контексте другого пользователя. Как правило, такая необходимость возникает из-за того, что у текущего пользователя нет необходимых прав. В командной строке для этих целей можно использовать команду RUNAS.

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

В общем виде синтаксис команды runas выглядит так:

RUNAS [ [/noprofile | /profile] [/env] [/savecred | /netonly] ] /user:имя_пользователя программа

RUNAS [ [/noprofile | /profile] [/env] [/savecred] ] /smartcard [/user:имя_пользователя] программа

RUNAS /trustlevel:уровень_доверия программа

Рассмотрим параметры команды runas.

/noprofile — не загружать профиль пользователя. Приложения в таком случае будут загружаться быстрее, но иногда это приводит к неправильной работе программ;

/profile — загружать профиль пользователя. Этот режим используется по умолчанию;

/env — использовать текущие параметры среды;

/savecred — использовать учётные данные, сохранённые пользователем;

/netonly — учётные данные предназначены только для удалённого доступа;

/smartcard — для указания учётных данных используется смарт-карта;

/user — имя пользователя в виде DOMAIN\USER или USER@DOMAIN;

/trustlevel — уровень доверия, с которым запускается программа;

/showtrustlevels — отобразить список уровней доверия, которые можно указать в /trustlevel.

Примеры использования команды runas:

runas /user:comp_buhov\admin regedit

Команда выше запустит редактор реестра на компьютере с именем COMP_BUHOV от имени пользователя ADMIN. При этом будет запрошен пароль пользователя ADMIN.

Теперь посмотрим пример с доменной учётной записью.

runas /savecred /user:test\admin regedit

Здесь мы запускаем редактор реестра от имени доменной учётной записи ADMIN в домене TEST. Заметьте, что мы указали параметр /savecred. Это значит, что пароль будет сохранён в зашифрованном виде в реестре и в дальнейшем запрашиваться не будет. Имя пользователя можно указать и иначе:

runas /savecred /user:admin@test regedit

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

runas /trustlevel:0x10000 cmd

Если вы запустили командную строку с использованием параметра /trustlevel, то можете просмотреть список привилегий, доступный каждому уровню доверия, при помощи:

whoami /priv

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

whoami /all

Учтите, что параметр /profile несовместим с параметром /netonly, а параметр /savecred несовместим с параметром /smartcard. Пароли, которые были сохранены в реестре Windows при использовании команды runas, можно удалить при помощи оснастки управления сохранёнными паролями.

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

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