Wat is row-level security?
Row-level security (RLS) is een databasefunctie die rij voor rij bepaalt welke records elke gebruiker mag lezen of wijzigen, zodat een klant alleen zijn eigen bestellingen ziet, ook als de app om meer vraagt.
Zonder dit zit de regel „gebruikers zien alleen hun eigen data” in de code van de app. Als één scherm of API het controleren vergeet, kunnen privégegevens lekken.
Met row-level security zit de regel in de database zelf. Je schrijft een beleid zoals „een rij in orders is alleen zichtbaar wanneer de customer_id overeenkomt met de ingelogde gebruiker”, en de database past dat toe op elke query.
Postgres ondersteunt row-level security, en sommige backenddiensten vertrouwen er sterk op omdat hun apps rechtstreeks vanuit de browser met de database praten. In die opzetten kan een tabel zonder beleid door iedereen leesbaar zijn.
RLS is één beschermingslaag, niet de enige. Apps hebben nog steeds goed inloggen, controles aan de serverkant en zorgvuldig beheer van beheerderstoegang nodig.
Voorbeelden
- Klanten in een portaal zien alleen hun eigen documenten
- Elk team in een tool ziet alleen zijn eigen projecten
Veelgestelde vragen
Heb ik row-level security nodig?
Als je app privégegevens van veel gebruikers opslaat en een deel ervan rechtstreeks vanuit de browser de database bevraagt, ja. Als alle toegang via een backend loopt die rechten controleert, is RLS een extra vangnet.
Is row-level security hetzelfde als rollen?
Nee. Rollen beschrijven wat voor soort gebruiker iemand is, zoals beheerder of lid. Row-level security gebruikt feiten zoals het id of de rol van de gebruiker om te bepalen tot welke specifieke rijen die toegang heeft.
Zie ook
Mythex · Pricing · Bouw alles met AI · Website- en app-templates · Mythex vergeleken · Woordenlijst voor apps bouwen met AI · Gratis tools voor apps bouwen met AI · English