вторник, 20 октября 2009 г.

Почему программа RunAs не принимает пароль в командной строке?

Это перевод Why doesn't the RunAs program accept a password on the command line? Автор: Реймонд Чен.

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

Это было осознанным решением. Если бы было возможным передать пароль в командной строке, люди бы начали внедрять пароли повсюду: в bat-файлах и logon-скриптах, что до смешного небезопасно.

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

Если это мешает вам и вы хотите быть незащищённым и передавать пароль открытым текстом в командной строке (и все увидят его в заголовке окна консоли), то вы можете написать свою собственную программу, которая вызывает функцию CreateProcessWithLogonW.

(Мне сказали, что есть готовая утилита, которая может оказаться полезной администраторам домена, хотя она решает несколько иную проблему).

2 комментария:

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

    В этом случае использовать RunAs неправильно - просто воспользуйтесь Планировщиком Заданий: добавьте новое задание выполняемое от указанной учётки и на указанное событие (необязательно, кстати на вход пользователя).

    ОтветитьУдалить
  2. Есть ещё ключик /savecred, но лучше б его не было. Достаточно один раз его использовать, и вычистить учётку от введённого пароля очень сложно, тогда как владелец учётки не будь дурак сможет теперь таким образом запускать всё, что ни попадя.

    ОтветитьУдалить

Можно использовать некоторые HTML-теги, например:

<b>Жирный</b>
<i>Курсив</i>
<a href="http://www.example.com/">Ссылка</a>

Вам необязательно регистрироваться для комментирования - для этого просто выберите из списка "Анонимный" (для анонимного комментария) или "Имя/URL" (для указания вашего имени и ссылки на сайт). Все прочие варианты потребуют от вас входа в вашу учётку (поддерживается OpenID).

Пожалуйста, по возможности используйте "Имя/URL" вместо "Анонимный". URL можно просто не указывать.

Ваше сообщение может быть помечено как спам спам-фильтром - не волнуйтесь, оно появится после проверки администратором.