backlog: удалена задача local-image-build, она реализована

- все три приложения (homepage, transcriber, remembos) собирают образы
  локально ролью app_image, реестр и yc_*-переменные выведены из оборота
- ссылавшиеся задачи обновлены: narrow-secret-scopes и
  no-secrets-in-playbook-output больше не ждут эту работу
This commit is contained in:
av
2026-07-25 16:26:31 +03:00
parent 6a0d786bdd
commit 0b2a3bd19c
5 changed files with 16 additions and 78 deletions
+9 -9
View File
@@ -2,11 +2,12 @@
**Приоритет:** Средний
`yc_oauth_token` в vault — OAuth-токен аккаунта Yandex Cloud: реестр, виртуалки,
биллинг. Нужен он ради одной операции `docker login` в плейбуках homepage,
transcriber и remembos. Радиус прав несопоставим с задачей, и 24 июля он вместе
с ещё 52 переменными ушёл открытым текстом в транскрипт: цена одной такой утечки
— весь аккаунт, а не один сервис.
Показательный случай — `yc_oauth_token`: OAuth-токен всего аккаунта Yandex Cloud
(реестр, виртуалки, биллинг) ради одной операции, `docker login` в плейбуках
homepage, transcriber и remembos. 24 июля он вместе с ещё 52 переменными ушёл
открытым текстом в транскрипт: цена одной такой утечки — весь аккаунт, а не один
сервис. Из этого репозитория он уже выведен (см. ниже), но такой перекос радиуса
надо найти и снять у остальных переменных.
Принцип, к которому идём: секрет даёт доступ ровно к тому, ради чего заведён.
Всё, что шире, — либо заменяется на скоупированный доступ (сервисный аккаунт с
@@ -14,10 +15,9 @@ transcriber и remembos. Радиус прав несопоставим с за
общего), либо выводится из оборота совсем, либо риск принимается явно и
записывается.
Ядро задачи закрывается сборкой без реестра: после
[local-image-build](local-image-build.md) `yc_oauth_token` не нужен ни в одном
плейбуке и удаляется из vault. До неё эта задача не начинается — иначе деплой
трёх приложений просто ляжет.
Ядро задачи уже закрыто: homepage, transcriber и remembos собирают образы
локально ролью `app_image`, `docker_login` из плейбуков ушёл, а `yc_oauth_token`
вместе с `yc_container_registry*` удалён из vault (коммит `6a0d786`).
Дальше — ревизия остального: пройти по `group_vars/all/secrets.yml` и проставить
каждой переменной радиус («один сервис» / «весь аккаунт у провайдера» / «все