13. diel - Zabezpečenie endpointov v Node.js na rolu administrátora
V minulej lekcii, Autentizácia, autorizácia a registrácia užívateľov v Node.js , sme si vysvetlili rozdiel medzi autentizáciou a autorizáciou a následne naprogramovali registráciu užívateľov.
V tomto Node.js tutoriále pridáme autorizáciu na rolu administrátora na endpointy nášho API, ktoré upravujú dáta a preto by nemali byť verejné.
Route handlers
Route handler je funkcia, ktorá sa vykoná pred
spracovaním požiadavky u zvolených endpointov. Doteraz sme si
ukazovali spracovávanie požiadavky iba jedným callbackom. Týchto callbackov
ale môže byť viac a hovorí sa im práve route handlers. Každý v rade
môže rozhodnúť, či sa má zavolať ten ďalší, alebo či už môžeme
odpoveď na požiadavku odoslať späť klientovi. Máme tak skvelú
príležitosť nevykonať ďalšiu obsluhu endpointu v prípade, že sa
užívateľa nepodarí autorizovať. Ďalší handler zadávame ako
parameter route handleru (väčšinou je nazvaný next).
requireAuthHandler()
- Handler na prihlásených užívateľov
Poďme si vytvoriť taký route handler, ktorý nepustí požiadavku ďalej v prípade, že používateľ nie je prihlásený. Nasledujúcu funkciu si pridajme k validačným funkciám:
const requireAuthHandler = (req, res, next) => { const user = req.session.user; if (!user) { res.status(401).send("Najprv sa prihláste"); return; } next(); }
Pokiaľ v danej session neexistuje objekt user, užívateľ nie
je prihlásený a API vráti odpoveď, že je nutné sa najskôr prihlásiť. V
opačnom prípade handler
...koniec náhľadu článku...
Pokračuj ďalej
Došiel si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiovej sekcie.
ročné PREDPLATNÉ
44 €
mesačne, platené ročne (528 €)14 000+ lekcií, cvičení a testov
6 000+ ti zostane navždy
Neobmedzený prístup ku všetkým aktuálnym
aj pripravovaným kurzom.
Kúpiť iba tento kurz
Získaj okamžitý prístup ku kurzu bez
časového obmedzenia.
19 €
Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel
Obsah článku spadá pod licenciu Premium II, kúpou článku súhlasíš s Prevádzkovými podmienkami.
- Prístup k jednotlivým lekciám podľa spôsobu obstarania.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V Node.js tutoriále naprogramujeme v JavaScripte zabezpečenia endpointov API na rolu administrátora pomocou route handler.