NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky
JWT for Laravel

Bezpečnostný model

Dve rodiny tokenov, prísne oddelené algoritmom aj účelom: RS256 používateľské tokeny vydávané vydávajúcimi aplikáciami a overované všade verejným PEM kľúčom, a HS256 servisné tokeny výhradne na komunikáciu medzi službami. Navyše:

  • Pripnutie jediného algoritmu — alg:none ani zámena RS256↔HS256 nie sú štrukturálne možné.
  • Porovnanie HMAC v konštantnom čase.
  • Odmietnutie PEM ako HMAC tajomstva — verejný kľúč sa nikdy nedá podstrčiť ako HMAC tajomstvo.
  • HMAC tajomstvo musí mať aspoň 32 náhodných bajtov (256 bitov); jeden opakovaný bajt sa odmietne.
  • RSA kľúče sa kontrolujú na typ a veľkosť — aspoň 2048 bitov.
  • Povinné pripnutie iss/aud — prázdny pin je tvrdá chyba konfigurácie, nikdy prázdna zhoda.
  • Leeway pre posun hodín pri každom volaní, bez globálneho stavu.
  • Hlavička crit sa odmietne; prítomný typ musí byť JWT (explicitné typovanie podľa RFC 8725).
  • Každý token nad 8 KB sa odmietne ešte pred dekódovaním.
  • Fail-closed denylist — token bez jti sa pri zapnutom denyliste nikdy neprihlási.
  • Registrované claimy majú vždy prednosť pred doplnkovými — pri používateľských tokenoch ich prepíšu, pri servisných sa doplnkové odmietnu — takže nepodvrhnú identitu.
  • Chyba konfigurácie vždy skončí ako 500 — chýbajúci kľúč či tajomstvo sa nikdy nevydáva za tiché 401.

Žiadna kryptografia tretích strán

JOSE jadro — podpisovanie a overovanie kompaktného JWS, base64url, práca s RSA a HMAC kľúčmi — pochádza z nášho vlastného crypto-for-laravel, postaveného na ext-openssl a hash_hmac priamo v PHP. Tento balík zodpovedá za JWT politiku: claimy, guardy, denylist a väzbu vydavateľa servisných tokenov. Chyby kryptografie sa prekladajú na hranici balíka, takže zachytávate len jeho vlastné výnimky.

Kompatibilita so štandardom

Kompatibilitu overovania so štandardnými JWS/JWT tokenmi dokazujú uložené statické fixtures a príkladové vektory z RFC 7515, bez jedinej JWT či kryptografickej knižnice tretej strany v composer.json. Architektonické testy strážia, aby src/ nezávisel od externých JWT knižníc a aby balík neimplementoval vlastné kryptografické primitívy.

Mimo rozsahu

Balík zámerne neimplementuje rotáciu refresh tokenov, generovanie 2FA kódov, passkeys, získavanie vzdialených kľúčov, výber z viacerých kľúčov podľa kid, ES256/EdDSA, šifrovanie JWE ani introspekciu tokenov. Tokeny vydáva a overuje — a vlastný kľúč zverejní cez Jwt::jwks() na route, ktorú si definujete.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.