Historial

Historial de versiones

Cada versión, con qué cambió y por qué. Kotauth sigue el versionado semántico.

AñadidoMejoradoCambiadoCorregidoSeguridad
v1.20.1
10 de julio de 2026
Versión actual
Cambiado

La cuadrícula de métodos de inicio de sesión reemplaza el panel de dos tarjetas en la página de política de seguridad: una fila por método (Contraseña, Passkey, Magic link, Email OTP, Google, GitHub)

Cambiado

password_login_disabled consolidado en security_config.passwordLoginEnabled (la migración V55 rellena automáticamente)

Cambiado

El rail de Seguridad del panel de administración se reestructuró: Política de seguridad, MFA, Passkeys, Sesiones. El portal gana un grupo padre de Seguridad

Corregido

La página de cambio de contraseña ahora activa correctamente el grupo de navegación de Seguridad

v1.20.0
9 de julio de 2026
Añadido

Passkeys / WebAuthn: inicio de sesión sin contraseña mediante biometría del dispositivo (Face ID, Windows Hello) o llaves de hardware (YubiKey). Se registran en el portal y se inicia sesión con un toque o autocompletado condicional

Añadido

Toggle de passkeys_enabled por tenant y modo solo-sin-contraseña (oculta el campo de contraseña, muestra solo passkey + magic link)

Añadido

Gestión de passkeys por usuario desde admin: listar credenciales con nombres de dispositivo (búsqueda AAGUID), revocar individualmente, restablecer todas. Nuevo comando CLI reset-admin-passkeys

Seguridad

Passkey con verificación de usuario satisface MFA: los usuarios omiten TOTP al iniciar sesión con una passkey

Seguridad

Defensa contra repetición por credencial mediante el contador de firma WebAuthn; los autenticadores clonados se revocan automáticamente con evento de auditoría PASSKEY_REPLAY_REJECTED

Seguridad

Puerta dura de SMTP impide habilitar el modo solo-sin-contraseña sin la entrega de email configurada

Seguridad

Rate limiting en el endpoint de autenticación por passkey: 10 intentos por 60s por IP, fail-closed en caída de Redis

v1.19.3
29 de junio de 2026
Añadido

Indicador de recurso RFC 8707 en el grant authorization_code: los parámetros de recurso se vinculan al código emitido y se propagan al claim aud del access token

Añadido

Estrechamiento de alcance RFC 9068: las solicitudes de token que apuntan a APIs se estrechan a la intersección de los scopes solicitados y los scopes declarados de las APIs

Añadido

Editor de scopes en el Admin UI: cada API en el registro del workspace puede declarar sus scopes aceptados, mostrados como badges en línea

Cambiado

La página de Brand Identity del admin se reestructuró en tarjeta de Brand Identity + tarjeta de Visual Theme

Cambiado

Dependencias actualizadas: JUnit 6.1.0, Exposed 1.3.0, imagen base JRE 25

v1.19.2
22 de junio de 2026
Cambiado

Dos archivos compose en la raíz (docker-compose.yml + docker-compose.prod.yml) reemplazan a los seis que vivían en docker/

Cambiado

El overlay de DB externa se reemplaza por DB_URL en .env; el overlay de demo se reemplaza por KAUTH_DEMO_MODE=true en .env

Mejorado

Toda la guía de despliegue se movió a la documentación; se eliminaron los comentarios del Dockerfile, el Caddyfile y los archivos compose

v1.19.1
22 de junio de 2026
Añadido

Inyección de secretos basada en archivos (convención *_FILE) para KAUTH_SECRET_KEY, DB_PASSWORD, KAUTH_REDIS_PASSWORD, KAUTH_BOOTSTRAP_ADMIN_PASSWORD y KAUTH_BOOTSTRAP_API_KEYS

Añadido

Bloqueo de dependencias de Gradle: gradle.lockfile fija el grafo de dependencias resuelto y CI lo verifica en cada PR

Añadido

Dependabot habilitado para alertas semanales sobre dependencias de Gradle, GitHub Actions e imágenes base de Docker

v1.19.0
19 de junio de 2026
Seguridad

Cadena HMAC sobre el registro de auditoría: cada fila lleva prev_hash y row_hash mediante HMAC-SHA256 con clave KAUTH_SECRET_KEY; cualquier manipulación o reordenamiento rompe la cadena

Añadido

El nuevo comando CLI verify-audit-chain detecta filas de auditoría manipuladas o reordenadas

Corregido

Los detalles del registro de auditoría ahora usan kotlinx.serialization, corrigiendo la corrupción silenciosa de JSON por cadenas concatenadas a mano

Corregido

Introspección de tokens multi-audiencia: AccessTokenClaims.aud se amplió para admitir el formato de array

v1.18.0
17 de junio de 2026
Añadido

Resource Indicators de RFC 8707 para el grant client_credentials: tokens M2M dirigidos por audiencia con aud vinculado al recurso solicitado

Añadido

Registro de APIs (admin: /settings/apis): CRUD con alcance de workspace para identificadores de audiencia

Añadido

Pantalla "Authorized APIs" por cliente con autorización mediante casillas y metadatos de Discovery que anuncian resource_indicators_supported: true

Seguridad

Los recursos desconocidos o no autorizados devuelven RFC 8707 invalid_target 400 en lugar de un token silenciosamente amplio

v1.17.0
17 de junio de 2026
Añadido

Los 8 tipos de email transaccional ahora están localizados: verificación, magic link, restablecimiento de contraseña, cuenta bloqueada, invitación, contraseña cambiada, prueba de SMTP y OTP

Añadido

Las plantillas de email se renderizan en el defaultLocale del workspace con fallback al inglés por clave

Seguridad

Proxy de confianza opcional (KAUTH_TRUSTED_PROXY): evita eludir el rate limiting mediante spoofing de cabeceras

Seguridad

Validación del issuer de JWT: los tokens emitidos por un tenant son rechazados por otro

Seguridad

Prevención de open redirect: el redirect_uri posterior al login se valida contra los valores registrados

Seguridad

La comparación del code verifier de PKCE S256 usa igualdad de tiempo constante

Seguridad

La cabecera Server se suprime de las respuestas HTTP

Seguridad

La normalización de errores de login con igualación de tiempos previene la enumeración de usuarios

v1.16.0
17 de junio de 2026
Seguridad

El contenedor se ejecuta como non-root (UID 10001) con no-new-privileges, cap_drop: ALL y sistema de archivos de solo lectura

Seguridad

Protección contra replay de TOTP: cada código es de un solo uso por enrolamiento; bloqueo tras un número configurable de intentos fallidos

Corregido

La validación de variables CSS del tema evita la inyección de valores arbitrarios a través de la configuración del workspace

Mejorado

Tiempos de error de login igualados en las rutas de verificación de contraseña y de TOTP

v1.15.0
15 de junio de 2026
Cambiado

AdminService se dividió en AuthManagementService, UserAdminService y WorkspaceAdminService

Cambiado

UserSelfServiceService se dividió en UserProfileService y UserSecurityService

Mejorado

Se endureció el ratchet de Detekt: reglas de complejidad y acoplamiento aplicadas en CI

v1.14.1
12 de junio de 2026
Seguridad

BREAKING: Se eliminó la credencial de admin por defecto. Se genera una contraseña aleatoria en el primer arranque y se registra una sola vez en stdout.

v1.14.0
11 de junio de 2026
Seguridad

BREAKING: El endpoint de refresh token ahora requiere autenticación de cliente (client_id + client_secret para clientes confidenciales)

Seguridad

BREAKING: Los endpoints de introspección y revocación requieren autenticación de cliente según RFC 7662 / RFC 7009

Añadido

Detección de replay de refresh token con revocación completa de la familia de sesiones al reutilizarse

Añadido

Bloqueo de cuenta con umbral configurable e interfaz de desbloqueo para administradores

v1.13.0
26 de mayo de 2026
Añadido

Login con Email OTP alojado: autenticación passwordless de dos pasos en el navegador (ingresa el email, recibe un código de 6 dígitos, inicia sesión)

Añadido

Conmutador por tenant para Email OTP desde la configuración del workspace

Añadido

Primitivas de API de administración send-otp / verify-otp para onboarding passwordless programático

Seguridad

Defensa de bloqueo entre desafíos: umbral de intentos de OTP por tenant con respuesta de tiempo constante

v1.12.1
26 de mayo de 2026
Corregido

Desajuste del prefijo de las API keys bootstrap: kauth_{slug}_ ahora se aplica de forma consistente en la generación y la validación

Corregido

Validación de redirect URI más estricta: se requiere coincidencia exacta y se rechazan las variantes con barra final

Mejorado

Especificación OpenAPI actualizada con los endpoints de envío/verificación de OTP y la documentación de filtros del registro de auditoría

Mejorado

Los grupos de filtros del registro de auditoría se muestran en la interfaz de administración para una navegación más clara por categoría de evento

v1.12.0
25 de mayo de 2026
Añadido

Roles por defecto del cliente: roles por aplicación asignados automáticamente a los usuarios que se autorregistran a través de una aplicación OAuth

Añadido

Tarjeta de "Registration Defaults" en la consola de administración con menú desplegable y tabla de gestión de roles

Añadido

Protección contra escalada de privilegios entre clientes: los roles de otras aplicaciones no pueden asignarse como predeterminados

v1.11.0
23 de mayo de 2026
Añadido

Branding de emails transaccionales: nombre de marca, color, URL del logo, email de soporte y nombre de remitente por tenant

Añadido

Las 8 plantillas de email transaccional heredan automáticamente el branding del workspace

Añadido

Tarjeta de editor de branding en la configuración del workspace con vista previa en vivo

v1.10.0
12 de mayo de 2026
Añadido

Impersonación de admin: actúa como cualquier usuario sin conocer su contraseña, con el claim act de RFC 8693 en el token de sesión

Añadido

Modelo de doble sesión: la sesión del admin permanece activa por debajo de la sesión impersonada

Seguridad

Revocación en cascada: revocar la sesión del admin también termina la sesión impersonada

v1.9.0
8 de mayo de 2026
Añadido

Servidor MCP nativo de IA (@kotauth/mcp): 33 herramientas en 8 dominios expuestas vía Model Context Protocol

Añadido

Control de acceso basado en alcances en cada herramienta MCP: la API key otorga solo los permisos que elijas

Añadido

Conexión con un comando: npx @kotauth/mcp