Bubble Secrets Scanner: як знайти та знешкодити витоки API-ключів у своєму MVP
Коли швидко збираєш MVP на Bubble без глибокого технічного бекграунду, секретні API-ключі легко опиняються в браузері користувача. Новий Secrets Scanner допомагає знайти такі витоки. Але виправити налаштування в редакторі мало.
Типова ситуація: треба швидко запустити MVP, перевірити ідею на перших користувачах і піти до інвесторів. Безпека в такому темпі відходить на другий план. Вайбкодінг і no-code дають зібрати робочий продукт за кілька днів. Підключаєш Stripe для оплат, OpenAI для генерації, зовнішні сервіси через API Connector. А потім одна пропущена галочка в налаштуваннях відкриває твої секретні ключі будь-кому, хто вміє відкрити панель розробника в браузері. Поруч із цим: Bubble AI planning sessions: структуровані. Схожий розбір: Скільки коштує Bubble для MVP:.
Наслідки цілком реальні: несанкціонований доступ до даних і несподівані списання за рахунками сторонніх API. Таке може зупинити проєкт ще до першого серйозного раунду.
Що нового: Secrets Scanner у Security Dashboard
Bubble вбудував перевірку на витік ключів, Secrets Scanner, у свій Security Dashboard. Цей сервіс виріс із Flusk, а в жовтні 2025 року завершилася його міграція на scan.bubble.io. Сканер сам проходить по додатку й шукає API-ключі та конфіденційні дані, які помилково потрапили в клієнтський код сторінки. Поруч із цим: Cursor Rollouts та Security Review:. Про це окремо: AMA: conversational generation ≠ Agent.
Команда Bubble каже, що лише за перший тиждень після запуску інструмент знайшов відкриті ключі в сотнях додатків. Це оцінка самого вендора. Базовий аудит сканер справді спрощує. Але магічною пігулкою я б його не вважав. Поруч із цим: Bubble MVP: що зібрати першим,.
Як влаштований процес перевірки
- Запуск аудиту: сканування запускаєш на сторінці
scan.bubble.io. - Виявлення проблеми: у звіті з'являється попередження з типом «Secret key exposure». В офіційній документації ця категорія називається «Sensitive credentials or parameters exposed».
- Локалізація: у бічній панелі видно контекст витоку, точне місце проблеми в додатку і частково замаскований ключ, щоб ти зрозумів, про який саме ключ ідеться.
- Перехід до виправлення: кнопка «Fix in the editor» веде прямо на проблемне місце в редакторі Bubble.

Де найчастіше виникають витоки у нон-тех фаундерів
- API Connector без галочки «Private»: якщо параметр у виклику API не позначений як приватний, він іде прямо в браузер користувача. Правильно налаштовані поля шифруються на сервері, і клієнт їх не бачить.
- Публічні поля в плагінах: у деяких сторонніх плагінах є конфігураційні поля, які читає фронтенд. Секретні ключі туди класти не можна.
- Виклики API на фронтенді: чутливі запити виконуються у воркфлоу на сторінці, а не в Backend Workflows.
- Токени у відкритих посиланнях: наприклад,
api_tokenпрямо в URL вебхука. Про це часто пишуть на форумі Bubble в обговореннях Stripe, бо такі URL можуть зберігатися у відкритому вигляді в історії викликів.
Чотири обов'язкові кроки захисту (Mitigation)
Якщо сканер показав, що ключ скомпрометовано, однієї зміни налаштувань у редакторі Bubble мало. Я роблю так:
- Одразу анулюй і заміни ключ (Rotate Credentials): Це критичний крок. Офіційна документація Bubble окремо наголошує на ньому для Stripe. Якщо ключ потрапив у клієнтський код, я виходжу з того, що його вже скопіювали. Заходиш у кабінет сервісу (Stripe, OpenAI тощо), видаляєш скомпрометований ключ і генеруєш новий.
- Захисти зберігання в Bubble: Перевір, що всі ключі в API Connector позначені як «Private» або лежать у захищених полях плагінів.
- Перенеси критичну логіку на бекенд: Усе, що стосується грошей чи приватних API, має йти через Backend Workflows, а не через дії на сторінці додатку.
- Перевір, що в URL немає токенів: Прибери конфіденційні параметри з адрес вебхуків і параметрів URL. Про це окремо: OpenAI Agents API (public beta):.

Чесні обмеження автоматизації
Офіційна документація Bubble прямо попереджає, що автоматичне виявлення може пропускати нестандартні випадки. До того ж Secrets Scanner перевіряє лише, чи видно ключі. Від відсутніх Privacy Rules, помилок у правах доступу чи відсутніх лімітів на використання API у твого провайдера він не захищає.
Я використовую scan.bubble.io як регулярну першу лінію оборони. Але безпеку MVP насправді тримають дві речі: чутливі дані ізольовані на сервері, а ключі швидко ротуються за найменшої підозри на витік.