При настройке шага процесса (см. Процессы) можно указать, что IBM UrbanCode Deploy должен выполнять этот шаг от имени другого пользователя. По умолчанию используется команда su, но вместо нее можно использовать sudo. Для настройки выполнения от имени другого пользователя необходимо задать имя пользователя, которое требуется целевому хосту. Когда выполняется шаг процесса, настроенный для выполнения от имени другого пользователя, команда su или sudo выполняет этот шаг как указанный пользователь. Каждый шаг, для которого требуется переключение пользователя, должен настраиваться независимо.
Перед тем как использовать команду sudo, в файле /etc/sudoers необходимо определить привилегии для работы от имени другого пользователя. При настройке sudoers убедитесь в том, что пользователю, работающему от имени другого пользователя, не требуется вводить пароль. Обычно файл /etc/sudoers имеет следующий вид:
Defaults:X !requiretty
X ALL=(Y) NOPASSWD: ALL
где X и Y - это имена пользователей. В результате такой настройки пользователь X может выполнять любые команды как пользователь Y, не вводя пароль.
su и sudo записывают все свои операции в системные протоколы. Команда su может использоваться без настройки файлаsudoers. За информацией о командах su/sudo обратитесь к документации по UNIX или Linux.
| Свойство | Значение по умолчанию | Описание |
|---|---|---|
| com.urbancode.shell.impersonation.unix.sudoFormat | %s -n -u %u %c | Синтаксис команды sudo |
| com.urbancode.shell.impersonation.unix.sudoGroupFormat | %s -n -u %u -g %g %c | Синтаксис команды sudo при указании группы |
| com.urbancode.shell.impersonation.unix.suFormat | %s - %u -c %c | Синтаксис команды su |
| Переменная | Значение |
|---|---|
| %s | Расположение исполняемого файла su или sudo |
| %u | Пользователь |
| %g | Группа |
| %c | Выполняемая команда |