Сценарий
Командная работа
Организации, роли, доступ к репозиториям, токены и коннекторы — под контролем владельца.
Ситуация
Над проектом работает несколько человек. Нужны роли и границы: не у всех должен быть доступ ко всему, и не каждый вправе публиковать наружу.
Проблемы
- Над проектом несколько человек — нужны роли и границы.
- Не у всех должен быть доступ ко всем репозиториям.
- Нужно контролировать, кто публикует в upstream.
- Токены доступа нельзя раскидывать по общим местам.
- Организации и клиенты не должны видеть чужое.
Как это решает Buff
Организация, роли и изоляция
Участники объединяются в организацию с ролями владельца и пользователя — владелец управляет составом и границами. Каждая организация физически изолирована от других: клиенты и команды не видят чужое.


Доступ к репозиториям и токены публикации
Права выдаются на уровне репозитория — не у всех есть доступ ко всему. Публикацию в upstream выполняет тот, у кого есть право, а токены доступа хранятся per-user в зашифрованном виде и не показываются обратно — их не приходится раскидывать по общим местам.


Коннекторы — свой git, без выдачи токенов
Если код лежит в приватном или self-hosted git (за фаерволом), команда подключает его через коннектор — агент, который вы запускаете в своей сети. Он связывает ваш git с платформой по исходящему соединению, а токен доступа остаётся у вас и к нам не попадает.


Итог
Команда работает вместе, а доступы, публикация и подключение своего git остаются под контролем владельца.