Hvad er row-level security?
Row-level security (RLS) er en databasefunktion, der afgør, række for række, hvilke poster hver bruger må læse eller ændre, så en kunde kun ser sine egne ordrer, selv hvis appen beder om mere.
Uden den lever reglen „brugere ser kun deres egne data“ i appens kode. Hvis en skærm eller en API glemmer at tjekke, kan private data lække.
Med row-level security lever reglen i selve databasen. Du skriver en politik som „en række i orders er kun synlig, når dens customer_id matcher den indloggede bruger“, og databasen anvender den på hver forespørgsel.
Postgres understøtter row-level security, og nogle backend-tjenester er stærkt afhængige af det, fordi deres apps taler direkte med databasen fra browseren. I de opsætninger kan en tabel uden politik være læsbar for alle.
RLS er ét lag beskyttelse, ikke det eneste. Apps har stadig brug for ordentligt login, tjek på serveren og omhyggelig håndtering af adgang for admins.
Eksempler
- Kunder i en portal ser kun deres egne dokumenter
- Hvert team i et værktøj ser kun sine egne projekter
Spørgsmål
Har jeg brug for row-level security?
Hvis din app gemmer private data for mange brugere, og en del af den forespørger databasen direkte fra browseren, så ja. Hvis al adgang går gennem en backend, der tjekker tilladelser, er RLS et ekstra sikkerhedsnet.
Er row-level security det samme som roller?
Nej. Roller beskriver, hvilken type bruger nogen er, for eksempel admin eller medlem. Row-level security bruger forhold som brugerens id eller rolle til at afgøre, hvilke bestemte rækker de må nå.
Se også
Mythex · Pricing · Byg hvad som helst med AI · Skabeloner til websites og apps · Mythex sammenlignet · Ordliste for app-bygning med AI · Gratis værktøjer til app-bygning med AI · English