Class JwtTokenProvider
java.lang.Object
com.mapmyjourney.backend.security.JwtTokenProvider
Proveedor de tokens JWT.
Maneja la generación, validación y extracción de información de tokens JWT.
Usa JJWT (Java JWT) para crear tokens seguros con firma HMAC SHA-512.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionextractEmail(String token) Extrae el email (subject) de un token JWT válido.generateToken(String email) Genera un token JWT para un email específico.generateToken(org.springframework.security.core.Authentication authentication) Genera un token JWT a partir de una Authentication de Spring.longRetorna el tiempo de expiración del token en milisegundos.booleanvalidateToken(String token) Valida que el token JWT sea válido.
-
Constructor Details
-
JwtTokenProvider
public JwtTokenProvider()
-
-
Method Details
-
generateToken
Genera un token JWT a partir de una Authentication de Spring. Extrae el email del usuario autenticado como "subject" del token.- Parameters:
authentication- Objeto Authentication de Spring con el usuario logueado- Returns:
- Token JWT codificado en Base64
-
generateToken
Genera un token JWT para un email específico. El token contiene: - subject: Email del usuario - issuedAt: Fecha/hora de creación - expiration: Fecha/hora de expiración - firma: HMAC SHA-512- Parameters:
email- Email del usuario- Returns:
- Token JWT codificado
-
extractEmail
Extrae el email (subject) de un token JWT válido.- Parameters:
token- Token JWT a parsear- Returns:
- Email del usuario contenido en el token
-
validateToken
Valida que el token JWT sea válido. -
getExpirationTime
public long getExpirationTime()Retorna el tiempo de expiración del token en milisegundos.
-