Если любой вошедший в систему пользователь может читать строки других пользователей, ваша база данных доверяет приложению. Я перемещаю правило в сам PostgreSQL с помощью политик безопасности на уровне строк и ролей, а затем доказываю с помощью тестов, что один пользователь не может получить доступ к данным другого пользователя.
Я настрою безопасность на уровне строк PostgreSQL, чтобы каждый пользователь видел только свои данные, включая Supabase
Проверка безопасности на уровне строк до 5 таблиц, с указанием каждого пробела запросом.
- Проверка до 5 таблиц
- Письменный отчет
- Примеры запросов
Политики и роли для до 10 таблиц, с тестами, подтверждающими соблюдение правил.
- Политики для до 10 таблиц
- Письменный отчет
- Примеры запросов
До 25 таблиц, ограничения плана в базе данных, миграции и тесты в CI.
- До 25 таблиц, ограничения плана, CI
- Письменный отчет
- Примеры запросов
Запросить индивидуальное предложение
Войдите, чтобы запросить пользовательское предложение
Создайте бесплатный аккаунт или войдите, чтобы запросить персонализированное предложение от этого Zinner.
Войти / ЗарегистрироватьсяЗадать вопрос перед покупкой
Войдите, чтобы задать вопрос
Чтобы снизить спам на платформе, сообщения перед продажей могут отправлять только авторизованные пользователи.
Создайте бесплатный аккаунт или войдите, чтобы написать сообщение этому Zinner напрямую.
Войти / ЗарегистрироватьсяТребуется вход
Создайте бесплатный аккаунт или войдите, чтобы написать сообщение этому Zinner.
Войти / ЗарегистрироватьсяТребуется вход
Создайте бесплатный аккаунт или войдите, чтобы запросить персонализированное предложение.
Войти / ЗарегистрироватьсяС первого взгляда
Ключевые детали об этой услуге, которые помогут вам решить. Создано Zinn Hub, не продавцом.
Позиция по стоимости
Уровень принудительного исполнения
Поддерживаемые платформы
Доказательство работы
Формат доставки
Что вы получите
Полное описание
Любое приложение с учетными записями пользователей, платными планами или несколькими командами в одной базе данных должно решить, кто может видеть какие строки. Если это правило живет только в коде приложения, оно терпит неудачу в первый раз, когда кто-то получает доступ к данным другим способом: новая конечная точка, которую кто-то забыл защитить, второе приложение в той же базе данных или API, который Supabase генерирует для ваших таблиц. Безопасность на уровне строк помещает правило туда, где находятся данные.
Я делал это для продукта по подписке под NDA: политики безопасности на уровне строк для таблиц и отдельная роль базы данных для каждого уровня подписки, так что то, что включает план, обеспечивается 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

создать любимое приложение replit app bolt volt supabase base44 отладка эксперт replit ai

исправляйте и создавайте веб-приложения с помощью инструментов AI supabase быстрое развёртывание и живой хостинг





