API təhlükəsizliyi: autentifikasiya, limit və obyekt səviyyəli icazə
·9 dəq oxu·API · BOLA · rate limit
API-lərdə ən çox rastlanan zəiflik BOLA-dır: sorğudaki identifikatoru dəyişməklə başqasının məlumatını almaq. Freymvork bunu avtomatik qorumur.
Əsas qaydalar
- Hər sorğuda obyektin həmin istifadəçiyə aid olduğunu server tərəfində yoxlayın
- Verilənlər bazası səviyyəsində sətir səviyyəli təhlükəsizlik (RLS) siyasətləri qurun
- Bütün giriş məlumatını sxem ilə validasiya edin (Zod və ya bənzəri)
- Sürət limiti və şübhəli davranış üçün blok tətbiq edin
- Cavabda yalnız lazım olan sahələri qaytarın — obyekti bütövlükdə göndərməyin
- Versiyalaşdırma edin və köhnə endpointləri bağlayın
create policy "own rows only"
on public.invoices for select
to authenticated
using (user_id = auth.uid());