Наша платформа для разработчиков продолжает развиваться и сегодня я расскажу о новой функционале - Секреты. Сервис секретов предназначен для хранения настроек к вашим приложениям, которые вы запускаете - локально, в 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.