💡 Ábrák
2
🖼️ Magyarázó ábrák
×
A pénzről a szerver dönt
ROSSZ — a frontend dönt
Frontend állítja:
fizetett = igaz
✗ a user átírja a böngészőben
→ ingyen kap mindent
JÓ — a szerver dönt
Vásárló fizet
hosted checkout oldal
Webhook → szerver
ellenőrzi az aláírást
✓ hozzáférés
DB-ben jelölve, RLS adja
A fizetés ténye a DB-ben él, nem a böngészőben.
A hozzáférést végül az RLS tartatja be (Modul 2).
Webhook-aláírás — ki küldte valójában?
Szolgáltató (Stripe)
esemény + aláírás 🔏
Szerver: aláírás OK
a titkos kulccsal igazol
✓ elfogad → hozzáférés
Támadó
„fizetett" — aláírás NÉLKÜL
Szerver: nincs aláírás
nem igazolható
✗ elutasítja
Idempotencia: ugyanaz az esemény kétszer is jöhet — event ID-vel kiszűröd, hogy ne dupláz.
Hasonlat:
az aláírás egy pecsét, amit csak a szolgáltató tud ráütni a titkos kulccsal. Nincs pecsét → nem hiszed el.