Как добавить пароль в командный файл для автоматической аутентификации?


13

Я пытаюсь запустить xcopyкоманды в командном файле от имени администратора. Это правильная команда и как я могу передать пароль в нее?

runas /noprofile /user:Domain Name\user account

Ответы:


14

Для автоматической аутентификации добавьте /savecredфлаг. Вам нужно будет ввести пароль при первом запуске скрипта, но после этого он будет сохранен.

Поймите, что runasтогда сможете использовать сохраненные учетные данные для выполнения любой данной программы , поэтому подумайте, как это может быть проблемой безопасности, прежде чем идти по этому пути.

Ваше использование корректно, просто добавьте путь к программе в конце.

runas /noprofile /user:joe@example.com /savecred script.bat
или
runas /noprofile /user:joe-pc\joe /savecred script.bat

Чтобы удалить сохраненные учетные данные, выполните поиск диспетчера учетных данных в панели управления.


4

Команда runasдолжна запросить учетные данные при запуске командного файла для выполнения указанной команды. Пока вы запускаете его в cmd.exe . Это связано с необходимостью стандартного ввода, запрашивающего пароль. Вы не можете просто дважды щелкнуть по нему. Хранение пароля в виде открытого текста в командном файле - плохая идея, потому что это небезопасно . Вот почему это подсказывает во время выполнения.

Вы можете щелкнуть правой кнопкой мыши по исполняемому файлу и щелкнуть Run as Administratorбез runasкоманды. Это, вероятно, решение, которое вы ищете.

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


Я понимаю, что хранить пароль в простом текстовом формате было бы небезопасно, но есть ли способ для его автоматической аутентификации?
— Джо

Лучший способ - щелкнуть правой кнопкой мыши исполняемый файл & Run as Administratorили установить задачу для запуска от имени определенного пользователя в качестве запланированной задачи. Любая другая опция, которая аутентифицируется как администратор, может привести к серьезным угрозам безопасности. Похоже, что окна не имеют этой возможности. Если вам нужна дополнительная информация по этому вопросу, см. Setuid для windows . setuidиспользуется в средах Unix, чтобы позволить пользователю без прав администратора запускать программу от имени пользователя root (admin). Используемая программа setuidдолжна быть очень тщательно закодирована, чтобы не создавать уязвимостей.
— BrenanK

Просто чтобы быть понятным, setuidможно настроить для принятия привилегий других пользователей, а также root в системе Unix.
— BrenanK 19.12.12

1

Вы можете использовать RunAs, когда вызываете пакетный файл (щелкните правой кнопкой мыши по пакетному файлу и выберите runas), чтобы запустить пакет как администратор. Я подозреваю, что runas не будет работать внутри пакета. Я бы рекомендовал НЕ помещать пароль в командный файл, даже если он работал, командные файлы представляют собой обычный текст, поэтому вы также можете поместить пароль в заметку на мониторе.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.