Udalosti
Balík spúšťa udalosti cez dispatcher v kontajneri (ak žiadny nie je, nerobí nič), takže môžete auditovať, merať či upozorňovať bez zásahu do balíka. Obsah je minimálny a nikdy nenesie tokeny, tajomstvá ani kľúče:
| Udalosť | Kedy | Obsah |
|---|---|---|
UserTokenIssued | Vydá sa používateľský token (prístupový, challenge, verify alebo vlastný). | subject, scope, jti, expiresAt |
ServiceTokenIssued | Vydá sa servisný token. | issuer, audience, jti, expiresAt |
TokenVerificationFailed | Zlyhá explicitné volanie Jwt::verify(). | reason, exceptionClass |
TokenDenied | jti sa pridá do denylistu. | jti, until |
Všetky štyri sú final readonly triedy v RoundlyConsulting\Jwt\Events:
use Illuminate\Support\Facades\Event;
use RoundlyConsulting\Jwt\Events\TokenVerificationFailed;
use RoundlyConsulting\Jwt\Events\UserTokenIssued;
Event::listen(function (UserTokenIssued $event): void {
logger()->info('token issued', [
'sub' => $event->subject,
'scope' => $event->scope,
'jti' => $event->jti,
'exp' => $event->expiresAt->toIso8601String(),
]);
});
Event::listen(function (TokenVerificationFailed $event): void {
logger()->warning('token verify failed', [
'reason' => $event->reason,
'type' => $event->exceptionClass,
]);
});TokenVerificationFailed sa spúšťa len z explicitného Jwt::verify() — nikdy z tichého overovania v guardoch, takže anonymné pokusy ním nezahltia logy.
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 kryptomienOdoslaní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.