Supabase krok po kroku: pierwsza tabela, zabezpieczenia i połączenie z aplikacją
Samouczek Supabase: projekt, pierwsza tabela, Row Level Security, adres i klucz publiczny, połączenie z aplikacją, logowanie użytkowników i pliki.

Spis treści 10
- Zanim zaczniesz: zaplanuj dane
- Krok 1. Projekt
- Krok 2. Pierwsza tabela
- Krok 3. Zabezpieczenie tabeli, czyli Row Level Security
- Krok 4. Adres projektu i klucz publiczny
- Krok 5. Połączenie z aplikacją
- Krok 6. Logowanie i pliki
- Najczęstsze błędy na starcie
- Kiedy przejść na plan Pro
- Jak sprawdzić, czy dane są bezpieczne
👁 170 przeczytań
- Pierwszą tabelę w Supabase, z której czyta aplikacja, można postawić w około kwadrans, korzystając z edytora tabel lub SQL Editor.
- Tabela bez włączonego Row Level Security udostępniona przez API to najczęstsza przyczyna wycieków danych w szybko budowanych aplikacjach.
- Plan darmowy wstrzymuje nieużywane projekty, więc gdy aplikacja ma prawdziwych użytkowników, konieczne jest przejście na plan Pro.
Supabase daje gotowe zaplecze aplikacji: bazę danych, logowanie użytkowników, pliki i automatyczne API, a pierwszą tabelę, z której czyta Twoja aplikacja, postawisz w kwadrans. W tym samouczku idę po kolei od pustego projektu do danych wyświetlanych w aplikacji, z jednym krokiem, którego nie wolno pominąć: zabezpieczeniem tabeli.
Kroki opieram na oficjalnych przewodnikach Supabase. Czym jest sama platforma i dlaczego tak często wybierają ją osoby budujące z AI, opisałem w przewodniku po Supabase.
Zanim zaczniesz: zaplanuj dane
Zanim założysz pierwszą tabelę, zapisz na kartce, jakie dane aplikacja przechowuje i kto może je widzieć. Na przykład: zajęcia widzą wszyscy, rezerwację widzi tylko osoba, która ją zrobiła, i prowadząca. Z takiej notatki od razu wynikają zasady dostępu, które potem wpiszesz w Row Level Security. Planowanie zasad po zbudowaniu aplikacji kończy się zwykle tym, że część tabel zostaje bez nich.
Krok 1. Projekt
Po założeniu konta tworzysz nowy projekt w panelu swojej organizacji. Podajesz nazwę, hasło do bazy danych i region. Hasło zapisz od razu w menedżerze haseł, bo będzie potrzebne przy bezpośrednim łączeniu się z bazą, a region wybierz jak najbliżej użytkowników, dla Polski najbliższy europejski.
Po kilku minutach projekt jest gotowy, a pod spodem działa zwykły PostgreSQL, który w razie przeprowadzki zabierzesz gdziekolwiek.
Krok 2. Pierwsza tabela
Tabelę możesz założyć w edytorze tabel, klikając jak w arkuszu, albo w edytorze SQL. Oficjalny przewodnik pokazuje wersję z SQL Editor: tworzysz prostą tabelę, na przykład listę instrumentów z identyfikatorem i nazwą, i dodajesz kilka przykładowych wierszy. Nawet jeśli nie znasz SQL, polecenia z przewodnika wystarczy skopiować i uruchomić.
Krok 3. Zabezpieczenie tabeli, czyli Row Level Security
To krok, od którego zależy, czy Twoje dane są bezpieczne. Row Level Security to zasady określające, kto może czytać i zmieniać które wiersze. Oficjalny przewodnik włącza ją dla tabeli i dodaje regułę, która pozwala wszystkim tylko czytać listę instrumentów. Dla publicznej listy to w porządku. Dla danych klientów reguła musi pozwalać każdemu widzieć wyłącznie własne wiersze.
Tabela bez tych zasad, udostępniona przez API, to najczęstsza przyczyna wycieków w aplikacjach budowanych szybko. Pisałem o tym szerzej w przewodniku. Zasada jest prosta: żadna tabela z danymi użytkowników nie trafia do aplikacji bez włączonych zasad dostępu.
Krok 4. Adres projektu i klucz publiczny
Aplikacja potrzebuje dwóch rzeczy, które znajdziesz w panelu Connect w projekcie: adresu projektu i klucza publicznego. Wklejasz je do pliku z ustawieniami aplikacji. Klucz publiczny może trafić do przeglądarki, bo o dostępie do danych decydują zasady z poprzedniego kroku.
Jeśli aplikacja nie widzi danych, sprawdź, czy w ustawieniach integracji włączone jest Data API.
Krok 5. Połączenie z aplikacją
Supabase ma gotowe przewodniki dla kilkunastu technologii, od Next.js, Reacta i Vue po Fluttera, Pythona i Laravela. W przypadku Next.js cały start sprowadza się do jednego polecenia tworzącego aplikację z gotowym połączeniem, wklejenia adresu i klucza, a potem napisania strony, która pobiera dane z tabeli. Po uruchomieniu aplikacji widzisz na stronie wiersze dodane w kroku drugim.
Jeśli budujesz w Lovable albo podobnym narzędziu, większość tych kroków wykonuje ono za Ciebie, ale sprawdzenie zasad dostępu nadal należy do Ciebie.
Krok 6. Logowanie i pliki
Gdy tabela działa, kolejne elementy dokładasz tak samo. Logowanie użytkowników włączasz w sekcji uwierzytelniania, wybierając metody, na przykład e-mail albo konto Google. Pliki, jak zdjęcia profilowe czy załączniki, trzymasz w magazynie plików, który także ma własne zasady dostępu. Dla bardziej złożonej logiki są funkcje uruchamiane po stronie serwera.
Najczęstsze błędy na starcie
- Tabela bez zasad dostępu udostępniona w aplikacji.
- Klucz serwisowy w kodzie przeglądarki zamiast klucza publicznego.
- Region na drugim końcu świata, przez co każde zapytanie trwa dłużej.
- Brak kopii zapasowej przed większymi zmianami w strukturze bazy.
Kiedy przejść na plan Pro
Plan darmowy wystarcza do nauki i prototypów, ale nieużywane projekty są na nim wstrzymywane. Gdy aplikacja ma prawdziwych użytkowników, projekt nie może zasypiać, i wtedy plan Pro przestaje być opcją.
Czytasz Promptowego częściej? Dodaj go do preferowanych źródeł w Google, a nowe teksty będą wyżej w Twoich wynikach.
Jak sprawdzić, czy dane są bezpieczne
Po podłączeniu aplikacji zaloguj się jako dwie różne osoby i sprawdź, czy każda widzi tylko swoje dane. To najprostszy test, który wyłapuje najgroźniejsze błędy. Przejrzyj też w panelu listę tabel i upewnij się, że każda udostępniona w API ma włączone zasady dostępu. Supabase ostrzega w panelu przed tabelami bez tych zasad, więc warto tych ostrzeżeń nie ignorować.
Supabase Pro na 12 miesięcy, w formie kredytów na Twoim koncie, sprzedaję w sklepie kinetyka.pl.
Najczęstsze pytania
Co to jest Row Level Security w Supabase i jak to włączyć?
Row Level Security to zasady określające, kto może czytać i zmieniać które wiersze w tabeli. Włącza się je dla konkretnej tabeli i dodaje reguły - np. pozwalające wszystkim czytać publiczną listę, albo każdemu użytkownikowi widzieć wyłącznie własne wiersze.
Jakich dwóch rzeczy potrzebuje aplikacja, żeby połączyć się z Supabase?
Aplikacja potrzebuje adresu projektu i klucza publicznego, które znajdziesz w panelu Connect w projekcie. Klucz publiczny może trafić do przeglądarki, ponieważ o dostępie do danych decydują zasady Row Level Security.
Dla jakich technologii Supabase ma gotowe przewodniki połączenia?
Supabase ma gotowe przewodniki dla kilkunastu technologii, m.in. Next.js, React, Vue, Flutter, Python i Laravel. W przypadku Next.js start sprowadza się do jednego polecenia tworzącego aplikację z gotowym połączeniem.
Jak sprawdzić, czy dane w Supabase są odpowiednio zabezpieczone?
Należy zalogować się jako dwie różne osoby i sprawdzić, czy każda widzi tylko swoje dane. Dodatkowo w panelu trzeba przejrzeć listę tabel i upewnić się, że każda udostępniona w API ma włączone zasady dostępu - Supabase ostrzega w panelu przed tabelami bez tych zasad.

Autor
Twórca i autor Promptowego, polskiego serwisu o sztucznej inteligencji. Codziennie śledzi premiery modeli, narzędzia i regulacje AI, i tłumaczy je prostym, konkretnym językiem.
Czytaj dalej
Artykuły · Resend krok po kroku: klucz API, weryfikacja domeny i pierwszy mail z aplikacjiSamouczek Resend: klucz API, pierwszy mail, weryfikacja domeny w DNS, szablony w React Email i podgląd wysyłek. Z przykładem maila powitalnego.
Premium · Jak zaplanować podróż z AI: krok po krokuJak zaplanować podróż z pomocą AI - krok po kroku, z gotowymi promptami do skopiowania i podpowiedzią, które narzędzie wybrać.
Premium · Jak napisać życzenia z AI: krok po krokuJak napisać życzenia z pomocą AI - krok po kroku, z gotowymi promptami do skopiowania i podpowiedzią, które narzędzie wybrać.- generatornia.plAndrzejki AI: wróżby, lanie wosku i zdjęcia krok po kroku
- przelomowy.plHalucynacje AI w sądach: baza Charlotina po roku liczy ponad 1300 przypadków
- dygot.plOkulary Samsunga i Google z Gemini XR już są. Wyglądają jak zwykłe, a widzą wszystko
- jutropis.plUstawa o AI podpisana. Skargi do KRiBSI i testy dla firm


