Mi az a sorszintű biztonság?
A sorszintű biztonság (RLS) olyan adatbázis-funkció, amely sorról sorra eldönti, mely rekordokat olvashat vagy módosíthat az egyes felhasználó, így egy vásárló csak a saját rendeléseit látja akkor is, ha az app többet kér.
Ennek hiányában a „a felhasználók csak a saját adataikat látják” szabály az app kódjában él. Ha egy képernyő vagy API elfelejti ellenőrizni, privát adatok szivároghatnak ki.
Sorszintű biztonsággal a szabály magában az adatbázisban van. Írsz egy szabályzatot, például „az orders tábla egy sora csak akkor látható, ha a customer_id egyezik a bejelentkezett felhasználóval”, és az adatbázis minden lekérdezésre alkalmazza.
A Postgres támogatja a sorszintű biztonságot, és egyes backend-szolgáltatások nagyban építenek rá, mert appjaik közvetlenül a böngészőből beszélnek az adatbázissal. Ilyen felépítésnél szabályzat nélküli tábla bárki számára olvasható lehet.
Az RLS csak egy védelmi réteg, nem az egyetlen. Az appoknak továbbra is rendes bejelentkezés, szerveroldali ellenőrzések és gondos adminhozzáférés-kezelés kell.
Példák
- Ügyfelek egy portálban csak a saját dokumentumaikat látják
- Egy eszközben minden csapat csak a saját projektjeit látja
Kérdések
Kell sorszintű biztonság?
Ha az appod sok felhasználó privát adatait tárolja, és bármely része közvetlenül a böngészőből kérdez az adatbázisból, igen. Ha minden hozzáférés olyan backenden megy keresztül, amely ellenőrzi a jogosultságot, az RLS extra biztonsági háló.
Ugyanaz a sorszintű biztonság, mint a szerepkörök?
Nem. A szerepkörök azt írják le, milyen típusú felhasználó valaki, például admin vagy tag. A sorszintű biztonság a felhasználó azonosítója vagy szerepköre alapján dönti el, mely konkrét sorokat érheti el.
Lásd még
Mythex · Pricing · Építs bármit AI-val · Weboldal- és alkalmazássablonok · A Mythex összehasonlítva · AI-alapú alkalmazásépítési szószedet · Ingyenes eszközök AI-alapú alkalmazásépítéshez · English