Što je sigurnost na razini redaka?
Sigurnost na razini redaka (RLS) je značajka baze podataka koja odlučuje, redak po redak, koje zapise svaki korisnik smije čitati ili mijenjati, pa kupac vidi samo svoje narudžbe čak i ako aplikacija traži više.
Bez nje pravilo „korisnici vide samo svoje podatke“ živi u kodu aplikacije. Ako jedan ekran ili API zaboravi provjeriti, privatni podaci mogu procuriti.
Uz sigurnost na razini redaka pravilo živi u samoj bazi. Napišete pravilo poput „redak u narudžbama vidljiv je samo kad se customer_id podudara s prijavljenim korisnikom“, a baza ga primjenjuje na svaki upit.
Postgres podržava sigurnost na razini redaka, a neke backend usluge se na nju jako oslanjaju jer aplikacije razgovaraju s bazom izravno iz preglednika. U takvim postavkama tablica bez pravila može biti čitljiva svakome.
RLS je jedan sloj zaštite, a ne jedini. Aplikacije i dalje trebaju pravu prijavu, provjere na serveru i pažljivo rukovanje administratorskim pristupom.
Primjeri
- Klijenti u portalu vide samo svoje dokumente
- Svaki tim u alatu vidi samo svoje projekte
Pitanja
Trebam li sigurnost na razini redaka?
Ako vaša aplikacija sprema privatne podatke za mnogo korisnika i bilo koji dio izravno upituje bazu iz preglednika, da. Ako sav pristup ide kroz backend koji provjerava dopuštenja, RLS je dodatna sigurnosna mreža.
Je li sigurnost na razini redaka isto što i uloge?
Nije. Uloge opisuju kakav je netko korisnik, poput admina ili člana. Sigurnost na razini redaka koristi činjenice poput korisnikova ID-a ili uloge da odredi do kojih će točno redaka moći doći.
Pogledajte i
Mythex · Pricing · Izradite bilo što uz AI · Predlošci za web stranice i aplikacije · Mythex u usporedbi · Rječnik izrade aplikacija uz AI · Besplatni alati za izradu aplikacija uz AI · English