Якщо будь-який авторизований користувач може читати рядки інших користувачів, ваша база даних довіряє програмі. Я переміщую правило в сам PostgreSQL за допомогою політик безпеки на рівні рядків та ролей, а потім доводжу тестами, що один користувач не може отримати доступ до даних іншого користувача.
Я налаштую безпеку на рівні рядків PostgreSQL, щоб кожен користувач бачив лише власні дані, включно з Supabase
Перевірка безпеки на рівні рядків до 5 таблиць, з кожним виявленим пропуском, показаним запитом.
- Перевірка до 5 таблиць
- Письмовий звіт
- Приклади запитів
Політики та ролі для до 10 таблиць, з тестами, що доводять дійсність правил.
- Політики для до 10 таблиць
- Письмовий звіт
- Приклади запитів
До 25 таблиць, обмеження плану в базі даних, міграції та тести в CI.
- До 25 таблиць, обмеження плану, CI
- Письмовий звіт
- Приклади запитів
Запит індивідуальної пропозиції
Увійдіть, щоб запросити індивідуальну пропозицію
Створіть безкоштовний обліковий запис або увійдіть, щоб запросити персоналізовану пропозицію від цього Zinner.
Увійти / ЗареєструватисяЗадати питання перед продажем
Увійдіть, щоб задати питання
Щоб зменшити спам на платформі, повідомлення перед продажем можуть надсилати лише зареєстровані користувачі.
Створіть безкоштовний обліковий запис або увійдіть, щоб надіслати повідомлення цьому Zinner безпосередньо.
Увійти / ЗареєструватисяПотрібен вхід
Створіть безкоштовний обліковий запис або увійдіть, щоб надіслати повідомлення цьому Zinner.
Увійти / ЗареєструватисяПотрібен вхід
Створіть безкоштовний обліковий запис або увійдіть, щоб надіслати запит на персоналізовану пропозицію.
Увійти / ЗареєструватисяКороткий огляд
Ключові деталі про цю послугу, які допоможуть вам прийняти рішення. Згенеровано Zinn Hub, а не продавцем.
Ціннісна пропозиція
Рівень примусового виконання
Підтримувані платформи
Доказ роботи
Формат доставки
Що ви отримаєте
Повний опис
Будь-яка програма з обліковими записами користувачів, платними планами або кількома командами в одній базі даних повинна вирішити, хто може бачити які рядки. Якщо це правило існує лише в коді програми, воно зазнає невдачі, як тільки хтось отримає доступ до даних іншим способом: нова кінцева точка, яку хтось забув захистити, друга програма в тій самій базі даних або API, який Supabase генерує для ваших таблиць. Безпека на рівні рядків розміщує правило там, де знаходяться дані.
Я робив це для продукту за підпискою під угодою про нерозголошення: політики безпеки на рівні рядків для таблиць та окрема роль бази даних для кожного рівня підписки, тому те, що включає план, забезпечується PostgreSQL, а не перевіркою, яку хтось може забути.
У Starter я переглядаю політики, які мають або не мають до п'яти таблиць, і надсилаю письмовий список прогалин з прикладом запиту, який показує кожну. Standard пише або виправляє політики для до десяти таблиць, налаштовує ролі, необхідні вашій програмі, надає їх як файли міграції та додає тести, в яких користувач A намагається читати та змінювати рядки користувача B і зазнає невдачі. Advanced охоплює до двадцяти п'яти таблиць, додає обмеження плану або рівня, що застосовуються в базі даних, і запускає тести в CI.
На Supabase застосовуються ті ж функції PostgreSQL, з auth.uid() та JWT-заявами, що використовуються в політиках. На чистому PostgreSQL політики читають поточного користувача з налаштування сесії, яке ваш бекенд встановлює для кожного запиту.
Без дзвінків. Кожен пакет завершується простою запискою про те, хто що може бачити; у пакетах Standard та Advanced політики також надходять як міграції у ваш репозиторій разом з тестами. Протягом 14 днів після доставки я безкоштовно виправляю все, що не працює, як ми домовились.
Кроки для завершення вашого проекту
1. Складіть карту даних — я перераховую таблиці, хто володіє кожним рядком і хто повинен його читати або змінювати: власники, члени команди, адміністратори, кожен план.
2. Перегляньте існуюче — поточні політики, дозволи та ролі перевіряються за цією картою, і кожна прогалина записується із запитом, який її показує.
3. Політики та ролі — політики пишуться для кожної таблиці та для кожної дії, з ролями для планів або команд, як файли міграції, які ви можете переглянути.
4. Доведіть це — тести входять як різні користувачі та намагаються читати та змінювати дані один одного. Кожна заборонена дія повинна зазнати невдачі, а кожна дозволена — працювати.
5. Передача — коротка записка простими словами про те, хто що може бачити, міграції та як додати політику, коли з'явиться нова таблиця.
Гарантія якості Zinner
Кожен Zinner перевіряється та затверджується перед приєднанням до платформи.
Усі послуги підкріплені нашою гарантією якості.
Ваш платіж захищений, доки ви не затвердите виконану роботу.
Порівняти пакети
| Функція | Стартер | Стандартний | Розширений |
|---|---|---|---|
| Час доставки | 2 днів | 5 днів | 10 днів |
| Ревізії | 1 | 2 | 3 |
| Обсяг | Перевірка до 5 таблиць | Політики для до 10 таблиць | До 25 таблиць, обмеження плану, CI |
| Письмовий звіт | ✓ | ✓ | ✓ |
| Приклади запитів | ✓ | ✓ | ✓ |
Деталі послуги
Часті запитання
Перевірки додатків захищають шляхи, які ви пам'ятаєте. Безпека на рівні рядків охоплює кожен запит, який виконується під ролями бази даних вашого додатка, включаючи кінцеві точки, додані пізніше, та прямі виклики до API Supabase. Суперкористувач, власники таблиць та сервісний ключ Supabase обходять її за задумом, тому ці облікові дані залишаються на сервері. Більшість команд зберігають обидва види перевірок.
Може, якщо політика викликає повільну функцію або пропускає індекс. Я пишу політики з урахуванням цього, і огляд перераховує будь-яку політику, яка потребує індексу.
Ні. Схеми без даних достатньо для написання та тестування політик. Тести запускаються на тестових даних, які я створюю.
Ні. Безпека на рівні рядків у цій формі є функцією PostgreSQL, і ця служба побудована на основі PostgreSQL.
Відгуки клієнтів
Подивіться, що наші клієнти говорять про цей Zinn
Категорії
Політики Zinner
Пов'язані Zinns

створити чудовий mvp-додаток ai saas, чудове розгортання розробки, чудове, абсолютно нове, bolt

Я розроблю преміальні зображення для лістингу товарів на Amazon з 3D-рендерингом

створити власну веб-розробку з платформою ШІ v0, lovable, bolt, replit




