Download the PHP package k3progetti/jwt-bundle without Composer
On this page you can find all versions of the php package k3progetti/jwt-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package jwt-bundle
JwtBundle
Bundle Symfony per la gestione avanzata dei token JWT, con supporto a:
- Login e generazione token JWT
- Autenticazione a due fattori (2FA)
- Refresh token
- Logout e invalidazione dei token
- Payload JWT personalizzabile tramite interfaccia
- Comandi da terminale per la pulizia dei token scaduti
Requisiti
- PHP >= 8.2
- Symfony ~8.0
Installazione
Configurazione
Registrazione del bundle
Aggiungi il bundle al tuo config/bundles.php se non viene registrato automaticamente:
Configurazione JWT (config/packages/jwt.yaml)
Copia il file di esempio resources/config/packages/jwt.yaml.dist e adattalo:
Aggiungi nel tuo .env:
Configurazione del firewall (config/packages/security.yaml)
Implementazione delle interfacce
Entità utente — JwtUserInterface
La tua entità User deve implementare K3Progetti\JwtBundle\Security\JwtUserInterface:
Repository utente — JwtUserRepositoryInterface
Il tuo UserRepository deve implementare K3Progetti\JwtBundle\Repository\JwtUserRepositoryInterface:
Mailer 2FA — TwoFactorMailerInterface (opzionale)
Se vuoi abilitare il 2FA, implementa K3Progetti\JwtBundle\Mailer\TwoFactorMailerInterface e registra la classe in mailer_class:
Payload personalizzato — JwtPayloadInterface (opzionale)
Per aggiungere dati custom al token JWT, implementa K3Progetti\JwtBundle\Service\JwtPayloadInterface e taggala come servizio:
Migrazioni
Il bundle include due entità: JwtToken e JwtRefreshToken.
Dopo aver installato il bundle, genera e applica le migrazioni:
Endpoint disponibili
| Metodo | URL | Descrizione |
|---|---|---|
POST |
/login_check |
Login standard |
POST |
/login_check_2fa |
Login con codice 2FA |
POST |
/token/refresh |
Rinnovo del token tramite refresh token |
GET |
/api/logout |
Logout e invalidazione del token |
Esempio login
Risposta:
Esempio 2FA
Se l'utente ha il 2FA abilitato, il primo /login_check invia il codice via email. Il client deve poi completare il login su /login_check_2fa:
Comandi Console
Struttura del Progetto
Contributi
Sono aperto a qualsiasi confronto.
All versions of jwt-bundle with dependencies
firebase/php-jwt Version ^7.0.5
nesbot/carbon Version ~3.0
doctrine/orm Version ^2.15
doctrine/doctrine-bundle Version ^2.10
symfony/framework-bundle Version ^7.0
symfony/http-client Version ~7.0
symfony/messenger Version ~7.0
symfony/redis-messenger Version ~7.0
symfony/validator Version ~7.0
symfony/security-bundle Version *
symfony/serializer Version *
k3progetti/mercure-bridge-bundle Version *