Supabase / PostgREST: запретить выбор нескольких

Я создаю приложение supabase. Вместо логина каждый пользователь получает uuid (или несколько, если он хочет). Каждый, кто знает uuid, имеет полный доступ к данным, лежащим в основе этого uuid.

Таким образом, в основном база данных открыта для всех, если вы используете любой действительный uuid для записи / чтения ваших материалов.

Теперь проблема: я не хочу, чтобы пользователи могли выбирать все записи в таблице. Я хочу обеспечить, чтобы каждый запрос имел условие where id = xxx. Конечно, я мог бы сделать это в своем приложении, но этого недостаточно, поскольку мы никогда не должны доверять клиенту ... Мне нужно обеспечить это в бэкэнде (то есть в postgrest / supabase).

В firestore разрешение на чтение разбито, поэтому я могу просто разрешить get и запретить listи мне хорошо идти. Есть что-то подобное в postgrest / supabase?

1 ответ

Я хочу добиться, чтобы в каждом запросе было условие id = xxx.

Это именно то, что сделала бы PostgreSQL политикаRLS .

У вас есть несколько примеров в документации supabase:

https://supabase.io/docs/guides/auth#policy-examples

Другие вопросы по тегам