supabase-rls-policy-generator
This skill should be used when the user requests to generate, create, or add Row-Level Security (RLS) policies for Supabase databases in multi-tenant or role-based applications. It generates comprehensive RLS policies using auth.uid(), auth.jwt() claims, and role-based access
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
This skill should be used when the user requests to generate, create, or add Row-Level Security (RLS) policies for Supabase databases in multi-tenant or role-based applications. It generates comprehensive RLS policies using auth.uid(), auth.jwt() claims, and role-based access patterns. Trigger terms include RLS, row level security, supabase security, generate policies, auth policies, multi-tenant security, role-based access, database security policies, supabase permissions, tenant isolation.
How to use
Przygotuj schemat bazy danych — zbierz ścieżkę do pliku schematu lub listę nazw tabel, które wymagają ochrony RLS. Narzędzie przeanalizuje strukturę tabel, klucze obce i relacje między nimi.
Zdefiniuj model bezpieczeństwa — określ, czy aplikacja jest wielodostępowa (izolacja tenant_id), oparta na rolach (admin, użytkownik, widz) czy hybrydowa. Wskaż, czy istnieją zasoby publiczne i prywatne, czy użytkownicy mogą udostępniać zasoby między kontami, oraz czy występują hierarchiczne uprawnienia (organizacja > zespół > użytkownik).
Zidentyfikuj wymagania dostępu — określ, jakie operacje (SELECT, INSERT, UPDATE, DELETE) każda rola powinna móc wykonywać. Narzędzie będzie generować odpowiednie polityki dla każdego typu dostępu.
Wygeneruj polityki RLS — narzędzie utworzy polityki SELECT (kontrola odczytu), INSERT (kontrola tworzenia), UPDATE (kontrola edycji) i DELETE (kontrola usuwania) dla każdej tabeli. Każda polityka będzie wykorzystywać auth.uid() do identyfikacji użytkownika i auth.jwt() do weryfikacji roli.
Przejrzyj i dostosuj wygenerowany kod SQL — sprawdź wygenerowane instrukcje ALTER TABLE i polityki. Możesz je modyfikować w zależności od specyficznych wymagań aplikacji przed wdrożeniem w bazie danych.
Wdróż polityki w Supabase — zastosuj wygenerowany kod SQL w konsoli Supabase lub za pośrednictwem migracji bazy danych, aby aktywować RLS i zastosować polityki bezpieczeństwa.