@hemia/jwt-manager
v0.0.1
Published
Gestor de JWT seguro y extensible para aplicaciones Node.js
Readme
@hemia/jwt-manager
Una clase sencilla y reutilizable para la generación, validación y decodificación de tokens JWT. Ideal para gestionar autenticación basada en tokens dentro de aplicaciones Node.js.
Características principales
- Firma y verificación de tokens JWT
- Soporte para claves secretas personalizadas o por entorno
- Control del tiempo de expiración
- Soporte para distintos tipos de token (como "clean credentials")
- Decodificación sin validación
Instalación
npm install @hemia/jwt-managerUso básico
import { JwtManager } from '@hemia/jwt-manager';
const jwt = new JwtManager();
const token = jwt.getTokenWithoutKey({ userId: 'abc123' });
const decoded = jwt.validateToken(token);API
getTokenWithoutKey(payload, expiresIn?, options?)
Genera un token firmado con la clave definida por entorno (JWT_SECRET).
getTokenWithKey(payload, secretKey, expiresIn?, options?)
Genera un token firmado con una clave personalizada.
getTokenCleanCredentials(operative, expiresIn?)
Genera un token especial con un accessType para operaciones específicas (como catalog).
validateToken(token, secretKey?)
Valida un token JWT. Si no se pasa secretKey, usa la interna.
decode(token)
Decodifica un token sin verificar su firma. Útil para leer datos sin validar.
getJwtKey()
Devuelve la clave interna usada para firmar los tokens.
Variables de entorno
JWT_SECRET=mi_clave_super_secreta⚠️ Importante: No uses una clave por defecto en producción. Define
JWT_SECRETsiempre en tus entornos seguros.
Ejemplo con expiración y opciones
const token = jwt.getTokenWithoutKey(
{ userId: 'abc123' },
'1h', // expira en 1 hora
{ issuer: 'hemia' }
);Licencia
MIT — Desarrollado por Hemia Technologies
