Есть ли способ использовать пользователя без регистрации для запуска заданий Rundeck? - PullRequest
1 голос
/ 12 февраля 2020

Итак, моя цель - создать задание Rundeck, которое запускается по расписанию и не запускается как мой личный пользователь или любой «обычный» пользователь, а скорее как пользователь бота. В идеале этот пользователь бота не будет иметь доступа к логину и ограниченных разрешений по соображениям безопасности, но сможет запускать определенные задания. Я попытался выполнить поиск, но единственная информация, которую я нахожу, касается того, как создать «обычного» пользователя в Rundeck. Даже если я go пошёл по этому пути создания пользователя бота в качестве «обычного» пользователя, чтобы использовать его, вам необходимо передать либо учетные данные для входа, либо токен API. Токен API был бы хорош, если бы его можно было генерировать и извлекать на лету. Однако это не так, у API есть срок действия. Если я что-то упустил, пожалуйста, дайте мне знать. Я бы хотел, чтобы это работало.

  • Версия Rundeck: Rundeck 3.2.1-20200113
  • Rundeck Cli Версия: 1.1.7

Ответы [ 3 ]

0 голосов
/ 12 февраля 2020

Попробуйте использовать webhooks https://docs.rundeck.com/docs/manual/12-webhooks.html Вы можете запустить задание, сделав http-запрос

0 голосов
/ 18 февраля 2020

Я реализовал ботов как пользователь, который является членом группы пользователей «бот», с ACL, которые блокируют эту группу по мере необходимости. Любые пароли, необходимые для запланированного задания, загружаются в хранилище ключей пользователя бота.

При таком подходе вам все еще нужен кто-то, кто знает учетные данные бота, чтобы войти в него и установить пароли / ключи S SH, но это разовое Это то, что вы пытаетесь избежать?

Одна досадная вещь, которую я обнаружил, заключается в том, что запланированное задание всегда запускается последним пользователем, редактирующим задание, поэтому я предоставляю права на редактирование пользователям бота и обязательно устанавливаю / сбрасываю расписание после любое редактирование обычным пользователем. В надежде решить эту проблему через https://github.com/rundeck/rundeck/issues/1603, вы можете указать ?.

0 голосов
/ 12 февраля 2020

Вы можете установить следующую конфигурацию в файле rundeck-config.properties (обычно в каталоге /etc/rundeck/):

rundeck.api.tokens.duration.max=0

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

С этим ваш "бот-пользователь" может сделать это через API / RD CLI , как вы написали.

...