Баунс

Вход и токены

Как сотрудники входят в Баунс и чем аутентифицируется всё остальное: персональные токены, токены демона и токены задачи.

Сотрудники входят в Баунс по почте, всё остальное — по токену. Ниже обе половины: как устроен вход и чем аутентифицируются CLI, скрипты, REST API, демоны и работающие агенты.

Вход в аккаунт

Паролей нет. Вы вводите адрес почты, получаете шестизначный код и подтверждаете им вход.

  • Код действует 10 минут. Если он не пришёл или истёк, его можно запросить повторно — кнопка становится активной через небольшую паузу.
  • Аккаунт создаётся при первом входе — заранее регистрироваться не нужно. Приглашённому коллеге достаточно открыть ссылку из письма.
  • Вход через Google доступен, если администратор включил его на вашем сервере.
  • Десктопное приложение входит через тот же браузерный вход и передаёт сессию себе.

Кто может войти

В корпоративном контуре администратор ограничивает вход на уровне сервера:

  • Список разрешённых доменов или адресов — войти смогут только сотрудники с почтой из этого списка.
  • Отключённая регистрация — новые сотрудники попадают внутрь только по приглашению в рабочее пространство.

Токены

Всё, что работает без браузера, аутентифицируется токеном. Видов три, и они не взаимозаменяемы.

ТокенПрефиксГде появляетсяДо чего дотягивается
Персональный (PAT)bnp_Настройки → API-токены или bounc loginВсё, что можете вы, во всех ваших рабочих пространствах
Демонаbnd_Выпускается при регистрации рантаймаОдно рабочее пространство, операции демона
Пропуск ходаbnt_Выпускается на каждый ход агента, отзывается по его концуОдин ход в одном рабочем пространстве

На сервере хранится только SHA-256-хеш токена, поэтому полное значение показывается ровно один раз — при создании.

Персональный токен

PAT представляет вас целиком: он дотягивается до каждого рабочего пространства, где вы состоите, и может всё, что можете вы. Это учётные данные для CLI, скриптов и прямых вызовов REST.

  • Создание — в Настройках → API-токены: имя и срок действия (30 дней, 90 дней, год или «Бессрочный» последним, с предупреждением). Если срок в запросе не указан, токен живёт 90 дней; бессрочный просят по имени (never_expires в API, --never-expires в bounc auth token create), и он попадает в журнал организации. bounc login выпускает такой токен сам.
  • Использование в REST — заголовком Authorization: Bearer bnp_….
  • Отзыв — там же, по кнопке. Отзыв необратим и мгновенно ломает всё, что этим токеном пользовалось.
  • Учёт — в списке видны префикс, дата создания, дата последнего использования и срок.

Продление

Токен со сроком не продлевается сам по себе от того, что им пользуются. Продление — отдельная операция, и её делает демон: если до истечения PAT его оператора осталось меньше 7 дней, демон продлевает токен ещё на 90 дней. Так долгоживущая машина не отваливается посреди ночи.

Бессрочный токен не истекает никогда и в продлении не нуждается. Продлевать можно только персональные токены — у токенов демона и задачи свой жизненный цикл.

Полное значение PAT показывается один раз. Сервер хранит только хеш и не может восстановить оригинал — скопируйте токен сразу, а при утере отзовите и создайте новый.

Токен демона

Выдаётся, когда демон регистрирует машину, и привязан к одному рабочему пространству. Умеет ровно то, что нужно демону: забирать запуски из очереди и сообщать результаты. По другим вашим пространствам, в отличие от PAT, он не ходит.

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

Пропуск хода

Выпускается на каждый ход агента и отзывается, когда ход кончается. Он не покидает песочницу хода, и любое действие агента с ним приписывается агенту в этом ходе: сообщения, смену статуса и правки видно как действия агента, а не человека.

Агент — не тот человек, на которого он работает. Пропуск несёт идентификатор ответственного за ход, но права проверяются по самому агенту: он не получает доступ к тому, что доступно этому человеку. Поэтому приватного агента другого участника нельзя «одолжить» через агента своего.

Что выбрать

  • CLI, скрипт, интеграция по REST — персональный токен. В CI выпускайте отдельный токен со сроком, а не переиспользуйте свой рабочий.
  • Машина с демоном — ничего не выбирайте: демон выпустит собственный токен при регистрации.
  • Внутри запуска агента — токен уже в окружении, трогать его вручную незачем.

Далее

На этой странице