Наша платформа для разработчиков продолжает развиваться и сегодня я расскажу о новой функционале - Секреты. Сервис секретов предназначен для хранения настроек к вашим приложениям, которые вы запускаете - локально, в CI/CD или в своих тестовых и продуктовых окружениях. Он является отличной альтернативой .env
файлам и переменным окружениям в CI/CD системах.

Что это такое и кому оно нужно?
Если пройтись по фактам, то Секреты — это:
Единый источник конфигурации для локальной разработки, CI/CD, staging и production сред.
Удобный интерфейс управления — через веб, CLI и API.
Поддержка RBAC, комментариев, напоминаний и аудита изменений.
Гибкая работа с проектами, окружениями и конфигурациями.
Все секреты шифруются, ключи не хранятся в базе. Утечка БД не приведёт к раскрытию данных.
Для кого:
Разработчикам — для упрощения настройки окружений и сокращения "магических" значений в коде.
DevOps-инженерам — для централизации и автоматизации конфигураций.
Командам — для безопасного и контролируемого совместного доступа к конфиденциальным данным.
? Ключевые возможности
Мы внедрили структуру, позволяющую эффективно управлять секретами. В этом ролике вы увидите небольшой обзор возможностей:
VK плеер, если YouTube не работает ⬇️
Привычная иерархия: проекты → окружения → конфигурации.
Мы придерживаемся общепринятой структуры, поэтому хранение секретов разделяется по проектам, внутри проектов есть окружения, а внутри окружений конфигурации основные или дочерние. Внутри конфигураций сосредоточенно множество функций работы непосредственно с секретами и доступом к ним, аудит и прочее. При работе в Команде, в разделе с ролями появляется возможность гранулярно распределять доступ участников к нужным окружениям в проектах.
Что ещё есть в секретах?
Дублирование конфигураций - создавайте уникальные конфигурации для каждого пользователя.
Типы переменных — можно указать тип bool, int и др.
Генератор и комментарии — удобное добавление и аннотация секретов.
Напоминания — email-уведомления о необходимости обновить секрет.
Сравнение окружений — находите различия между конфигурациями.
Скрытие секретов — исключите из сравнения уникальные прод-переменные.
Сервисные ключи — API-ключи на чтение/запись для конкретной конфигурации.
Ограничение по IP — контроль доступа по CIDR.
История изменений — полный аудит всех действий.
⚙️ Работа в CLI

Естественно консольный клиент tuna полностью интегрирован:
tuna secrets download
— Получение секретов с возможностью сохранения в файл (json
,yaml
,env
) или вывода в stdout.tuna secrets setup
— Настройка каталога для конфигурации области действия.tuna secrets run
— Автоматическая конфигурация приложения с передачей переменных окружения непосредственно процессу. А с указанием флага--watch
, перезапуск приложения будет автоматический, при изменении секрета в личном кабинете.
VK плеер, если YouTube не работает ⬇️
?️ Управление доступом и безопасность
Шифрование — Все секреты шифруются внешним ключём и в случае компроминтации нашей базы данных, ваши секркты останутся анонимными.
RBAC в команде — Предоставляйте доступ к окружениям точечно по пользователям.
Сервисные ключи — Выпускайте уникальные ключи для конкретных конфигураций с ограничением на чтение или чтение и запись. Идеально подходит для использования в CI/CD.
Разрешенные IP адреса и подсети — Ограничивайте доступ к секретам, указывая разрешенные IP адреса и подсети в формате CIDR.
История изменений — Полный аудит всех действий и изменений внутри конфигураций позволяет отслеживать, кто и когда изменил секреты.
На этом у меня всё, спасибо что дочитали до конца ?
Тут я хочу напомнить, что Tuna - это платформа для разработчиков и их команд, нацеленная на ускорение разработки, упрощение командного взаимодействия и безопасностью.
Контакты
Более подробно все функции описаны у нас в документации по веб интерфейсу и консольному клиенту, а также множество примеров, надеюсь вам понравится работать с tuna.
Если возникли вопросы, можете задать их нам по почте info@tuna.am, тут в коментариях или нашем чате в telegram.
Комментарии (4)
dersoverflow
12.05.2025 11:54и снова каша из топора...
Сервис секретов предназначен для хранения настроек к вашим приложениям
Дано. Для "повышения безопасности", вы храните в СервисеСекретов "настройки" для приложений.
Вопрос: Где вы храните "настройки" для самого СервисаСекретов?заходи и бери, что хочешь??
opusmode
Прикольно. Сам в апреле начал пилить что-то подобное для внутряка. Может рассмотрю ваше. У меня несколько иная логика и несколько иной подход, но очень много схожего внутри
jidckii Автор
А можете поделиться, что у вас за логика? Может есть какие-то фишки которые нужны, а у нас ещё нет.
opusmode
Просто заточено под нас.
У вас cli с туннелем, а у меня редактирование и просмотр только через UI, а получение готового файла через API.
Т.е я могу отправить запрос вида /env/mysite/prod и получить нужное мне.
Ну плюс внешний oauth, своя проверка доступов, использование redis/valkey и pg, плюс fallback на sqlite (т.е я могу запустить приложение локально, даже просто из контейнера и мне не нужно больше ничего), при этом при обнаружении pg база будет смигрирована из sqlite.
Из минусов - я получаю только чистый текстовик, без json или yaml формата, так как они мне сейчас просто не нужны.
Фишки может и есть, но задачи разные - я хочу маленький и удобный инструмент, с понятной логикой, чтобы не тащить волт или конжур, а у вас продукт на широкую аудиторию.