logo

Dodatni tipovi blokova (EBT) - Novo iskustvo rada sa Layout Builder-om❗

Dodatni tipovi blokova (EBT) – stilizovani, prilagodljivi tipovi blokova: slajdšouvi, kartice sa tabovima, kartice, akordeoni i mnogi drugi. Ugrađena podešavanja za pozadinu, DOM Box, javascript dodatke. Iskusite budućnost kreiranja rasporeda već danas.

Demo EBT moduli Preuzmite EBT module

❗Dodatni tipovi pasusa (EPT) – Novo iskustvo rada sa pasusima

Dodatni tipovi pasusa (EPT) – analogni skup modula zasnovan na pasusima.

Demo EPT moduli Preuzmite EPT module

Scroll

Autentifikacija, bezbednost i performanse

22/05/2025, by Ivan

Drupal JSON:API modul omogućava moćan način za izlaganje vašeg sadržaja kao API-ja, ali izbor odgovarajuće metode autentifikacije je ključan za bezbednost i upotrebljivost. Ovaj pregled pokriva različite opcije autentifikacije koje su dostupne prilikom rada sa Drupal JSON modula.

Osnovne metode autentifikacije

Drupal REST & JSON API Authentication modul ograničava i štiti neovlašćen pristup vašim Drupal API-jevima koristeći različite metode autentifikacije, uključujući:

Ovaj modul takođe omogućava autentifikaciju API poziva u Headless/Decoupled Drupal okruženju.

  1. Osnovna autentifikacija (Basic Authentication)
  2. Autentifikacija bazirana na API ključu
  3. Autentifikacija na osnovu Access Token/OAuth
  4. JWT autentifikacija (JSON Web Token)
  5. Autentifikacija putem tokena trećih strana (3rd Party Provider)

Autentifikacija putem kolačića (Cookie-Based Authentication)

Podrazumevana metoda autentifikacije u Drupalu koristi sesijske kolačiće. Kada se korisnik prijavi putem Drupal forme za prijavu, kreira se sesijski kolačić koji može biti iskorišćen za autentifikaciju JSON zahteva.

Prednosti:

  • Jednostavna implementacija za aplikacije koje rade u brauzeru
  • Koristi postojeći Drupal sistem autentifikacije
  • Radi dobro za JavaScript aplikacije hostovane na istom domenu

Ograničenja:

  • Nije pogodno za cross-domain zahteve bez dodatne konfiguracije
  • Manje pogodno za mobilne aplikacije ili integracije trećih strana
  • Overhead oko upravljanja sesijom

Osnovna autentifikacija (Basic Authentication)

Basic Authentication podrazumeva slanje kredencijala (korisničko ime i lozinka) u Authorization zaglavlju pri svakom zahtevu.

Prednosti:

  • Jednostavna za implementaciju
  • Široko podržana u HTTP klijentima

Ograničenja:

  • Kredencijali se šalju u svakom zahtevu
  • Bezbedno samo preko HTTPS-a
  • Nema ugrađeno istecanje tokena

Kontribuisani moduli za autentifikaciju

Simple OAuth (OAuth 2.0)

Simple OAuth implementira OAuth 2.0 protokol za autentifikaciju preko Drupal API-ja.

Prednosti:

  • Bezbedna autentifikacija zasnovana na tokenima
  • Podrška za refresh tokene
  • Fino podešene dozvole (scopes)
  • Idealan za integracije trećih strana
  • Široko prihvaćen standard

Ograničenja:

  • Kompleksnija konfiguracija u odnosu na basic auth
  • Potreban dobar uvid u OAuth 2.0 tokove

JWT (JSON Web Token)

JWT modul omogućava autentifikaciju korišćenjem JSON Web Tokena.

Prednosti:

  • Bezustanje autentifikacije (stateless)
  • Smanjuje broj upita ka bazi za verifikaciju
  • Mogućnost dodavanja podataka (claims/metadata) u token
  • Dobro radi za skaliranje i velike performanse

Ograničenja:

  • Potreban ispravan menadžment ključeva
  • Bezbednosni rizici ako se implementira pogrešno
  • Nema ugrađeno opozivanje tokena bez dodatnih mera

Key Auth

Key Auth omogućava autentifikaciju putem API ključa za Drupal.

Prednosti:

  • Jednostavan API key pristup
  • Idealan za komunikaciju mašina-sa-mašinom
  • Minimalna konfiguracija

Ograničenja:

  • Manje bezbedno za korisnički orijentisane aplikacije nego OAuth
  • Ograničene opcije za opozivanje ključeva
  • Nema mehanizma za refresh token

Consumer Auth

Consumer Auth proširuje mogućnosti Consumer entiteta u Drupal API sistemu.

Prednosti:

  • Povezano sa Drupal consumer sistemom
  • Fleksibilne dozvole bazirane na potrošaču (consumer)
  • Može se koristiti u kombinaciji sa drugim metodama autentifikacije

Ograničenja:

  • Namenjeno za korišćenje uz druge metode, nije samostalno rešenje

Šta uzeti u obzir pri izboru metode autentifikacije

Kada birate metodu autentifikacije za vaš JSON API, razmotrite:

  1. Bezbednosne zahteve: Koliko su vaši podaci osetljivi?
  2. Tip klijenta: Da li je u pitanju brauzer, mobilna aplikacija ili server-server komunikacija?
  3. Korisničko iskustvo: Da li će se od korisnika često tražiti prijava?
  4. Potrebe za performansama: Koliko je brzina autentifikacije važna?
  5. Integracije: Da li će treće strane pristupati vašem API-ju?

Najbolje prakse

  • Uvek koristite HTTPS za bilo koji metod autentifikacije
  • Implementirajte ispravne CORS zaglavlja za aplikacije bazirane na brauzeru
  • Pažljivo definišite politike isteka tokena
  • Koristite refresh tokene gde je to prikladno
  • Primijenite rate limiting radi zaštite od brute force napada
  • Beleži sve pokušaje autentifikacije radi bezbednosnog praćenja