JWT e sicurezza stateless
Sicurezza stateless con JWT, generazione e validazione di token, filtri di sicurezza, refresh token
1Qual è la struttura di un JWT (JSON Web Token)?
Qual è la struttura di un JWT (JSON Web Token)?
Risposta
Un JWT è composto da tre parti separate da punti: Header (algoritmo e tipo), Payload (claims/dati) e Signature (verifica dell'integrità). Ogni parte è codificata in Base64URL. Questa struttura consente di trasmettere informazioni in modo sicuro e verificabile tra due parti.
2Quale claim JWT rappresenta il soggetto (utente) del token?
Quale claim JWT rappresenta il soggetto (utente) del token?
Risposta
Il claim 'sub' (subject) identifica il soggetto del JWT, in genere l'utente autenticato (es. user ID o username). È un claim standard definito nella RFC 7519. Altri claim standard includono 'iss' (issuer), 'exp' (expiration), 'iat' (issued at), 'aud' (audience) e 'jti' (JWT ID).
3Qual è la differenza principale tra gli algoritmi di firma HMAC e RSA per i JWT?
Qual è la differenza principale tra gli algoritmi di firma HMAC e RSA per i JWT?
Risposta
HMAC (es. HS256) usa una chiave segreta simmetrica condivisa per firmare e verificare, mentre RSA (es. RS256) usa una coppia di chiavi asimmetriche (privata per firmare, pubblica per verificare). RSA è preferibile quando più servizi devono verificare i token senza accedere alla chiave di firma, come nelle architetture microservices.
Quale claim JWT definisce la data di scadenza del token?
Come dovrebbe un client inviare un JWT in una richiesta HTTP REST?
+17 domande da colloquio
Altri argomenti di colloquio Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging con SLF4J e Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Gestione delle eccezioni
Bean Validation
Fondamenti di Spring Data JPA
Entità JPA e relazioni
Query JPA
Spring Data Repositories
Fondamenti di Spring Security
Spring Boot Actuator
Test unitari con JUnit e Mockito
Testing in Spring Boot
Profiles e Environment
RestTemplate e WebClient
Async e Scheduling
Caching con Spring
Spring WebFlux (Reactive)
Transazioni Spring
Autenticazione e autorizzazione avanzate
OAuth2 e Authorization Server
Spring Boot e Docker
Microservices con Spring
Spring Cloud Config
Ottimizzazione delle prestazioni
GraalVM Native Images
Padroneggia Spring Boot per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis