Перейти до вмісту

Безпека зрозумілою мовою

Короткі матеріали про те, що насправді ламається в застосунках, зібраних на інтуїції, і що з цим робити.

Основи безпеки

New row violates row-level security policy в Supabase. Що далі?

"New row violates row-level security policy" означає, що Supabase відмовив у записі. Швидке виправлення знову відкриває таблицю для всіх.

Основи безпеки

Чи є вайлдкард CORS ризиком для безпеки? Майже ніколи.

Чи є вайлдкард CORS ризиком для безпеки? Зазвичай це типове налаштування вашого білдера, і воно не видає нічого, що ваш сервер і так віддавав кожному.

Backups

Branching у Supabase це не бекап. Він іде тільки вперед.

Чому branching у Supabase це не бекап: гілка стартує без ваших даних, а мердж переносить саму лише схему. Для чого він потрібен і що брати замість нього.

Backups

Як відновити резервну копію Supabase, і що ламається потім

Як відновити резервну копію Supabase з панелі або з файлу дампа, що саме замінює відновлення і чому ваш застосунок може лишитися зламаним після нього.

Основи безпеки

Ваш бакет Supabase Storage публічний. Чи це проблема?

Публічний бакет Supabase Storage означає, що той, хто має URL файлу, може його відкрити. Він не означає, що хтось може переглянути список вмісту.

Основи безпеки

Чи є проблемою ключ API Google у вашому браузері?

Ключ API Google у відкритому коді сторінки наш сканер знаходить найчастіше, і зазвичай усе гаразд. Вирішує це одне безкоштовне налаштування.

Backups

ШІ-агент видалив мої дані в Supabase. Що можна відновити?

ШІ-агент видалив дані з вашої бази. Те, що ви зможете відновити, вирішилося раніше, а наступні хвилини вирішують, скільки з цього вціліє.

Основи безпеки

Чи може будь-хто прочитати вашу базу Supabase? 3 680 застосунків

Чи може будь-хто прочитати вашу базу даних Supabase без входу? Ми просканували 30 998 живих застосунків, зроблених ШІ-білдерами, і виміряли, як часто так.

Основи безпеки

Відкриті source maps: ваш застосунок публікує свій вихідний код

Відкрита source map дає будь-кому прочитати оригінальний код вашого застосунку, разом із коментарями. Перевірка за 30 секунд, і що важить насправді.

Основи безпеки

Нові API-ключі Supabase: який із них безпечний у застосунку?

Supabase замінив anon і service_role публічними та секретними ключами. Який із них має бути у вашому застосунку, а який не має бути ніколи?

Backups

Чи робить Supabase резервні копії моєї бази? Залежить від тарифу.

Чи робить Supabase резервні копії вашої бази даних? На платних тарифах щодня, на безкоштовному жодної. Як дізнатися, що у вас насправді є.

Основи безпеки

Supabase Row Level Security увімкнено. Таблиця досі публічна.

Увімкнути Supabase Row Level Security не означає захистити таблицю. Захищають політики, а та, що полагодила застосунок, часто впускає всіх.

Backups

Історія версій не є резервною копією. Вона не поверне таблицю.

Lovable і Bolt ведуть історію версій вашого коду. Ваша база даних працює як окремий сервіс, тож відкат назад не поверне ваші дані.

Backups

Три способи зробити резервну копію бази Supabase, і чого бракує

Панель, pg_dump і керований сервіс. Що насправді зберігає кожен спосіб, що тихо лишає осторонь і який із них переживе втрату акаунта.

Основи безпеки

Які API-ключі безпечні у браузері, а які ні

Ваш ключ anon у Supabase створений, щоб бути публічним. Ключ service_role для цього не створений, і він ігнорує всі правила, які ви задали. Як їх розрізнити.

Усе тут пише експерт із безпеки, і адресовано це тому, хто натиснув «Опублікувати».

Vlad Tkachenko