Я хочу использовать команду runas в CMD и из пакетных файлов для получения повышенных разрешений, но у меня нет пароля администратора на моем ПК, потому что это мой домашний компьютер, и я единственный пользователь. Каждый раз, когда я пытаюсь использовать команду runas, она спрашивает у меня пароль, а затем говорит, что пустые пароли запрещены, есть ли способ обойти это? Я знаю, что могу просто щелкнуть правой кнопкой мыши и выбрать запуск от имени администратора, но я бы предпочел иметь команду, которая может это сделать, так как это не всегда вариант, и это немного болезненно.
Я мог бы просто совершить какую-то основную ошибку, поскольку у меня нет большого опыта работы с командной строкой, но я не совсем невежественен.
источник
Вы можете использовать VBScript для повышения команд:
Сохранить как,
*.vbs
а затем запустить его с помощьюcscript
илиwscript
источник
Я полагаю, что вы можете использовать SysInternal's PSexec.exe для форсирования.
Вы можете попробовать, например, запустить это:
psexec \\%computername% -i -h notepad.exe
источник
Как вы обнаружили, runas не позволяет запускать команду с повышенными правами, только как другой пользователь.
Повышение прав происходит, когда вы пытаетесь запустить исполняемый файл, помеченный как требующий повышения прав, что вызывает запрос UAC. Это не просто опция CreateProcess. Поэтому, если вы запускаете копию cmd без повышенных прав и хотите, чтобы она запускала другую обычную команду, но она выполнялась с повышенными правами, вам нужна команда interlude, которая может запустить ее для вас, но помечена для повышения прав. Это осложняется тем фактом, что текущие каталоги и переменные среды не наследуются дочерним объектом с повышенными правами.
Команда su, которую я включил в свою оболочку Hamilton C (полное раскрытие: я автор), имеет опцию sudo, которая решает эту проблему, и вот как я это сделал: когда вы просите su запустить команду с повышенными правами, она запускает свою копию хранится как elevate.exe, который помечен для повышения прав. Поднимите затем рукопожатия через разделяемую память с помощью su, чтобы передать аргументы командной строки, текущие каталоги и среду через границу уровня, а затем elevate выполняет команду.
источник
Я наткнулся на RunAsSpc , который выполнит команду RunAs, но включит возможность чтения / записи с зашифрованным кодом, чтобы ваш пароль не был раскрыт.
Автор утверждает, что эти требования выполняются с помощью RunAsSpc
источник
Вы можете использовать
su
утилиту. Он поднимается через UAC. Вы можете скачать его здесь .источник