Независимо от того, что вы делаете, без использования сторонних утилит, у ваших пользователей всегда будет возможность легко восстановить пароль администратора, если вы пишете сценарии с PSEXEC, как это. Это связано с тем, что PSEXEC требуется, чтобы пароль передавался ему в качестве параметра команды в виде открытого текста, если вы не будете готовы каждый раз вводить его вручную.
Несколько примеров сценариев:
Пароль указан в параметрах ссылки:
Смешно легко увидеть пароль, посмотрев на свойства ссылки.
Пароль предоставляется через пакетный скрипт, и вы указываете ссылку на скрипт:
Легко найти скрипт по ссылке и найти пароль в скрипте.
Пароль хранится в виде защищенной строки в текстовом файле, который читается и передается в PSEXEC с помощью сценария PowerShell, и вы указываете ссылку на сценарий PowerShell:
Пароль все еще виден в свойствах процесса через диспетчер задач.
(Вид-> Выбрать столбцы-> Командная строка)
Последний вариант выше - от первой редакции ответа Ади Инбара до другого вопроса .
Последняя редакция того же ответ имеет лучшее решение, которое не совсем так тривиально годный для использования, но все еще может получить пароль, если они знают, что они делают. Это определенно не то, что я бы использовал для одной из своих учетных записей или систем, но кажется, что это может предложить приемлемую защиту по вашим стандартам. Решение полностью исключает PSEXEC и выполняет всю работу в PowerShell. Тем не менее, я думаю, что для многопользовательской реализации он все еще требует некоторой работы. (Я не знаю точно, как это сделать сейчас. Обновлю этот ответ, если выясню это позже.) После успешной реализации любой пользователь, имеющий доступ к сценарию и его вспомогательным файлам, все равно может извлечь и расшифровать пароль, но он '
Если вы открыты для использования стороннего программного обеспечения, есть некоторые инструменты, которые позволяют вам добавлять ограниченные учетные записи пользователей в группу типа «sudoers» и ограничивать их привилегированные права только (прямым) запуском выбранных вами приложений.
В любом случае, есть еще одно важное соображение, которое следует иметь в виду: всякий раз, когда вы позволяете пользователю запускать приложение с повышенными привилегиями, вы предоставляете ему возможность использовать повышенные привилегии для всего, что приложение способно сделать. Если это включает просмотр файловой системы (например, через диалоговое окно «Открыть» или «Сохранить»), пользователь может затем использовать повышенные привилегии для других программ / функций, к которым вы не хотите, чтобы они имели доступ.
Пример. Допустим, вы разрешаете мне доступ к вашей системе, и моя учетная запись настроена так, что единственное приложение, которое мне разрешено запускать с повышенными привилегиями, - это Блокнот. Из блокнота я бы ...
File->Open
- Установите тип файла «Все файлы ( . )».
- Найдите, где я хочу в локальной файловой системе, и запустите / откройте любые файлы / программы, которые я хочу от имени администратора.
- например: Перейдите
C:\Windows\System32\
, щелкните правой кнопкой мышиlusrmgr.msc
, выберите «Открыть», с помощью MMC, чтобы добавить себя в реальной группе администраторов.
- например: Перейдите
Я также хотел бы использовать [tag: runas] с параметром / savecred, но учетные данные теряются после перезагрузки clargr1 10 лет назад 0