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

Open source

JWT for Laravel

Inštalácia
composer require roundly-consulting/jwt-for-laravel
Vyžaduje: PHP ^8.4 · Laravel ^12.0|^13.0

Prehľad

Natívne JSON Web Tokeny pre Laravel. Na prihlasovacej aplikácii vydávajte RS256 používateľské tokeny a v každej ďalšej službe ich overujte offline len s verejným kľúčom; na komunikáciu medzi službami podpisujte krátkodobé HS256 servisné tokeny. Guardy jwt a service-jwt, samočistiaci jti denylist a autorizácia z claimov sa zapájajú priamo do autentifikácie Laravelu. Licencia MIT a žiadna kryptografia tretích strán — JOSE jadro stojí na ext-openssl priamo v PHP cez náš auditovaný crypto-for-laravel.

Čo získate

RS256 používateľské tokeny

Vydávajte ich na aplikácii s privátnym kľúčom a overujte offline kdekoľvek, len s verejným PEM kľúčom.

HS256 servisné tokeny

Krátkodobé tokeny medzi službami so zdieľaným alebo samostatným tajomstvom pre každú službu, plus pomocník na odchádzajúce HTTP volania.

Hotové guardy

Drivery jwt a service-jwt pre config/auth.php — claims režim alebo Eloquent provider, viacero guardov oddelených cez audience.

Odhlásenie jedným volaním

jti denylist v cache, ktorý sa sám vyčistí po exp + leeway, plus verzie tokenov na odhlásenie zo všetkých zariadení.

Autorizácia z claimov

Oprávnenia uložené v tokene idú priamo do Gate v Laraveli — kontroly can() bez dotazu do databázy.

Bezpečné, bez kryptografie tretích strán

Pripnutý algoritmus, HMAC v konštantnom čase, kontrola veľkosti kľúčov a povinné iss/aud — na ext-openssl priamo v PHP cez náš crypto-for-laravel.

Fasáda, DI a zaznamenávajúci fake

Handly Jwt::guard() a Jwt::services(), vložiteľný JwtManager a Jwt::fake() s kľúčmi v pamäti a actingAs().

Dokumentácia

Inštalácia

Inštalácia cez Composer, publikovanie konfigurácie a pár RSA kľúčov na vydávajúcej aplikácii — overujúcim stačí verejný kľúč.

Konfigurácia

Každý kľúč config/jwt.php s env premennou a predvolenou hodnotou — kľúče, piny, platnosti, guardy, denylist a servisné tokeny.

Fasáda Jwt

Jeden vstupný bod na vydávanie, overovanie a odhlásenie, s handlami Jwt::guard() a Jwt::services(), zverejnením JWKS a fakom.

DI a akcie

Bez fasády: vložte si JwtManager a máte to isté API bez statických volaní, alebo použite kontrakty za ním — triedy akcií balík nemá.

Vydávanie používateľských tokenov

Vydávajte RS256 prístupové tokeny cez fluentný AccessTokenRequest, plus challenge, email-verify a tokeny s vlastným scope.

Overovanie tokenov

Overujte RS256 tokeny offline len s verejným kľúčom, čítajte claimy cez typované metódy a ošetrite zlyhania.

Guardy

Zapojte drivery jwt a service-jwt — claims režim alebo Eloquent provider, spracovanie requestu a kontrola verzie tokenu.

Viacero guardov

Viacero jwt guardov — používatelia, klienti — oddelených vlastným audience, s vlastným scope, identitou a denylistom.

Servisné tokeny

Krátkodobé HS256 tokeny medzi službami: vydanie, pripojenie k odchádzajúcim HTTP volaniam, režim tajomstva a overenie prichádzajúcich volaní.

Odhlásenie a denylist

Odhlasujte používateľov zaradením jti do denylistu — úložisko v cache, ktoré záznam zmaže, keď už token nemôže prejsť overením.

Autorizácia z claimov

Udeľujte oprávnenia priamo z claimu permissions cez Gate v Laraveli — kontroly can() bez dotazu do databázy.

Udalosti

Štyri udalosti životného cyklu — vydanie používateľského a servisného tokenu, zlyhané overenie, zakázanie — len s bezpečnými metadátami.

Artisan príkazy

Vygenerujte 2048-bitový pár RSA kľúčov cez jwt:generate-keys a skontrolujte nastavenie tokenov cez php artisan about.

Bezpečnostný model

Čo balík vynucuje za vás — pripnutý algoritmus, silu kľúčov a tajomstiev, povinné piny, limity veľkosti a fail-closed správanie.

Výnimky

Hierarchia JwtException pre zlyhania tokenov a výnimky chybnej konfigurácie, ktoré skončia ako 500 namiesto 401.

Rozšírenie

Nahraďte ktorýkoľvek kontrakt — vydavateľa, overovač, servisné tokeny, denylist — a zapojte vlastnú triedu identity.

Testovanie

Jwt::fake() zaznamená každé vydanie, servisný token aj zakázanie nad kľúčmi v pamäti, s actingAs() — alebo testujte so skutočnými kľúčmi.

Požiadavky

PHP 8.4+, Laravel 12 alebo 13 a rozšírenia ext-openssl a ext-json. Balíky crypto, enums a package toolkit Composer doinštaluje automaticky.

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.