@nebulae/tpiv2-interop-auth
v0.0.1
Published
Módulo de autenticación OIDC/OAuth2 con renovación automática de tokens JWT
Readme
@nebulae/tpiv2-interop-auth
Módulo de autenticación OIDC/OAuth2 con renovación automática de tokens JWT.
Instalación
npm install @nebulae/tpiv2-interop-authUso
Configuración Básica
import { AuthClient } from '@nebulae/tpiv2-interop-auth';
const authClient = new AuthClient({
issuerUrl: 'https://auth.example.com',
clientId: 'mi-cliente',
clientSecret: 'mi-secreto',
grantType: 'client_credentials',
scopes: ['api.read', 'api.write'],
});
const token = await authClient.getAccessToken();Renovación Automática
const authClient = new AuthClient({
issuerUrl: 'https://auth.example.com',
clientId: 'mi-cliente',
clientSecret: 'mi-secreto',
autoRenew: true,
renewalMargin: 300, // Renovar 5 minutos antes de expirar
});
// El token se renueva automáticamente cuando está cerca de expirar
const token = await authClient.getAccessToken();Validación de JWT
import { JwtValidator } from '@nebulae/tpiv2-interop-auth';
const validator = new JwtValidator('https://auth.example.com/.well-known/jwks.json');
const payload = await validator.validate(token, {
verifySignature: true,
verifyExpiration: true,
expectedIssuer: 'https://auth.example.com',
expectedAudience: 'mi-api',
});
console.log('Token válido:', payload);